32 lines
2.1 KiB
Markdown
32 lines
2.1 KiB
Markdown
## 1. Server Card Interaction Fix
|
|
|
|
- [x] 1.1 Replace the `<details>` runtime action stack with a compact overlay that is anchored to the trigger and does not reflow the card.
|
|
- [x] 1.2 Close the overlay on outside click, Escape, and action selection.
|
|
- [x] 1.3 Keep runtime action dispatch semantics unchanged.
|
|
- [x] 1.4 Show a runtime task progress dialog after action selection with staged progress, logs, and terminal success/failure state.
|
|
- [x] 1.5 Reuse the same progress dialog from server detail runtime distribution actions.
|
|
|
|
## 2. Server Card Readability Fix
|
|
|
|
- [x] 2.1 Strengthen `.server-card-stat` label/value contrast for 玩家, TPS, 延迟, 任务, and placeholder values.
|
|
- [x] 2.2 Preserve the shared black-mecha / magical-girl console visual system and uploaded-background readability.
|
|
- [x] 2.3 Remove misleading whole-card click affordance while keeping explicit detail/menu controls.
|
|
|
|
## 3. Verification
|
|
|
|
- [x] 3.1 Run focused frontend tests and typecheck.
|
|
- [x] 3.2 Run `scripts/check-structure.sh`.
|
|
- [x] 3.3 Run `openspec validate fix-server-card-action-menu --strict`.
|
|
- [ ] 3.4 Browser-walkthrough 服务器管理 and verify the menu is compact, card stats are readable, action selection opens the progress dialog, and no metrics/progress/status are covered.
|
|
|
|
## Evidence
|
|
|
|
- `npm run typecheck` passed.
|
|
- `npm test -- ConsolePages.test.tsx ServerDetailPage.test.tsx base-css.test.js` passed with 22 tests.
|
|
- `npm test` passed with 68 tests.
|
|
- `npm run build` passed.
|
|
- `go test ./api ./service -run 'Test.*(Run|Distribution|Artifact|ClientManager|Runtime)' -count=1` passed from `platform/`, proving backend run distribution, artifact download, update, and client-manager paths are implemented.
|
|
- `scripts/check-structure.sh` passed with `structure check passed`.
|
|
- `openspec validate fix-server-card-action-menu --strict` passed. OpenSpec telemetry flush failed with `ENOTFOUND edge.openspec.dev`, which did not affect validation.
|
|
- Browser walkthrough is still pending because the Browser plugin reported no available browser backends (`agent.browsers.list()` returned `[]`).
|