Skip to content

Commit e9c8e14

Browse files
author
DavidQ
committed
Fix Asset Manager V2 palette color IDs preview paths and asset detail controls - PR_26126_093-asset-manager-v2-palette-preview-path-fix
1 parent 0456413 commit e9c8e14

18 files changed

Lines changed: 1468 additions & 1429 deletions
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# PR_26126_093 Asset Manager V2 Manual Validation Notes
2+
3+
## Commands
4+
- `node --check tools/asset-manager-v2/js/AssetManagerV2App.js`
5+
- `node --check tools/asset-manager-v2/js/controls/AssetFormControl.js`
6+
- `node --check tools/asset-manager-v2/js/controls/AssetCatalogControl.js`
7+
- `node --check tools/asset-manager-v2/js/services/TemporaryUatSamplePalette.js`
8+
- `node --check tools/asset-manager-v2/js/services/WorkspaceBridge.js`
9+
- `node --check src/shared/assets/assetPreviewHelpers.js`
10+
- `node --check tests/playwright/PreviewGeneratorV2Baseline.spec.mjs`
11+
- `npx playwright test tests/playwright/PreviewGeneratorV2Baseline.spec.mjs --project=playwright --reporter=list -g "Asset Manager V2"`
12+
- `npm run test:workspace-v2`
13+
14+
## Results
15+
- Focused Asset Manager V2 Playwright slice passed: 4 tests passed.
16+
- Required workspace-v2 Playwright gate passed: 11 tests passed.
17+
- `docs/dev/reports/playwright_v8_coverage_report.txt` was regenerated by the full run.
18+
19+
## Manual Checks Covered By Tests
20+
- Disabled and grayed ID textbox.
21+
- Color ID generation from normalized swatch names.
22+
- Temporary `?palette=sample` UAT palette loading.
23+
- Color picker replacing the file picker and Status-only empty palette messages.
24+
- Audio, font, and image preview path resolution from Workspace V2 game assets.
25+
- Selected Asset Detail accordion and Stretch Override fieldset styling.
26+
- Sample JSON files were not modified.
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# PR_26126_093 Asset Manager V2 Palette Sample Notes
2+
3+
## Temporary UAT Loader
4+
- Added `tools/asset-manager-v2/js/services/TemporaryUatSamplePalette.js`.
5+
- The loader is explicitly marked temporary UAT-only and isolated for later removal.
6+
- It is activated only by `?palette=sample`.
7+
- Normal Workspace V2 palette loading remains separate.
8+
9+
## Palette Format
10+
- The sample palette uses the direct Palette Browser payload shape:
11+
- `schema: "html-js-gaming.palette"`
12+
- `version`
13+
- `id`
14+
- `name`
15+
- `source`
16+
- `sourceId`
17+
- `locked`
18+
- `swatches`
19+
- Swatches include only schema-valid `symbol`, `hex`, `name`, `source`, and `tags` fields.
20+
21+
## Behavior
22+
- `?palette=sample` loads the palette into memory and populates the Asset Manager V2 Color picker.
23+
- The file picker stays hidden when Type is Color.
24+
- Color asset IDs are generated from swatch names, for example `Signal Violet!` becomes `assets.color.hud.signal-violet`.
25+
26+
## Validation
27+
- Playwright validates the UAT query loader, 20px swatches, Status entry, Color ID generation, path generation, and color asset insertion.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# PR_26126_093 Asset Manager V2 Preview Path Resolution Notes
2+
3+
## Workspace Context
4+
- Asset Manager V2 now passes Workspace V2 preview context into shared asset preview helpers.
5+
- The preview context reads `gameId` from the Workspace V2 host context or query string.
6+
- When Workspace mode is active and an asset path starts with `assets/`, previews resolve from `games/<gameId>/assets/...`.
7+
8+
## Media Coverage
9+
- Audio preview `src` resolves from the Workspace game asset root.
10+
- Image preview `src` resolves from the Workspace game asset root.
11+
- Font preview `@font-face src` resolves from the Workspace game asset root.
12+
- Absolute paths, protocol URLs, `palette://workspace/...`, and existing `games/...` paths are left unchanged.
13+
14+
## Validation
15+
- Playwright validates these resolved paths with `gameId: "Asteroids"`:
16+
- `/games/Asteroids/assets/audio/fire.wav`
17+
- `/games/Asteroids/assets/fonts/vector_battle.ttf`
18+
- `/games/Asteroids/assets/images/preview.png`
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# PR_26126_093 Asset Manager V2 Selected Asset Detail Notes
2+
3+
## UI Placement
4+
- Selected asset metadata moved out of the preview card.
5+
- Asset metadata now appears in a dedicated `Selected Asset Detail` accordion under the Assets panel.
6+
- The preview card now focuses on media or inspection rendering.
7+
8+
## Detail Fields
9+
- The selected detail control renders:
10+
- `type/kind`
11+
- `ID`
12+
- `Type`
13+
- `Kind`
14+
- `Role`
15+
- `Path`
16+
- `Final ID`
17+
18+
## Related Controls
19+
- Asset Controls `ID` is now disabled and visibly grayed out.
20+
- `Path` remains read-only.
21+
- Stretch Override is now a bordered fieldset matching the Type, Pick Asset, and History group styling.
22+
- Stretch Override remains visible only when Role is `bezel`.
23+
24+
## Validation
25+
- Playwright validates the selected detail rows after asset insertion.
26+
- Playwright validates the disabled ID field and the bordered Stretch Override group.

docs/dev/reports/codex_changed_files.txt

Lines changed: 23 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -3,40 +3,36 @@ M docs/dev/reports/coverage_changed_js_guardrail.txt
33
M docs/dev/reports/playwright_v8_coverage_report.txt
44
M src/shared/assets/assetPreviewHelpers.js
55
M tests/playwright/PreviewGeneratorV2Baseline.spec.mjs
6-
M tools/asset-manager-v2/README.md
76
M tools/asset-manager-v2/index.html
87
M tools/asset-manager-v2/js/AssetManagerV2App.js
9-
M tools/asset-manager-v2/js/assetManagerMetadata.js
108
M tools/asset-manager-v2/js/bootstrap.js
9+
M tools/asset-manager-v2/js/controls/AssetCatalogControl.js
1110
M tools/asset-manager-v2/js/controls/AssetFormControl.js
12-
M tools/asset-manager-v2/js/controls/AssetManagerShellControl.js
13-
M tools/asset-manager-v2/js/services/AssetSchemaValidator.js
1411
M tools/asset-manager-v2/js/services/WorkspaceBridge.js
1512
M tools/asset-manager-v2/styles/assetManager.css
16-
M tools/schemas/tools/asset-browser.schema.json
17-
?? docs/dev/reports/PR_26126_092_asset_manager_v2_color_asset_schema_notes.md
18-
?? docs/dev/reports/PR_26126_092_asset_manager_v2_manual_validation_notes.md
19-
?? docs/dev/reports/PR_26126_092_asset_manager_v2_palette_picker_notes.md
13+
?? docs/dev/reports/PR_26126_093_asset_manager_v2_manual_validation_notes.md
14+
?? docs/dev/reports/PR_26126_093_asset_manager_v2_palette_sample_notes.md
15+
?? docs/dev/reports/PR_26126_093_asset_manager_v2_preview_path_resolution_notes.md
16+
?? docs/dev/reports/PR_26126_093_asset_manager_v2_selected_asset_detail_notes.md
17+
?? tools/asset-manager-v2/js/services/TemporaryUatSamplePalette.js
2018

2119
# git ls-files --others --exclude-standard
22-
docs/dev/reports/PR_26126_092_asset_manager_v2_color_asset_schema_notes.md
23-
docs/dev/reports/PR_26126_092_asset_manager_v2_manual_validation_notes.md
24-
docs/dev/reports/PR_26126_092_asset_manager_v2_palette_picker_notes.md
20+
docs/dev/reports/PR_26126_093_asset_manager_v2_manual_validation_notes.md
21+
docs/dev/reports/PR_26126_093_asset_manager_v2_palette_sample_notes.md
22+
docs/dev/reports/PR_26126_093_asset_manager_v2_preview_path_resolution_notes.md
23+
docs/dev/reports/PR_26126_093_asset_manager_v2_selected_asset_detail_notes.md
24+
tools/asset-manager-v2/js/services/TemporaryUatSamplePalette.js
2525

2626
# git diff --stat
27-
docs/dev/reports/coverage_changed_js_guardrail.txt | 14 +-
28-
docs/dev/reports/playwright_v8_coverage_report.txt | 38 ++--
29-
src/shared/assets/assetPreviewHelpers.js | 6 +
30-
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 166 +++++++++++++--
31-
tools/asset-manager-v2/README.md | 4 +-
32-
tools/asset-manager-v2/index.html | 45 ++--
33-
tools/asset-manager-v2/js/AssetManagerV2App.js | 42 ++++
34-
tools/asset-manager-v2/js/assetManagerMetadata.js | 54 +++--
35-
tools/asset-manager-v2/js/bootstrap.js | 3 +
36-
.../js/controls/AssetFormControl.js | 227 ++++++++++++++++++++-
37-
.../js/controls/AssetManagerShellControl.js | 2 +-
38-
.../js/services/AssetSchemaValidator.js | 61 +++++-
39-
.../js/services/WorkspaceBridge.js | 16 ++
40-
tools/asset-manager-v2/styles/assetManager.css | 74 +++++++
41-
tools/schemas/tools/asset-browser.schema.json | 115 ++++++++++-
42-
15 files changed, 762 insertions(+), 105 deletions(-)
27+
docs/dev/reports/coverage_changed_js_guardrail.txt | 13 +-
28+
docs/dev/reports/playwright_v8_coverage_report.txt | 31 ++--
29+
src/shared/assets/assetPreviewHelpers.js | 29 +--
30+
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 196 ++++++++++++++++++---
31+
tools/asset-manager-v2/index.html | 26 ++-
32+
tools/asset-manager-v2/js/AssetManagerV2App.js | 20 ++-
33+
tools/asset-manager-v2/js/bootstrap.js | 2 +
34+
.../js/controls/AssetCatalogControl.js | 37 +++-
35+
.../js/controls/AssetFormControl.js | 19 +-
36+
.../js/services/WorkspaceBridge.js | 42 +++++
37+
tools/asset-manager-v2/styles/assetManager.css | 68 ++++++-
38+
11 files changed, 412 insertions(+), 71 deletions(-)

0 commit comments

Comments
 (0)