|
| 1 | +# PR_26177_CHARLIE_017-sprites-toolbox-entry-active |
| 2 | + |
| 3 | +## Summary |
| 4 | + |
| 5 | +Team Charlie activated the Sprites entry on the Toolbox landing page. |
| 6 | + |
| 7 | +This PR keeps the change scoped to Toolbox entry state and targeted coverage: |
| 8 | + |
| 9 | +- Sprites now publishes the source-controlled Toolbox release channel as `wireframe`. |
| 10 | +- The Local API Toolbox metadata sync now treats Sprites as source-controlled so the API-backed landing page receives the active state. |
| 11 | +- Toolbox landing coverage verifies Sprites is visible, not planned, and links to `/toolbox/sprites/index.html`. |
| 12 | +- Toolbox route coverage verifies the Sprites card opens the Sprites route. |
| 13 | +- No Sprites API, database, CRUD, import, preview, palette, tags, or reference behavior changed. |
| 14 | + |
| 15 | +## Changed Files |
| 16 | + |
| 17 | +- `src/dev-runtime/server/local-api-router.mjs` |
| 18 | +- `src/shared/toolbox/tool-metadata-inventory.js` |
| 19 | +- `tests/playwright/tools/ToolNavigationPrevNext.spec.mjs` |
| 20 | +- `tests/playwright/tools/ToolboxRoutePages.spec.mjs` |
| 21 | +- `docs_build/dev/reports/coverage_changed_js_guardrail.txt` |
| 22 | +- `docs_build/dev/reports/playwright_v8_coverage_report.txt` |
| 23 | +- `docs_build/dev/reports/PR_26177_CHARLIE_017-sprites-toolbox-entry-active.md` |
| 24 | +- `docs_build/dev/reports/PR_26177_CHARLIE_017-sprites-toolbox-entry-active_branch-validation.md` |
| 25 | +- `docs_build/dev/reports/PR_26177_CHARLIE_017-sprites-toolbox-entry-active_manual-validation-notes.md` |
| 26 | +- `docs_build/dev/reports/PR_26177_CHARLIE_017-sprites-toolbox-entry-active_requirements-checklist.md` |
| 27 | +- `docs_build/dev/reports/PR_26177_CHARLIE_017-sprites-toolbox-entry-active_validation-lane.md` |
| 28 | +- `docs_build/dev/reports/codex_changed_files.txt` |
| 29 | +- `docs_build/dev/reports/codex_review.diff` |
| 30 | + |
| 31 | +## Implementation Notes |
| 32 | + |
| 33 | +- `/toolbox/index.html` required no direct markup edit because the landing page renders cards from the API-backed Toolbox registry contract. |
| 34 | +- Added `releaseChannel: "wireframe"` to the Sprites registry entry so it is active/clickable while still labeled as a wireframe. |
| 35 | +- Added Sprites to the Local API source-controlled Toolbox metadata set so stale persisted metadata rows cannot keep the card in the planned bucket. |
| 36 | +- Preserved existing Toolbox card order, routes, Theme V2 rendering, and Sprites route behavior. |
| 37 | + |
| 38 | +## Validation |
| 39 | + |
| 40 | +- PASS: `node --check src/dev-runtime/server/local-api-router.mjs` |
| 41 | +- PASS: `node --check src/shared/toolbox/tool-metadata-inventory.js` |
| 42 | +- PASS: `node --check tests/playwright/tools/ToolNavigationPrevNext.spec.mjs` |
| 43 | +- PASS: `node --check tests/playwright/tools/ToolboxRoutePages.spec.mjs` |
| 44 | +- PASS: `npx playwright test tests/playwright/tools/ToolNavigationPrevNext.spec.mjs -g "Toolbox card names link" --workers=1 --reporter=list` |
| 45 | +- PASS: `npx playwright test tests/playwright/tools/ToolboxRoutePages.spec.mjs -g "toolbox index|toolbox status kickers|Build Path status" --workers=1 --reporter=list` |
| 46 | +- PASS: direct Local API `/api/toolbox/registry/snapshot` probe confirmed Sprites route `toolbox/sprites/index.html` and release channel `wireframe`. |
| 47 | +- PASS: `git diff --check` |
| 48 | +- PASS: no `start_of_day` files changed. |
| 49 | + |
| 50 | +## Validation Note |
| 51 | + |
| 52 | +- BLOCKED unrelated adjacent check: `npx playwright test tests/playwright/tools/ToolboxAdminMetadataSsot.spec.mjs -g "share the same DB-backed metadata" --workers=1 --reporter=list` fails before Toolbox assertions because `GET /api/local-db/snapshot` returns `Unknown API route`. The failure is outside this PR's Sprites Toolbox entry scope. |
| 53 | + |
| 54 | +## ZIP |
| 55 | + |
| 56 | +- `tmp/PR_26177_CHARLIE_017-sprites-toolbox-entry-active_delta.zip` |
0 commit comments