Skip to content

Commit 922c299

Browse files
author
DavidQ
committed
Fix Asset Manager V2 game asset preview paths and selected detail placement - PR_26126_095-asset-manager-v2-game-path-and-detail-placement
1 parent ba0935f commit 922c299

14 files changed

Lines changed: 656 additions & 715 deletions
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# PR_26126_095 Asset Manager V2 Manual Validation Notes
2+
3+
## Commands
4+
- `node --check tools/asset-manager-v2/js/assetPreviewHelpers.js`
5+
- `node --check tools/asset-manager-v2/js/controls/AssetCatalogControl.js`
6+
- `node --check tools/asset-manager-v2/js/AssetManagerV2App.js`
7+
- `node --check tools/workspace-v2/index.js`
8+
- `node --check tests/playwright/PreviewGeneratorV2Baseline.spec.mjs`
9+
- `npx playwright test tests/playwright/PreviewGeneratorV2Baseline.spec.mjs --project=playwright --reporter=list -g "Asset Manager V2"`
10+
- `npm run test:workspace-v2`
11+
12+
## Results
13+
- JavaScript syntax checks passed for all changed runtime and Playwright files.
14+
- Focused Asset Manager V2 Playwright slice passed: 5 tests passed.
15+
- Required workspace-v2 Playwright gate passed: 12 tests passed.
16+
- `docs/dev/reports/playwright_v8_coverage_report.txt` was regenerated by the full workspace-v2 validation run.
17+
18+
## Manual Checks Covered By Tests
19+
- Workspace-launched preview media paths resolve under `/games/<game>/assets/...`.
20+
- Missing Workspace game context produces a visible Status failure instead of falling back to `/assets/...`.
21+
- Audio/image/font preview path coverage remains exercised through Workspace V2.
22+
- Selected Asset Detail is outside the Assets control and positioned at the bottom of the Asset Manager V2 screen.
23+
- Asset preview remains embedded inside Selected Asset Detail.
24+
- Sample JSON files were not modified.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# PR_26126_095 Asset Manager V2 Preview Path Resolution Notes
2+
3+
## Workspace Game Context
4+
- Workspace V2 now carries the active game identifier from `?gameId=` or `?game=` into the Asset Manager V2 host context.
5+
- Launching Asset Manager V2 from Workspace V2 preserves the active game identifier in the tool URL when available.
6+
- Asset Manager V2 preview helpers resolve Workspace asset paths that start with `assets/` to `games/<gameId>/assets/...`.
7+
- Existing protocol URLs, existing `games/...` paths, and non-asset paths are left unchanged.
8+
- `Asteroids` is used only as Playwright fixture data for path assertions.
9+
10+
## Missing Context Failure
11+
- In Workspace mode, an `assets/...` preview path without a game identifier no longer falls back to `/assets/...`.
12+
- The preview helper returns an empty preview path plus a failure message when the game context is missing.
13+
- Asset Manager V2 routes that failure through the visible Status log.
14+
- Duplicate preview failure messages are suppressed until the preview error changes or clears.
15+
16+
## Validation
17+
- Playwright validates Workspace-launched audio, font, and image previews resolve under `/games/Asteroids/assets/...`.
18+
- Playwright validates Asset Manager V2 launched from Workspace V2 includes `gameId=Asteroids` when the Workspace URL provides it.
19+
- Playwright validates missing game context logs `FAIL Preview path assets/audio/fire.wav cannot be resolved because Workspace V2 game context is missing.`
20+
- Playwright validates missing game context does not render an audio preview source.
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# PR_26126_095 Asset Manager V2 Selected Asset Detail Placement Notes
2+
3+
## Placement
4+
- Selected Asset Detail moved out of the Assets control.
5+
- Selected Asset Detail is now a direct bottom-screen control inside the Asset Manager V2 app shell.
6+
- The Assets control owns only the asset count and asset tile list.
7+
- The asset preview remains inside Selected Asset Detail.
8+
9+
## Layout
10+
- The Asset Manager V2 shell now reserves a bottom row for Selected Asset Detail.
11+
- The bottom detail control spans the full app width.
12+
- The center asset panel can continue to size independently from the bottom detail control.
13+
- Selected Asset Detail content scrolls when its metadata and preview exceed the reserved bottom area.
14+
15+
## Validation
16+
- Playwright validates `selectedAssetDetailsContent` is not inside `assetsContent`.
17+
- Playwright validates the Selected Asset Detail panel is parented by the app shell.
18+
- Playwright validates `assetPreview` remains inside Selected Asset Detail.
19+
- Playwright validates Selected Asset Detail is positioned below the Assets panel.
Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,30 @@
11
# git status --short
22
M docs/dev/reports/coverage_changed_js_guardrail.txt
33
M docs/dev/reports/playwright_v8_coverage_report.txt
4-
D src/shared/assets/assetPreviewHelpers.js
54
M tests/playwright/PreviewGeneratorV2Baseline.spec.mjs
65
M tools/asset-manager-v2/index.html
6+
M tools/asset-manager-v2/js/AssetManagerV2App.js
7+
M tools/asset-manager-v2/js/assetPreviewHelpers.js
78
M tools/asset-manager-v2/js/controls/AssetCatalogControl.js
8-
M tools/asset-manager-v2/js/controls/AssetFormControl.js
99
M tools/asset-manager-v2/styles/assetManager.css
10-
?? docs/dev/reports/PR_26126_094_asset_manager_v2_manual_validation_notes.md
11-
?? docs/dev/reports/PR_26126_094_asset_manager_v2_palette_swatch_notes.md
12-
?? docs/dev/reports/PR_26126_094_asset_manager_v2_preview_helper_location_notes.md
13-
?? docs/dev/reports/PR_26126_094_asset_manager_v2_selected_asset_detail_notes.md
14-
?? tools/asset-manager-v2/js/assetPreviewHelpers.js
10+
M tools/workspace-v2/index.js
11+
?? docs/dev/reports/PR_26126_095_asset_manager_v2_manual_validation_notes.md
12+
?? docs/dev/reports/PR_26126_095_asset_manager_v2_preview_path_resolution_notes.md
13+
?? docs/dev/reports/PR_26126_095_asset_manager_v2_selected_asset_detail_placement_notes.md
1514

1615
# git ls-files --others --exclude-standard
17-
docs/dev/reports/PR_26126_094_asset_manager_v2_manual_validation_notes.md
18-
docs/dev/reports/PR_26126_094_asset_manager_v2_palette_swatch_notes.md
19-
docs/dev/reports/PR_26126_094_asset_manager_v2_preview_helper_location_notes.md
20-
docs/dev/reports/PR_26126_094_asset_manager_v2_selected_asset_detail_notes.md
21-
tools/asset-manager-v2/js/assetPreviewHelpers.js
16+
docs/dev/reports/PR_26126_095_asset_manager_v2_manual_validation_notes.md
17+
docs/dev/reports/PR_26126_095_asset_manager_v2_preview_path_resolution_notes.md
18+
docs/dev/reports/PR_26126_095_asset_manager_v2_selected_asset_detail_placement_notes.md
2219

2320
# git diff --stat
24-
docs/dev/reports/coverage_changed_js_guardrail.txt | 9 +-
25-
docs/dev/reports/playwright_v8_coverage_report.txt | 22 ++---
26-
src/shared/assets/assetPreviewHelpers.js | 104 ---------------------
27-
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 78 ++++++++++------
28-
tools/asset-manager-v2/index.html | 2 +-
29-
.../js/controls/AssetCatalogControl.js | 25 +++--
30-
.../js/controls/AssetFormControl.js | 14 ++-
31-
tools/asset-manager-v2/styles/assetManager.css | 49 +++++-----
32-
8 files changed, 108 insertions(+), 195 deletions(-)
21+
docs/dev/reports/coverage_changed_js_guardrail.txt | 10 ++--
22+
docs/dev/reports/playwright_v8_coverage_report.txt | 24 ++++----
23+
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 64 +++++++++++++++++++++-
24+
tools/asset-manager-v2/index.html | 21 +++----
25+
tools/asset-manager-v2/js/AssetManagerV2App.js | 1 +
26+
tools/asset-manager-v2/js/assetPreviewHelpers.js | 17 ++++--
27+
.../js/controls/AssetCatalogControl.js | 22 +++++++-
28+
tools/asset-manager-v2/styles/assetManager.css | 11 +++-
29+
tools/workspace-v2/index.js | 23 ++++++++
30+
9 files changed, 152 insertions(+), 41 deletions(-)

0 commit comments

Comments
 (0)