Fix v0.3.7: tag dashboard + editor as dormant, generalize requires check

Functional audit found dashboard and editor render blank — they depend
on the removed sw.* imperative SDK (sw.tabs, sw.chat, sw.layout, etc).
Tagged with requires: ["legacy-sdk"] so the installer auto-sets dormant.

Generalized the dormant requires check: any unmet requirement now
triggers dormant status, not just "chat".

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-28 20:34:35 +00:00
parent 60176f2d8b
commit 9360f32b66
4 changed files with 15 additions and 11 deletions

View File

@@ -202,14 +202,14 @@ See `docs/DEMO-WORKFLOWS.md` for full stage definitions and Starlark code.
### v0.3.7 — Package Audit (complete)
Verified all 16 packages install correctly. Chat-dependent packages auto-set to dormant.
Verified all 16 packages install correctly. Packages with unmet `requires` auto-set to dormant.
| Step | Status | Description |
|------|--------|-------------|
| Manifest fixes | ✅ | Fixed 6 chat-extension manifests (`"name"``"title"`, was blocking install). Added explicit `"type": "surface"` to hello-dashboard, icd-test-runner, sdk-test-runner. |
| Dormant status | ✅ | Added `dormant` to `packages.status` CHECK constraint (both dialects). Installer auto-detects `requires: ["chat"]` and sets `status=dormant, enabled=false`. Enable endpoint returns 409 for dormant packages. |
| Browser package audit | ✅ | All 10 standalone packages install and activate: hello-dashboard, dashboard, editor, schedules, tasks, team-activity-log, gitea-client, git-board, icd-test-runner, sdk-test-runner. |
| Chat-dependency tagging | ✅ | 6 chat-dependent extensions (csv-table, diff-viewer, js-sandbox, katex-renderer, mermaid-renderer, regex-tester) install as dormant. Excluded from nav, shown with badge in admin. git-board and gitea-client are standalone (not chat-dependent). |
| Dormant status | ✅ | Added `dormant` to `packages.status` CHECK constraint (both dialects). Installer auto-detects unmet `requires` and sets `status=dormant, enabled=false`. Enable endpoint returns 409 for dormant packages. |
| Functional audit | ✅ | Navigated to every surface in browser. 7 working: schedules, tasks, team-activity-log, git-board, hello-dashboard, icd-test-runner, sdk-test-runner. 2 broken: dashboard + editor (depend on removed `sw.*` imperative SDK) — tagged `requires: ["legacy-sdk"]` → dormant. |
| Chat-dependency tagging | ✅ | 6 chat-dependent extensions (csv-table, diff-viewer, js-sandbox, katex-renderer, mermaid-renderer, regex-tester) install as dormant. git-board and gitea-client are standalone. |
| Dependency check fix | ✅ | Relaxed library dependency validation to allow `pending_review` libraries (gitea-client declares permissions). Only `suspended`/`dormant` libraries blocked. |
| Admin UI | ✅ | Dormant badge, disabled Enable button with tooltip, Dormant stat card in admin packages view. |
| Tests | ✅ | 4 handler tests (SetStatus dormant, enable blocked, surfaces exclude dormant, admin list includes dormant). All existing tests pass. |