Skip to content

Commit 234dd2a

Browse files
committed
Build workspace Tags tool and accordion-driven Assets MVP library - PR_26163_070-tags-and-assets-mvp-build
1 parent 847b192 commit 234dd2a

51 files changed

Lines changed: 6624 additions & 2554 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# PR_26163_070 Tags And Assets MVP Build
2+
3+
## Branch Validation
4+
- PASS: current branch is `main`.
5+
- PASS: expected branch is `main`.
6+
7+
## Requirement Checklist
8+
- PASS: Read `docs_build/dev/PROJECT_INSTRUCTIONS.md` before implementation.
9+
- PASS: Built `toolbox/tags` as a Tool Template V2 tool with external JS only.
10+
- PASS: Registered Tags through the active Toolbox registry consumed by `toolbox/index.html`.
11+
- PASS: `toolbox/workspace-manager-v2/index.html` is absent from the active repo; no active workspace-manager-v2 owner was available to edit. Search evidence: `toolbox/workspace-manager-v2/index.html absent from active repo`; `rg workspace-manager-v2 toolbox -g !archive/**` returned no active files.
12+
- PASS: Tags table includes `Tag Name`, `Description`, `Usage Count`, and `Actions`.
13+
- PASS: Tags actions include `Add Tag`, `Edit`, and `Trash`.
14+
- PASS: Tag usage expands into a nested `Tool` / `Item Name` table.
15+
- PASS: Tags omit category, status, color, and HUD fields.
16+
- PASS: Tags are Game Workspace-wide shared vocabulary with audit ownership fields.
17+
- PASS: Assets use shared workspace tag references from Tags; no private free-form asset tag strings are persisted.
18+
- PASS: Rebuilt `toolbox/assets` as an asset library/catalog.
19+
- PASS: Assets center panel renders asset-type accordions for Images, Audio, Fonts, Sprites, Vectors, Palette References, and Data.
20+
- PASS: Each asset-type accordion has its own Add button and editable table rows.
21+
- PASS: Usage dropdown values are Background, Character, Enemy, Environment, Font, Icon, Interface, Music, Sound Effect, Sprite, Theme, Tile, Voice.
22+
- PASS: Projectile is removed from active usage values. Search evidence: `Projectile` appears only in negative Playwright assertions.
23+
- PASS: Asset Tags field is a type-ahead multi-select from shared Tags records.
24+
- PASS: Archive runtime code is not used. Search evidence found only negative assertions for `archive/v1-v2`.
25+
- PASS: Theme V2 external CSS/JS structure preserved; HTML restriction scan found no inline script/style/event handlers.
26+
- PASS: Asset catalog records remain owner-scoped by the current user.
27+
28+
## Changed Files
29+
Functional/source/test files:
30+
- `src/dev-runtime/guest-seeds/tool-metadata-inventory.js`
31+
- `src/dev-runtime/persistence/mock-db-store.js`
32+
- `src/dev-runtime/persistence/tool-repositories/assets-mock-repository.js`
33+
- `src/dev-runtime/persistence/tool-repositories/tags-mock-repository.js`
34+
- `src/dev-runtime/server/mock-api-router.mjs`
35+
- `toolbox/assets/index.html`
36+
- `toolbox/assets/assets-api-client.js`
37+
- `toolbox/assets/assets.js`
38+
- `toolbox/tags/index.html`
39+
- `toolbox/tags/tags-api-client.js`
40+
- `toolbox/tags/tags.js`
41+
- `tests/playwright/tools/AssetToolMockRepository.spec.mjs`
42+
- `tests/playwright/tools/TagsTool.spec.mjs`
43+
- `tests/playwright/tools/BuildPathProgressSimplification.spec.mjs`
44+
- `tests/playwright/tools/RootToolsFutureState.spec.mjs`
45+
- `tests/playwright/tools/ToolboxAdminMetadataSsot.spec.mjs`
46+
- `tests/playwright/tools/ToolboxRoutePages.spec.mjs`
47+
48+
Validation/report artifacts were refreshed under `docs_build/dev/reports/`; see `codex_changed_files.txt` for the exact final file list.
49+
50+
## Impacted Lanes
51+
- Tags tool runtime lane.
52+
- Assets tool runtime lane.
53+
- Toolbox registry/navigation metadata lane.
54+
- Workspace contract lane.
55+
56+
## Validation Performed
57+
- PASS: `node --check` for all changed JS/MJS runtime and Playwright files.
58+
- PASS: `rg --pcre2 "<script(?![^>]*\\bsrc=)|<style\\b|\\son[a-z]+\\s*=" toolbox/assets/index.html toolbox/tags/index.html` returned no matches.
59+
- PASS: `npx playwright test tests/playwright/tools/TagsTool.spec.mjs tests/playwright/tools/AssetToolMockRepository.spec.mjs --reporter=line --workers=1` -> 4 passed.
60+
- PASS: `npx playwright test tests/playwright/tools/ToolboxRoutePages.spec.mjs tests/playwright/tools/ToolboxAdminMetadataSsot.spec.mjs tests/playwright/tools/BuildPathProgressSimplification.spec.mjs --reporter=line --workers=1` -> 16 passed.
61+
- PASS: `npm run test:workspace-v2` -> 5 passed.
62+
63+
## Playwright Result
64+
- PASS: Tags add/edit/delete, nested usage expansion, and toolbox registration covered.
65+
- PASS: Assets launch, asset-type accordions, table add/edit/delete, exact usage dropdown values, tag type-ahead, no Projectile option, and owner scope covered.
66+
67+
## Coverage
68+
- WARN: Browser V8 coverage collected changed UI runtime modules, while server/dev-runtime modules are advisory WARN because they execute in Node/server paths rather than browser V8.
69+
- Covered UI modules: `toolbox/assets/assets.js` 98%, `toolbox/assets/assets-api-client.js` 67%, `toolbox/tags/tags.js` 100%, `toolbox/tags/tags-api-client.js` 100%.
70+
- Report: `docs_build/dev/reports/playwright_v8_coverage_report.txt`.
71+
72+
## Skipped Lanes
73+
- Full samples smoke: SKIPPED per request. Safe because no sample JSON, sample runtime loader, or shared samples framework behavior changed.
74+
- Full all-Playwright suite: SKIPPED to keep validation scoped; targeted Tags, Assets, Toolbox metadata, and workspace-contract lanes were run.
75+
76+
## Manual Validation Steps
77+
1. Open `/toolbox/tags/index.html`, add a tag, edit it, expand usage, and delete the unused tag.
78+
2. Open `/toolbox/assets/index.html`, reset the library, add an Images asset, choose a valid usage, add a shared tag token from type-ahead, save, edit, reload, and delete.
79+
3. Confirm `/toolbox/index.html` shows Tags from active registry metadata and no old workspace-manager-v2 route is required.
80+
4. Confirm a second mock user cannot see the first user's asset catalog row.
81+
82+
## Samples Decision
83+
- PASS: full samples validation intentionally skipped as requested.
Lines changed: 102 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,102 @@
1-
toolbox/assets/index.html
2-
toolbox/assets/assets.js
3-
src/dev-runtime/persistence/tool-repositories/assets-mock-repository.js
4-
src/dev-runtime/server/mock-api-router.mjs
5-
tests/playwright/tools/AssetToolMockRepository.spec.mjs
6-
docs_build/dev/reports/playwright_v8_coverage_report.txt
7-
docs_build/dev/reports/PR_26163_068-assets-tool-rebuild-from-v1-reference.md
8-
docs_build/dev/reports/codex_review.diff
9-
docs_build/dev/reports/codex_changed_files.txt
10-
tmp/PR_26163_068-assets-tool-rebuild-from-v1-reference_delta.zip
1+
# git status --short
2+
M docs_build/dev/reports/coverage_changed_js_guardrail.txt
3+
M docs_build/dev/reports/dependency_gating_report.md
4+
M docs_build/dev/reports/dependency_hydration_reuse_report.md
5+
M docs_build/dev/reports/execution_graph_reuse_report.md
6+
M docs_build/dev/reports/failure_fingerprint_report.md
7+
M docs_build/dev/reports/filesystem_scan_reduction_report.md
8+
M docs_build/dev/reports/incremental_validation_report.md
9+
M docs_build/dev/reports/lane_compilation_report.md
10+
M docs_build/dev/reports/lane_deduplication_report.md
11+
M docs_build/dev/reports/lane_input_validation_report.md
12+
M docs_build/dev/reports/lane_manifests/workspace-contract.json
13+
M docs_build/dev/reports/lane_runtime_optimization_report.md
14+
M docs_build/dev/reports/lane_snapshot_report.md
15+
M docs_build/dev/reports/lane_snapshots/workspace-contract.json
16+
M docs_build/dev/reports/lane_warm_start_report.md
17+
M docs_build/dev/reports/lane_warm_starts/workspace-contract.json
18+
M docs_build/dev/reports/monolith_trigger_removal_report.md
19+
M docs_build/dev/reports/persistent_lane_manifest_report.md
20+
M docs_build/dev/reports/playwright_discovery_ownership_report.md
21+
M docs_build/dev/reports/playwright_discovery_scope_report.md
22+
M docs_build/dev/reports/playwright_structure_audit.md
23+
M docs_build/dev/reports/playwright_v8_coverage_report.txt
24+
M docs_build/dev/reports/retry_suppression_report.md
25+
M docs_build/dev/reports/slow_path_pruning_report.md
26+
M docs_build/dev/reports/static_validation_report.md
27+
M docs_build/dev/reports/targeted_file_manifest_report.md
28+
M docs_build/dev/reports/test_cleanup_performance_report.md
29+
M docs_build/dev/reports/test_cleanup_routing_report.md
30+
M docs_build/dev/reports/testing_lane_execution_report.md
31+
M docs_build/dev/reports/validation_cache_report.md
32+
M docs_build/dev/reports/zero_browser_preflight_report.md
33+
M src/dev-runtime/guest-seeds/tool-metadata-inventory.js
34+
M src/dev-runtime/persistence/mock-db-store.js
35+
M src/dev-runtime/persistence/tool-repositories/assets-mock-repository.js
36+
M src/dev-runtime/server/mock-api-router.mjs
37+
M tests/playwright/tools/AssetToolMockRepository.spec.mjs
38+
M tests/playwright/tools/BuildPathProgressSimplification.spec.mjs
39+
M tests/playwright/tools/RootToolsFutureState.spec.mjs
40+
M tests/playwright/tools/ToolboxAdminMetadataSsot.spec.mjs
41+
M tests/playwright/tools/ToolboxRoutePages.spec.mjs
42+
M toolbox/assets/assets-api-client.js
43+
M toolbox/assets/assets.js
44+
M toolbox/assets/index.html
45+
?? docs_build/dev/reports/PR_26163_070-tags-and-assets-mvp-build.md
46+
?? src/dev-runtime/persistence/tool-repositories/tags-mock-repository.js
47+
?? tests/playwright/tools/TagsTool.spec.mjs
48+
?? toolbox/tags/
49+
50+
# git ls-files --others --exclude-standard
51+
docs_build/dev/reports/PR_26163_070-tags-and-assets-mvp-build.md
52+
src/dev-runtime/persistence/tool-repositories/tags-mock-repository.js
53+
tests/playwright/tools/TagsTool.spec.mjs
54+
toolbox/tags/index.html
55+
toolbox/tags/tags-api-client.js
56+
toolbox/tags/tags.js
57+
58+
# git diff --stat
59+
.../dev/reports/coverage_changed_js_guardrail.txt | 16 +-
60+
docs_build/dev/reports/dependency_gating_report.md | 2 +-
61+
.../reports/dependency_hydration_reuse_report.md | 4 +-
62+
.../dev/reports/execution_graph_reuse_report.md | 4 +-
63+
.../dev/reports/failure_fingerprint_report.md | 2 +-
64+
.../reports/filesystem_scan_reduction_report.md | 2 +-
65+
.../dev/reports/incremental_validation_report.md | 4 +-
66+
docs_build/dev/reports/lane_compilation_report.md | 2 +-
67+
.../dev/reports/lane_deduplication_report.md | 2 +-
68+
.../dev/reports/lane_input_validation_report.md | 2 +-
69+
.../reports/lane_manifests/workspace-contract.json | 14 +-
70+
.../reports/lane_runtime_optimization_report.md | 2 +-
71+
docs_build/dev/reports/lane_snapshot_report.md | 4 +-
72+
.../reports/lane_snapshots/workspace-contract.json | 28 +-
73+
docs_build/dev/reports/lane_warm_start_report.md | 4 +-
74+
.../lane_warm_starts/workspace-contract.json | 18 +-
75+
.../dev/reports/monolith_trigger_removal_report.md | 2 +-
76+
.../dev/reports/persistent_lane_manifest_report.md | 6 +-
77+
.../playwright_discovery_ownership_report.md | 2 +-
78+
.../reports/playwright_discovery_scope_report.md | 2 +-
79+
.../dev/reports/playwright_structure_audit.md | 2 +-
80+
.../dev/reports/playwright_v8_coverage_report.txt | 34 +-
81+
docs_build/dev/reports/retry_suppression_report.md | 2 +-
82+
docs_build/dev/reports/slow_path_pruning_report.md | 12 +-
83+
docs_build/dev/reports/static_validation_report.md | 4 +-
84+
.../dev/reports/targeted_file_manifest_report.md | 4 +-
85+
.../dev/reports/test_cleanup_performance_report.md | 14 +-
86+
.../dev/reports/test_cleanup_routing_report.md | 2 +-
87+
.../dev/reports/testing_lane_execution_report.md | 16 +-
88+
docs_build/dev/reports/validation_cache_report.md | 30 +-
89+
.../dev/reports/zero_browser_preflight_report.md | 2 +-
90+
.../guest-seeds/tool-metadata-inventory.js | 36 +
91+
src/dev-runtime/persistence/mock-db-store.js | 7 +-
92+
.../tool-repositories/assets-mock-repository.js | 323 ++++++++
93+
src/dev-runtime/server/mock-api-router.mjs | 35 +-
94+
.../tools/AssetToolMockRepository.spec.mjs | 600 +++-----------
95+
.../tools/BuildPathProgressSimplification.spec.mjs | 16 +-
96+
.../playwright/tools/RootToolsFutureState.spec.mjs | 12 +-
97+
.../tools/ToolboxAdminMetadataSsot.spec.mjs | 8 +-
98+
tests/playwright/tools/ToolboxRoutePages.spec.mjs | 43 +-
99+
toolbox/assets/assets-api-client.js | 2 +
100+
toolbox/assets/assets.js | 901 +++++++++------------
101+
toolbox/assets/index.html | 168 +---
102+
43 files changed, 1094 insertions(+), 1301 deletions(-)

0 commit comments

Comments
 (0)