Skip to content

Commit 395a2bc

Browse files
author
DavidQ
committed
Polish Asset Manager V2 tile layout and asset ID namespace - PR_26126_090-asset-manager-v2-tile-id-polish
1 parent 9579c22 commit 395a2bc

14 files changed

Lines changed: 838 additions & 732 deletions
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# PR_26126_090 Asset Manager V2 Asset ID Naming Notes
2+
3+
Date: 2026-05-06
4+
5+
## ID Structure
6+
7+
- Asset Manager V2 now generates IDs as `assets.<type>.<role>.<filenamePart>`.
8+
- `assets` is the namespace.
9+
- `<type>` is the selected asset kind/type, such as `image` or `audio`.
10+
- `<role>` is the selected role for that kind/type.
11+
- `<filenamePart>` is normalized from the selected filename.
12+
13+
## Filename Part Normalization
14+
15+
- Filename extensions are removed before ID generation.
16+
- Filename parts are lowercased.
17+
- Non-alphanumeric runs are replaced with `-`.
18+
- Leading and trailing separators are removed.
19+
- The Playwright validation covers `Fire Boom!.WAV` generating `assets.audio.sound.fire-boom`.
20+
21+
## Schema And Validation
22+
23+
- `tools/schemas/tools/asset-browser.schema.json` now accepts the `assets.<type>.<role>.<filenamePart>` key structure.
24+
- Asset Manager V2 schema validation enforces that the ID type segment matches `kind`.
25+
- Asset Manager V2 schema validation enforces that the ID role segment matches `role`.
26+
- Bezel entries use `assets.image.bezel.<filenamePart>`.
27+
- `stretchOverride` remains limited to `assets.image.bezel.*` IDs.
28+
29+
## Validation
30+
31+
- `npm run test:workspace-v2`: passed, 10 tests.
32+
- Playwright validates generated IDs, status messages, Output Summary keys, role-edit ID updates, and Workspace V2 insertion with the new ID structure.
33+
- No sample JSON files were modified.
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# PR_26126_090 Asset Manager V2 Manual Validation Notes
2+
3+
Date: 2026-05-06
4+
5+
## Validation Performed
6+
7+
- Ran focused Asset Manager V2 Playwright coverage during implementation.
8+
- Ran `npm run test:workspace-v2`.
9+
- Ran JS syntax checks on touched Asset Manager V2 modules and the Playwright baseline.
10+
- Ran `git diff --check`.
11+
- Confirmed no sample JSON files changed.
12+
13+
## Results
14+
15+
- Focused Asset Manager V2 Playwright slice: passed, 1 test.
16+
- `npm run test:workspace-v2`: passed, 10 tests.
17+
- Tile layout: passed. Tiles use fixed height, top-right X delete, left-aligned visible text, reduced ID size/weight, and reduced spacing.
18+
- ID generation: passed. Generated IDs use `assets.<type>.<role>.<filenamePart>`.
19+
- Filename normalization: passed. `Fire Boom!.WAV` generated `assets.audio.sound.fire-boom`.
20+
- Output Summary and Status messages: passed. New ID keys and messages use the new structure.
21+
- Workspace V2 insertion: passed. Workspace assets are inserted under the new `assets.audio.sound.fire` key structure.
22+
- Schema validation: passed. Asset Manager V2 validates the new ID shape and role/type segment consistency.
23+
- Sample JSON: passed. No sample JSON files were modified.
24+
25+
## Reports
26+
27+
- `docs/dev/reports/playwright_v8_coverage_report.txt`
28+
- `docs/dev/reports/coverage_changed_js_guardrail.txt`
29+
- `docs/dev/reports/PR_26126_090_asset_manager_v2_asset_id_naming_notes.md`
30+
- `docs/dev/reports/PR_26126_090_asset_manager_v2_tile_layout_notes.md`
31+
- `docs/dev/reports/PR_26126_090_asset_manager_v2_manual_validation_notes.md`
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# PR_26126_090 Asset Manager V2 Tile Layout Notes
2+
3+
Date: 2026-05-06
4+
5+
## Tile Layout
6+
7+
- Asset tiles now use a fixed `88px` height sized for the type/role line plus a two-line ID area.
8+
- The X delete control remains inside the tile button and is positioned at the top-right corner.
9+
- Visible asset identity text is left-aligned.
10+
- The `type:role` line uses stronger weight than the ID.
11+
- The asset ID uses a smaller font size and lighter weight than `type:role`.
12+
- The vertical gap between `type:role` and ID is reduced to `2px`.
13+
- Long IDs clamp to the two-line ID area while full details remain available in the tile tooltip.
14+
15+
## Validation
16+
17+
- `npm run test:workspace-v2`: passed, 10 tests.
18+
- Playwright validates X placement, left-aligned text, fixed tile height, reduced row gap, smaller/lighter ID text, and continued tile wrapping.
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-
M tests/helpers/playwrightV8CoverageReporter.mjs
54
M tests/playwright/PreviewGeneratorV2Baseline.spec.mjs
65
M tools/asset-manager-v2/index.html
7-
M tools/asset-manager-v2/js/AssetManagerV2App.js
8-
M tools/asset-manager-v2/js/bootstrap.js
9-
M tools/asset-manager-v2/js/controls/AssetCatalogControl.js
6+
M tools/asset-manager-v2/js/assetManagerMetadata.js
107
M tools/asset-manager-v2/js/controls/AssetFormControl.js
8+
M tools/asset-manager-v2/js/services/AssetSchemaValidator.js
119
M tools/asset-manager-v2/styles/assetManager.css
12-
?? docs/dev/reports/PR_26126_089_asset_manager_v2_manual_validation_notes.md
13-
?? docs/dev/reports/PR_26126_089_asset_manager_v2_status_log_notes.md
14-
?? docs/dev/reports/PR_26126_089_asset_manager_v2_ui_control_notes.md
10+
M tools/schemas/tools/asset-browser.schema.json
11+
?? docs/dev/reports/PR_26126_090_asset_manager_v2_asset_id_naming_notes.md
12+
?? docs/dev/reports/PR_26126_090_asset_manager_v2_manual_validation_notes.md
13+
?? docs/dev/reports/PR_26126_090_asset_manager_v2_tile_layout_notes.md
1514

1615
# git ls-files --others --exclude-standard
17-
docs/dev/reports/PR_26126_089_asset_manager_v2_manual_validation_notes.md
18-
docs/dev/reports/PR_26126_089_asset_manager_v2_status_log_notes.md
19-
docs/dev/reports/PR_26126_089_asset_manager_v2_ui_control_notes.md
16+
docs/dev/reports/PR_26126_090_asset_manager_v2_asset_id_naming_notes.md
17+
docs/dev/reports/PR_26126_090_asset_manager_v2_manual_validation_notes.md
18+
docs/dev/reports/PR_26126_090_asset_manager_v2_tile_layout_notes.md
2019

2120
# git diff --stat
22-
docs/dev/reports/coverage_changed_js_guardrail.txt | 9 ++--
23-
docs/dev/reports/playwright_v8_coverage_report.txt | 25 +++++-----
24-
tests/helpers/playwrightV8CoverageReporter.mjs | 2 +-
25-
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 56 ++++++++++++++--------
26-
tools/asset-manager-v2/index.html | 15 +++---
27-
tools/asset-manager-v2/js/AssetManagerV2App.js | 29 ++++++-----
28-
tools/asset-manager-v2/js/bootstrap.js | 2 -
29-
.../js/controls/AssetCatalogControl.js | 16 ++++---
30-
.../js/controls/AssetFormControl.js | 24 +++-------
31-
tools/asset-manager-v2/styles/assetManager.css | 51 ++++++++++++++++----
32-
10 files changed, 134 insertions(+), 95 deletions(-)
21+
docs/dev/reports/coverage_changed_js_guardrail.txt | 5 +-
22+
docs/dev/reports/playwright_v8_coverage_report.txt | 12 +-
23+
.../playwright/PreviewGeneratorV2Baseline.spec.mjs | 126 ++++++++++++++-------
24+
tools/asset-manager-v2/index.html | 2 +-
25+
tools/asset-manager-v2/js/assetManagerMetadata.js | 21 +++-
26+
.../js/controls/AssetFormControl.js | 17 ++-
27+
.../js/services/AssetSchemaValidator.js | 28 +++--
28+
tools/asset-manager-v2/styles/assetManager.css | 42 +++++--
29+
tools/schemas/tools/asset-browser.schema.json | 8 +-
30+
9 files changed, 190 insertions(+), 71 deletions(-)

0 commit comments

Comments
 (0)