|
| 1 | +# PR_26180_OWNER_022-resolve-remaining-src-dependencies Report |
| 2 | + |
| 3 | +## Executive Summary |
| 4 | + |
| 5 | +Rebuilt PR022 from the migration stack base `PR_26180_OWNER_021-archive-legacy-games-samples-teardown` at `2e38e9e31`, not from `main`. |
| 6 | + |
| 7 | +The rebuilt PR is intentionally narrow: |
| 8 | + |
| 9 | +- Deletes obsolete `src/shared/projectDataStore/inMemoryProjectDataStore.js`. |
| 10 | +- Deletes the stale self-test that only validated that obsolete in-memory store. |
| 11 | +- Confirms `src/shared/number/numbers.js` is not present on PR021 and the active equivalent remains at `www/src/shared/number/numbers.js`. |
| 12 | +- Preserves `-v2` tool contract files because active dev contract tests still import them. |
| 13 | +- Preserves manifest-era/sample-era schemas because active validation still references them. |
| 14 | +- Updates `www/toolbox/toolRegistry.js` to import the existing `www/src/shared/toolbox/tool-metadata-inventory.js` equivalent rather than traversing to root `src`. |
| 15 | + |
| 16 | +## Branch Model |
| 17 | + |
| 18 | +- Model: Owner stacked PR |
| 19 | +- Base branch: `PR_26180_OWNER_021-archive-legacy-games-samples-teardown` |
| 20 | +- Base commit: `2e38e9e31` |
| 21 | +- Source branch: `PR_26180_OWNER_022-resolve-remaining-src-dependencies` |
| 22 | +- Rebuilt from migration stack: YES |
| 23 | +- Used `main` as base: NO |
| 24 | + |
| 25 | +## Migration Stack Gates |
| 26 | + |
| 27 | +| Gate | Result | |
| 28 | +|---|---:| |
| 29 | +| Current branch is not `main` | PASS | |
| 30 | +| `www/` exists | PASS | |
| 31 | +| `api/` exists | PASS | |
| 32 | +| root `assets/` tracked active folder absent | PASS | |
| 33 | +| root `games/` tracked active folder absent | PASS | |
| 34 | +| root `learn/` tracked active folder absent | PASS | |
| 35 | +| root `toolbox/` tracked active folder absent | PASS | |
| 36 | + |
| 37 | +## Root Src Count |
| 38 | + |
| 39 | +- Before: 65 tracked files under `src/` |
| 40 | +- After: 64 tracked files under `src/` |
| 41 | + |
| 42 | +## Cleanup Decisions |
| 43 | + |
| 44 | +| Item | Decision | Reason | |
| 45 | +|---|---|---| |
| 46 | +| `src/shared/projectDataStore/inMemoryProjectDataStore.js` | Deleted | Obsolete in-memory project data store; no active references remain after deleting stale self-test. | |
| 47 | +| `dev/tests/shared/InMemoryProjectDataStore.test.mjs` | Deleted | Test only validated the deleted obsolete helper. | |
| 48 | +| `src/shared/number/numbers.js` | No action | Root file is absent; active equivalent exists under `www/src/shared/number/numbers.js`. | |
| 49 | +| `-v2` tool contract files under `src/shared/contracts/tools/` | Preserved | Active dev contract tests import these modules directly. | |
| 50 | +| `src/shared/schemas/game.manifest.schema.json` | Preserved | Active `validate-json-contracts` and fixtures still reference it. | |
| 51 | +| `src/shared/schemas/samples/sample.tool-payload.schema.json` | Preserved | Active sample validation reports and `ToolManifestBoundary` still reference it. | |
| 52 | +| `www/toolbox/toolRegistry.js` import path | Updated | Existing equivalent is under `www/src/shared/toolbox/`; avoids root `src` traversal. | |
| 53 | + |
| 54 | +## Protected Paths |
| 55 | + |
| 56 | +No files under `dev/workspace/generated/tool-images/**` were touched. |
| 57 | + |
| 58 | +## Validation Summary |
| 59 | + |
| 60 | +- `git diff --check`: PASS |
| 61 | +- `npm run validate:canonical-structure`: PASS |
| 62 | +- `node --check www/toolbox/toolRegistry.js`: PASS |
| 63 | +- Browser registry import smoke: PASS, returned 47 tools |
| 64 | +- `node ./dev/tests/shared/ProjectDataStoreContract.test.mjs`: PASS |
| 65 | +- `node ./dev/tests/dev-runtime/ArchitectureCleanupApiNavInvitations.test.mjs`: PASS |
| 66 | +- `node ./dev/tests/tools/ToolManifestBoundary.test.mjs`: PASS |
| 67 | +- Targeted root `src` reference scans: PASS with active references documented and preserved |
| 68 | + |
| 69 | +## Outcome |
| 70 | + |
| 71 | +PR022 has been rebuilt from PR021 and is ready as a narrow migration-stack cleanup branch. It does not attempt broad `src/` retirement. |
0 commit comments