已关闭
Add Web UI maintenance and repository binding plan/apply controls #96
urandon创建于 8月25日关闭于 8月25日
8月25日 添加了label:enhancement
urandon
8月25日 评论:
8月25日 评论:
Implementation plan for the next admin slice:
- Add CSRF-bound versioned plan/apply endpoints; browser requests identify a cache only by cache_ref and the daemon resolves the already managed private path in-process. Arbitrary paths are never accepted.
- Reuse MaintenanceSetup plan semantics for cache identity, binding/config/provider/model/policy hashes, but enforce browser policy: no service install/start, provider start, model download, migration, reset, or direct SQLite edits. Unsafe prerequisites return exact CLI handoffs.
- Re-plan on every apply and reject changed plan ids as stale_plan. Apply enrollment/reconcile through MaintenanceManager with idempotency and preserve coalesced initial jobs. Add explicit disable and reconcile controls with target/state validation and receipts.
- Add a binding plan/apply capability with GitCode API URL defaulted to https://api.gitcode.com/api/v5, owner/name derivation from repo id, strict aliases/scopes, cache identity/version checks, stale plan rejection, and durable idempotency. Existing bindings may be updated atomically; unbind/removal remains unavailable.
- Extend Maintenance UI with selected cache/repository editor, effect ledger (network, cache, provider/data boundary, blockers, confirmations), review modal, apply receipts, CLI handoffs, and capability-derived disabled states.
- Cover missing/ambiguous binding, default URL, scope changes, stale plans, partial recovery, coalesced jobs, reload/error states, and responsive Light/Dark/System browser QA.
This remains one epic slice: no tag, release, or go install.


8月25日 关联了pull request:Add admin maintenance and binding controls
urandon
8月25日 评论:
8月25日 评论:
Implemented and merged in !100: https://gitcode.com/urandon/gitcode-mcp/merge_requests/100
Delivered:
- capability-gated maintenance policy plan/apply plus disable/reconcile controls;
- deterministic effect ledgers, stale-plan rejection, exact confirmation, durable bounded idempotency receipts, and replay/conflict semantics;
- atomic repository binding add/update/no-op with opaque cache refs, default/preserved GitCode API routing, normalized scopes, and alias conflict checks;
- explicit CLI handoffs for service install/start, model download, and cache migration; browser authority does not include those operations;
- responsive Svelte workbenches with System default and explicit Light/Dark/System theme selection.
Verification:
- go test ./...
- go vet ./...
- go test -race ./internal/adminhttp ./internal/servicectl ./internal/cache
- npm run check
- npm test
- npm run test:e2e -- --reporter=line: 8 passed, 1 live-environment test skipped
- ./scripts/check-admin-ui-assets.sh
- git diff --check
No release/tag or go install was performed; this is one slice of the UI epic.


8月25日 关闭了 issue
8月25日 关联了里程碑:Admin Web UI
8月25日 添加了label:admin-ui
8月25日 添加了label:service
8月25日 添加了label:admin-uicacheenhancement;删除了label:admin-uienhancement
Parent: #52
Depends on: admin observation API; read-only operator views; job supervision
Design: https://gitcode.com/urandon/gitcode-mcp/wiki/Admin-Web-UI-Design-2026-08-25.md
Goal
Add explicit plan/apply controls for repository bindings and daemon maintenance policy.
Scope
Acceptance criteria
go test ./..., frontend checks, andgit diff --checkpass.Non-goals