Skip to content

Commit 94e3692

Browse files
author
DavidQ
committed
Fix Asset Manager V2 history placement path preservation and NAV JSON actions - PR_26126_098-asset-manager-v2-history-path-and-nav-json
1 parent 70cb647 commit 94e3692

15 files changed

Lines changed: 916 additions & 407 deletions
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# PR_26126_098 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/ActionNavControl.js`
6+
- `node --check tools/asset-manager-v2/js/bootstrap.js`
7+
- `node --check tools/asset-manager-v2/js/assetManagerMetadata.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 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 required workspace-v2 validation run.
17+
18+
## Manual Checks Covered By Tests
19+
- History is outside Asset Controls and directly under the Asset Controls accordion.
20+
- Asset tile X delete control is reduced by 25%.
21+
- File paths preserve selected filenames exactly.
22+
- Generated IDs normalize filename segments independently from paths.
23+
- Old body export controls are removed.
24+
- NAV Import JSON validates and loads Asset Manager V2 JSON.
25+
- NAV Export JSON downloads the current validated Asset Manager V2 JSON.
26+
- Import/export success and failure messages go to Status only.
27+
- Sample JSON files were not modified.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# PR_26126_098 Asset Manager V2 NAV Import-Export Notes
2+
3+
## NAV Controls
4+
- Removed the old page-body controls: `Export Assets`, `Copy JSON`, and `Export toolState`.
5+
- Added Asset Manager V2 NAV controls: `Import JSON` and `Export JSON`.
6+
- Import and export are enabled only when schema-backed asset payload actions are available.
7+
8+
## Import JSON
9+
- `Import JSON` opens a JSON file picker.
10+
- The selected JSON is parsed as an Asset Manager V2 asset payload.
11+
- Imported JSON must pass `asset-browser.schema.json` validation before replacing current assets.
12+
- Successful import loads the validated assets and selects the first asset.
13+
- Import success and failure messages are written to Status only.
14+
15+
## Export JSON
16+
- `Export JSON` validates the current Asset Manager V2 payload.
17+
- Successful export downloads `asset-manager-v2-assets.json`.
18+
- Export success and failure messages are written to Status only.
19+
- Export does not write success/failure prose into Output Summary.
20+
21+
## Validation
22+
- Playwright validates the old body controls are absent.
23+
- Playwright validates NAV Import JSON and Export JSON labels and enabled state.
24+
- Playwright validates invalid import failure, valid import success, and exported JSON contents.
25+
- Playwright validates import/export messages are Status-only.
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# PR_26126_098 Asset Manager V2 Path Preservation Notes
2+
3+
## Behavior
4+
- Asset Manager V2 now preserves the selected file path filename exactly.
5+
- File paths no longer slugify, hyphenate, or lowercase filenames.
6+
- Generated asset IDs still normalize filename segments for dot-path safety.
7+
- Project-root path trimming still converts absolute repo paths to repo-relative asset paths.
8+
9+
## Examples
10+
- `HTML-JavaScript-Gaming/assets/fonts/vector_battle.ttf` becomes `assets/fonts/vector_battle.ttf`.
11+
- The generated ID for that font remains `assets.font.ui.vector-battle`.
12+
- `HTML-JavaScript-Gaming/assets/video/8 mile.mp4` becomes `assets/video/8 mile.mp4`.
13+
- The generated ID for that video remains `assets.video.cutscene.8-mile`.
14+
15+
## Validation
16+
- Playwright validates `vector_battle.ttf` path preservation.
17+
- Playwright validates `assets/video/8 mile.mp4` path preservation.
18+
- Playwright validates ID-only normalization for the same selected files.
19+
- Playwright validates preview path usage keeps the literal selected path.

docs/dev/reports/codex_changed_files.txt

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,31 @@
22
M docs/dev/reports/coverage_changed_js_guardrail.txt
33
M docs/dev/reports/playwright_v8_coverage_report.txt
44
M tests/playwright/PreviewGeneratorV2Baseline.spec.mjs
5-
M tools/asset-manager-v2/js/assetPreviewHelpers.js
6-
M tools/asset-manager-v2/js/controls/AssetCatalogControl.js
5+
M tools/asset-manager-v2/README.md
6+
M tools/asset-manager-v2/index.html
7+
M tools/asset-manager-v2/js/AssetManagerV2App.js
8+
M tools/asset-manager-v2/js/assetManagerMetadata.js
9+
M tools/asset-manager-v2/js/bootstrap.js
10+
M tools/asset-manager-v2/js/controls/ActionNavControl.js
711
M tools/asset-manager-v2/styles/assetManager.css
8-
?? docs/dev/reports/PR_26126_097_asset_manager_v2_font_preview_notes.md
9-
?? docs/dev/reports/PR_26126_097_asset_manager_v2_manual_validation_notes.md
10-
?? docs/dev/reports/PR_26126_097_asset_manager_v2_selected_detail_height_notes.md
12+
?? docs/dev/reports/PR_26126_098_asset_manager_v2_manual_validation_notes.md
13+
?? docs/dev/reports/PR_26126_098_asset_manager_v2_nav_import_export_notes.md
14+
?? docs/dev/reports/PR_26126_098_asset_manager_v2_path_preservation_notes.md
1115

1216
# git ls-files --others --exclude-standard
13-
docs/dev/reports/PR_26126_097_asset_manager_v2_font_preview_notes.md
14-
docs/dev/reports/PR_26126_097_asset_manager_v2_manual_validation_notes.md
15-
docs/dev/reports/PR_26126_097_asset_manager_v2_selected_detail_height_notes.md
17+
docs/dev/reports/PR_26126_098_asset_manager_v2_manual_validation_notes.md
18+
docs/dev/reports/PR_26126_098_asset_manager_v2_nav_import_export_notes.md
19+
docs/dev/reports/PR_26126_098_asset_manager_v2_path_preservation_notes.md
1620

1721
# git diff --stat
18-
docs/dev/reports/coverage_changed_js_guardrail.txt | 5 +-
19-
docs/dev/reports/playwright_v8_coverage_report.txt | 10 +--
20-
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 95 ++++++++++++++++++----
21-
tools/asset-manager-v2/js/assetPreviewHelpers.js | 49 ++++++++++-
22-
.../js/controls/AssetCatalogControl.js | 14 +++-
23-
tools/asset-manager-v2/styles/assetManager.css | 4 +-
24-
6 files changed, 147 insertions(+), 30 deletions(-)
22+
docs/dev/reports/coverage_changed_js_guardrail.txt | 7 +-
23+
docs/dev/reports/playwright_v8_coverage_report.txt | 22 ++--
24+
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 119 +++++++++++++++++++--
25+
tools/asset-manager-v2/README.md | 2 +-
26+
tools/asset-manager-v2/index.html | 16 +--
27+
tools/asset-manager-v2/js/AssetManagerV2App.js | 71 ++++++++++--
28+
tools/asset-manager-v2/js/assetManagerMetadata.js | 6 +-
29+
tools/asset-manager-v2/js/bootstrap.js | 6 +-
30+
.../js/controls/ActionNavControl.js | 32 +++---
31+
tools/asset-manager-v2/styles/assetManager.css | 5 +-
32+
10 files changed, 230 insertions(+), 56 deletions(-)

0 commit comments

Comments
 (0)