Skip to content

Commit dd4c021

Browse files
committed
Wire shared assets and palettes into active tools
Connect Asset Browser / Import Hub and Palette Browser / Manager into all active first-class tools, keep Sprite Editor first-class, keep SpriteEditor_old_keep hidden legacy, preserve tool-only tools/index.html, and normalize shared engine-themed actions and handoff contracts.
1 parent 9a16433 commit dd4c021

File tree

15 files changed

+683
-72
lines changed

15 files changed

+683
-72
lines changed

docs/dev/CODEX_COMMANDS.md

Lines changed: 52 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,57 @@
11
MODEL: GPT-5.4
22
REASONING: high
33

4-
COMMAND:
5-
Create BUILD_PR_ASSET_BROWSER_IMPORT_HUB_AND_PALETTE_BROWSER_MANAGER using the latest uploaded GitHub repo as the baseline.
4+
TASK:
5+
Create BUILD_PR_ASSET_USAGE_INTEGRATION.
6+
7+
OBJECTIVE:
8+
Wire the shared asset system into all active first-class tools, using the latest uploaded GitHub repo state.
9+
10+
IN SCOPE:
11+
- Vector Map Editor
12+
- Vector Asset Studio
13+
- Tilemap Studio
14+
- Parallax Scene Studio
15+
- Sprite Editor
16+
- shared Asset Browser / Import Hub integration
17+
- shared Palette Browser / Manager integration
18+
- registry-safe tool surfacing
19+
- engine theme consistency
20+
- contract documentation
21+
22+
OUT OF SCOPE:
23+
- SpriteEditor_old_keep
24+
- restoring samples to tools/index.html
25+
- showcase game content
26+
- unrelated refactors
627

728
REQUIREMENTS:
8-
1. Build two new first-class tools under tools/:
9-
- tools/Asset Browser/ -> display name: Asset Browser / Import Hub
10-
- tools/Palette Browser/ -> display name: Palette Browser / Manager
11-
2. Register both in tools/toolRegistry.js as active first-class tools.
12-
3. Ensure tools/index.html renders them through the shared registry-driven surface.
13-
4. Remove the planned placeholder cards for these two tools once the real tools are live.
14-
5. Ensure any remaining older Asset Browser naming is normalized to "Asset Browser / Import Hub".
15-
6. Keep Sprite Editor first-class and visible.
16-
7. Keep SpriteEditor_old_keep legacy and hidden.
17-
8. Keep samples off the tools landing page.
18-
9. Use shared engine/platform shell + theme for both new tools.
19-
10. Update the registry validator so it verifies:
20-
- both new tools exist in registry
21-
- folder path matches registry path
22-
- active first-class tools are surfaced
23-
- legacy tools remain excluded
24-
- placeholder cards are not left behind for live tools
25-
11. Keep changes surgical and aligned to current repo conventions.
26-
27-
PACKAGE OUTPUT:
28-
<project folder>/tmp/BUILD_PR_ASSET_BROWSER_IMPORT_HUB_AND_PALETTE_BROWSER_MANAGER.zip
29+
1. Sprite Editor must remain first-class and visible.
30+
2. SpriteEditor_old_keep must remain hidden legacy.
31+
3. tools/index.html must stay tool-only.
32+
4. Tools consume shared assets/palettes; they do not own duplicated private copies by default.
33+
5. Normalize shared action labels:
34+
- Browse Assets
35+
- Import Assets
36+
- Browse Palettes
37+
- Manage Palettes
38+
6. Preserve engine theme and shared shell consistency.
39+
7. Update/extend the registry validator if needed so surfacing remains correct.
40+
41+
IMPLEMENTATION TARGETS:
42+
- add shared launch hooks/actions in each active tool
43+
- connect each tool to Asset Browser / Import Hub
44+
- connect each tool to Palette Browser / Manager
45+
- document the asset and palette handoff contracts
46+
- avoid structural churn unless required for the integration
47+
48+
VALIDATE:
49+
- all active tools can launch asset/palette flows
50+
- no samples reappear on tools/index.html
51+
- no legacy leakage
52+
- no broken paths
53+
- action labels consistent
54+
- engine theme consistent
55+
56+
OUTPUT:
57+
<project folder>/tmp/BUILD_PR_ASSET_USAGE_INTEGRATION.zip

docs/dev/COMMIT_COMMENT.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Build Asset Browser / Import Hub and Palette Browser / Manager as first-class registry-backed tools using the shared engine/platform shell, remove their planned placeholders from tools/index, keep Sprite Editor first-class, keep SpriteEditor_old_keep hidden legacy, and extend registry validation to prevent future drift.
1+
Wire shared asset usage into all active first-class tools through the shared shell, normalize shared asset/palette handoff contracts, keep Sprite Editor first-class, keep SpriteEditor_old_keep hidden legacy, and preserve a tool-only tools/index surface.
Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,27 @@
1-
Change Summary
2-
3-
- Added two new first-class tools:
4-
- Asset Browser / Import Hub
5-
- Palette Browser / Manager
6-
- Registered both in the shared active tools registry.
7-
- Removed the static planned placeholder cards for the two now-live tools.
8-
- Kept the tools landing page registry-driven and sample-free.
9-
- Kept Sprite Editor first-class and SpriteEditor_old_keep hidden legacy.
10-
- Extended validator coverage for new tool folders, active surface participation, and placeholder drift.
1+
CHANGE SUMMARY
2+
3+
PR:
4+
BUILD_PR_ASSET_USAGE_INTEGRATION
5+
6+
SUMMARY:
7+
Wire shared asset and palette systems into all active first-class tools through the shared platform shell and documented handoff contracts.
8+
9+
INCLUDED:
10+
- shared shell action hooks for every active first-class tool
11+
- normalized action labels:
12+
- Browse Assets
13+
- Import Assets
14+
- Browse Palettes
15+
- Manage Palettes
16+
- documented shared asset/palette handoff contract
17+
- Asset Browser launch-context and asset handoff publishing
18+
- Palette Browser launch-context and palette handoff publishing
19+
- Sprite Editor remains first-class
20+
- SpriteEditor_old_keep remains hidden legacy
21+
- tools/index.html remains tool-only
22+
23+
EXCLUDED:
24+
- samples on tools/index.html
25+
- showcase game/sample content
26+
- legacy revival
27+
- unrelated platform restructuring

docs/dev/reports/file_tree.txt

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1-
HTML-JavaScript-Gaming-main/
2-
docs/
3-
pr/
4-
BUILD_PR_ASSET_BROWSER_IMPORT_HUB_AND_PALETTE_BROWSER_MANAGER.md
5-
dev/
6-
codex_commands.md
7-
commit_comment.txt
8-
reports/
9-
change_summary.txt
10-
validation_checklist.txt
11-
file_tree.txt
12-
tmp/
13-
BUILD_PR_ASSET_BROWSER_IMPORT_HUB_AND_PALETTE_BROWSER_MANAGER.zip
1+
BUILD_PR_ASSET_USAGE_INTEGRATION/
2+
└── docs/
3+
├── pr/
4+
│ └── BUILD_PR_ASSET_USAGE_INTEGRATION.md
5+
└── dev/
6+
├── codex_commands.md
7+
├── commit_comment.txt
8+
└── reports/
9+
├── change_summary.txt
10+
├── validation_checklist.txt
11+
└── file_tree.txt
Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,25 @@
1-
Validation Checklist
1+
VALIDATION CHECKLIST
22

3-
[x] tools/Asset Browser/ exists
4-
[x] tools/Palette Browser/ exists
5-
[x] Both tools load through shared engine/platform shell
6-
[x] Both tools use engine theme
7-
[x] tools/toolRegistry.js contains active entries for both tools
8-
[x] tools/index.html shows both tools as first-class launchable tools
9-
[x] tools/index.html does not show samples
10-
[x] Static placeholder for Palette Browser / Manager removed after activation
11-
[x] Static placeholder for Asset Browser / Import Hub removed after activation
12-
[x] No non-validator references remain to the old Asset Browser name
13-
[x] Sprite Editor remains visible as first-class tool
14-
[x] SpriteEditor_old_keep remains hidden legacy
15-
[x] Registry validator checks both new tools
16-
[x] Registry validator flags placeholder drift for live tools
17-
[x] No broken paths from tools landing page
3+
[x] Sprite Editor is still first-class and visible
4+
[x] SpriteEditor_old_keep is hidden legacy
5+
[x] tools/index.html remains tool-only
6+
[x] Vector Map Editor can launch Browse Assets
7+
[x] Vector Map Editor can launch Import Assets
8+
[x] Vector Map Editor can launch Browse Palettes / Manage Palettes
9+
[x] Vector Asset Studio can launch Browse Assets
10+
[x] Vector Asset Studio can launch Import Assets
11+
[x] Vector Asset Studio can launch Browse Palettes / Manage Palettes
12+
[x] Tilemap Studio can launch Browse Assets
13+
[x] Tilemap Studio can launch Import Assets
14+
[x] Tilemap Studio can launch Browse Palettes / Manage Palettes
15+
[x] Parallax Scene Studio can launch Browse Assets
16+
[x] Parallax Scene Studio can launch Import Assets
17+
[x] Parallax Scene Studio can launch Browse Palettes / Manage Palettes
18+
[x] Sprite Editor can launch Browse Assets
19+
[x] Sprite Editor can launch Import Assets
20+
[x] Sprite Editor can launch Browse Palettes / Manage Palettes
21+
[x] Shared asset references are used instead of tool-private duplication by default
22+
[x] Shared palettes remain the single source of truth
23+
[x] Shared contract doc exists at docs/specs/asset_usage_contract.md
24+
[x] No broken paths or dead launchers
25+
[x] Engine theme is consistent across the integrated flows
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# BUILD_PR_ASSET_USAGE_INTEGRATION
2+
3+
## Goal
4+
Wire the shared asset and palette systems into all active first-class tools without changing the tool-only launcher surface, without reviving legacy sprite tooling, and without introducing tool-private asset duplication as the default path.
5+
6+
## Scope
7+
Integrated tools:
8+
- `Vector Map Editor`
9+
- `Vector Asset Studio`
10+
- `Tilemap Studio`
11+
- `Parallax Scene Studio`
12+
- `Sprite Editor`
13+
- `Asset Browser / Import Hub`
14+
- `Palette Browser / Manager`
15+
16+
Out of scope:
17+
- `SpriteEditor_old_keep`
18+
- sample restoration on `tools/index.html`
19+
- showcase/game content
20+
- unrelated structural refactors
21+
22+
## Files Added
23+
- `tools/shared/assetUsageIntegration.js`
24+
- `docs/specs/asset_usage_contract.md`
25+
26+
## Files Updated
27+
- `tools/shared/platformShell.js`
28+
- `tools/shared/platformShell.css`
29+
- `tools/Asset Browser/index.html`
30+
- `tools/Asset Browser/main.js`
31+
- `tools/Palette Browser/index.html`
32+
- `tools/Palette Browser/main.js`
33+
- `scripts/validate-active-tools-surface.mjs`
34+
- `docs/dev/COMMIT_COMMENT.txt`
35+
- `docs/dev/reports/change_summary.txt`
36+
- `docs/dev/reports/validation_checklist.txt`
37+
38+
## Implementation Summary
39+
40+
### Shared Shell Integration
41+
- Added a shared asset-usage integration module under `tools/shared/`.
42+
- The shared platform shell now renders normalized launch actions for every active tool page:
43+
- `Browse Assets`
44+
- `Import Assets`
45+
- `Browse Palettes`
46+
- `Manage Palettes`
47+
- The shared shell also shows the current shared asset and shared palette handoff summaries.
48+
49+
### Shared Handoff Contracts
50+
- Added a documented contract in `docs/specs/asset_usage_contract.md`.
51+
- Normalized shared storage keys:
52+
- `toolboxaid.shared.assetHandoff`
53+
- `toolboxaid.shared.paletteHandoff`
54+
- Tools consume shared references by contract instead of creating private default copies.
55+
56+
### Asset Browser / Import Hub
57+
- Added launch-context handling through query params.
58+
- Added a `Use In Active Tool` action that publishes a normalized shared asset handoff.
59+
- Preserved non-destructive import planning behavior.
60+
61+
### Palette Browser / Manager
62+
- Added launch-context handling through query params.
63+
- Updated palette handoff publishing to use the normalized shared contract.
64+
- Preserved built-in palette browsing and local editable palette workflows.
65+
66+
## Surface and Visibility Rules
67+
- `Sprite Editor` remains first-class and visible.
68+
- `SpriteEditor_old_keep` remains preserved and hidden from active surfacing.
69+
- `tools/index.html` remains tool-only.
70+
- No samples were reintroduced to the tools launcher.
71+
72+
## Validation
73+
- `node --check tools/shared/assetUsageIntegration.js`
74+
- `node --check tools/shared/platformShell.js`
75+
- `node --check tools/Asset Browser/main.js`
76+
- `node --check tools/Palette Browser/main.js`
77+
- `node scripts/validate-tool-registry.mjs`
78+
- `node scripts/validate-active-tools-surface.mjs`
79+
80+
## Acceptance Summary
81+
- Every active first-class tool page now exposes the same shared asset/palette launch actions through the engine-themed shell.
82+
- Asset and palette handoffs are normalized and documented.
83+
- Surfacing remains registry-safe and legacy-safe.

0 commit comments

Comments
 (0)