|
| 1 | +# Workspace Manifest DocumentKind Removal Report |
| 2 | + |
| 3 | +PR: `PR_26140_055-remove-workspace-manifest-documentkind` |
| 4 | + |
| 5 | +## Summary |
| 6 | +- Replaced active `documentKind: "workspace-manifest"` usage with `documentKind: "project-manifest"`. |
| 7 | +- Kept the existing `schema: "html-js-gaming.project"` contract and Workspace Manager V2 manifest/toolState behavior. |
| 8 | +- Removed active code and test expectations that accepted `workspace-manifest` as the valid document kind. |
| 9 | + |
| 10 | +## Updated Active Paths |
| 11 | +- `tools/workspace-manager-v2/js/services/WorkspaceManagerV2ContextService.js` |
| 12 | + - Generates Workspace Manager contexts with `project-manifest`. |
| 13 | + - Validates generated contexts against `project-manifest`. |
| 14 | +- `tools/shared/projectManifestContract.js` |
| 15 | + - Uses `PROJECT_DOCUMENT_KIND = "project-manifest"`. |
| 16 | +- `tools/asset-manager-v2/js/services/WorkspaceBridge.js` |
| 17 | + - Validates workspace-launched contexts as project manifest contexts. |
| 18 | +- `tools/preview-generator-v2/PreviewGeneratorV2App.js` |
| 19 | + - Resolves workspace launch contexts using the project manifest document kind. |
| 20 | +- `tools/shared/documentModeGuards.js` and `tools/shared/platformShell.js` |
| 21 | + - Detect project manifests using `project-manifest` or `schema: "html-js-gaming.project"`. |
| 22 | +- `scripts/validate-json-contracts.mjs` |
| 23 | + - Skips project-manifest sample-style documents using the new document kind. |
| 24 | +- Template manifests: |
| 25 | + - `games/_template/workspace-manager-v2-template.manifest.json` |
| 26 | + - `games/_template/workspace-manager-v2-UAT.manifest.json` |
| 27 | +- Tests and fixtures: |
| 28 | + - Workspace Manager V2 Playwright fixtures and assertions. |
| 29 | + - Asset Manager V2 workspace launch fixtures and assertions. |
| 30 | + - Collision Inspector V2 workspace launch fixture. |
| 31 | + - V2 Asset Manager workspace persistence runtime fixture. |
| 32 | + |
| 33 | +## Active Reference Audit |
| 34 | +- PASS: no active `"documentKind": "workspace-manifest"` JSON values remain outside excluded historical or out-of-scope paths. |
| 35 | +- PASS: no active code/test expectations remain for `documentKind === "workspace-manifest"`, `PROJECT_DOCUMENT_KIND = "workspace-manifest"`, or `toBe("workspace-manifest")`. |
| 36 | +- A non-documentKind schema id remains in the root `workspace.manifest.json`: `html-js-gaming.workspace-manifest.palette-links/1`. It was left unchanged because this PR is scoped to documentKind terminology. |
| 37 | + |
| 38 | +## Validation |
| 39 | +- PASS: targeted JSON parse validation for changed manifests. |
| 40 | +- PASS: targeted syntax/import validation for changed files. |
| 41 | +- PASS: `npm run test:workspace-v2` with 58 passed. |
| 42 | +- PASS: active documentKind search checks. |
| 43 | +- PASS: `git diff --check`. |
| 44 | + |
| 45 | +## Out Of Scope |
| 46 | +- Sample JSON was not modified. |
| 47 | +- Roadmap text was not modified. |
| 48 | +- Full samples smoke test was skipped as requested. |
| 49 | +- Historical reports/docs snapshots were not modified. |
0 commit comments