You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The active entrypoints for the target tools have moved to canonical paths. Remaining legacy paths are API-client or worker exceptions with removal plans.
14
+
15
+
## Migrated Paths
16
+
17
+
| Tool area | Legacy path | Canonical path | Status |
| Game Journey |`toolbox/game-journey/game-journey.js`|`assets/toolbox/game-journey/js/index.js`| Migrated |
22
+
23
+
## Retained Exceptions
24
+
25
+
| Path | Reason | Removal plan |
26
+
| --- | --- | --- |
27
+
|`toolbox/controls/controls-api-client.js`| Shared by Controls and `account/user-controls-page.js`. | Define shared client placement, move shared code, update both importers, then remove exception. |
28
+
|`toolbox/assets/assets-api-client.js`| Shared by Assets and Objects. | Define shared client placement, update Assets and Objects together, then remove exception. |
29
+
|`toolbox/assets/assets-upload-worker.js`| Worker filename/path pattern is not yet defined by canonical guardrail. | Add approved worker placement rule, move worker, update `new Worker(...)`, run upload validation, then remove exception. |
30
+
|`toolbox/game-journey/game-journey-api-client.js`| Guardrail currently approves only `assets/toolbox/{tool}/js/index.js`; second tool JS file placement is not approved. | Add secondary tool-module or shared-client placement rule, move/update imports, run Game Journey validation, then remove exception. |
- Run browser validation: PASS with existing failure documented.
106
+
- Confirm all reports exist: PASS
107
+
- Confirm ZIP exists: PASS after artifact creation.
108
+
109
+
## Manual Validation Notes
110
+
111
+
This reaudit confirms the remaining target work is no longer entrypoint migration. It is shared-client and worker-placement cleanup, which should be scoped separately to avoid changing tool behavior under a structure-only migration stack.
112
+
113
+
## Recommended Next PRs
114
+
115
+
1. Shared API-client placement governance for reused toolbox API clients.
116
+
2. Worker placement guardrail for tool-local module workers.
117
+
3. Controls API client shared placement migration.
118
+
4. Assets API client shared placement migration with Objects.
119
+
5. Assets worker migration after worker placement rule exists.
120
+
6. Game Journey API client migration after secondary module or shared-client placement is approved.
+The active entrypoints for the target tools have moved to canonical paths. Remaining legacy paths are API-client or worker exceptions with removal plans.
20
+
+
21
+
+## Migrated Paths
22
+
+
23
+
+| Tool area | Legacy path | Canonical path | Status |
+| Game Journey | `toolbox/game-journey/game-journey.js` | `assets/toolbox/game-journey/js/index.js` | Migrated |
28
+
+
29
+
+## Retained Exceptions
16
30
+
17
-
+The file remains in its approved legacy location because moving it into `assets/toolbox/game-journey/js/` would create a second canonical tool JS file that the current guardrail does not allow.
31
+
+| Path | Reason | Removal plan |
32
+
+| --- | --- | --- |
33
+
+| `toolbox/controls/controls-api-client.js` | Shared by Controls and `account/user-controls-page.js`. | Define shared client placement, move shared code, update both importers, then remove exception. |
34
+
+| `toolbox/assets/assets-api-client.js` | Shared by Assets and Objects. | Define shared client placement, update Assets and Objects together, then remove exception. |
35
+
+| `toolbox/assets/assets-upload-worker.js` | Worker filename/path pattern is not yet defined by canonical guardrail. | Add approved worker placement rule, move worker, update `new Worker(...)`, run upload validation, then remove exception. |
36
+
+| `toolbox/game-journey/game-journey-api-client.js` | Guardrail currently approves only `assets/toolbox/{tool}/js/index.js`; second tool JS file placement is not approved. | Add secondary tool-module or shared-client placement rule, move/update imports, run Game Journey validation, then remove exception. |
+Decision: retain `toolbox/game-journey/game-journey-api-client.js` as a temporary legacy exception.
56
+
+- Command: `npm run validate:canonical-structure`
57
+
+- Result: PASS
58
+
+- Blocking violations: 0
59
+
+- Approved legacy exceptions: 481
35
60
+
36
-
+Reason:
61
+
+## Browser Validation Status
37
62
+
38
-
+- The current canonical guardrail approves the tool entrypoint path `assets/toolbox/{tool-name}/js/index.js`.
39
-
+- It does not approve an additional tool-local API client file under `assets/toolbox/game-journey/js/`.
40
-
+- Folding the API client into `index.js` would be a larger refactor and could obscure the completion-metrics API boundary.
41
-
+- The API client re-exports completion metrics helpers from `src/api/game-journey-completion-api-client.js`, so it should stay isolated until the shared-client/secondary-file rule is explicit.
63
+
+- Command: `npm run validate:browser-env-agnostic`
64
+
+- Result: FAIL
65
+
+- Findings:
66
+
+ - Product service contract findings in `src/dev-runtime/server/local-api-router.mjs`.
67
+
+ - User-facing implementation wording findings in Messages.
68
+
+- Classification: existing broader browser-env gate findings, not introduced by this target-tool migration stack.
42
69
+
43
-
+Removal plan:
70
+
+## Report and ZIP Artifact Check
44
71
+
45
-
+1. Add or clarify a canonical rule for tool-local secondary modules, or approve a shared API-client location.
46
-
+2. Move the API client only after the guardrail recognizes the destination.
47
-
+3. Update the canonical Game Journey entrypoint import.
48
-
+4. Re-run Game Journey route validation and completion-metrics validation.
49
-
+5. Remove `toolbox/game-journey/game-journey-api-client.js` from approved legacy exceptions after validation passes.
+Ready for Owner review: YES, with documented retained exceptions and validation caveats.
67
86
+
68
-
+## Completion Metrics Note
87
+
+Owner review should note:
69
88
+
70
-
+The targeted validation used the existing test Postgres completion-metrics stub and passed. The local legacy SQLite preservation blocker documented in PR_26172_CHARLIE_006A remains a separate recovery/data-preservation concern, not a reason to move the API client in this PR.
89
+
+- The target entrypoint migrations are complete.
90
+
+- The retained API/worker files require follow-up shared-client or worker-placement governance before removal.
91
+
+- Browser-env validation remains blocked by existing non-Charlie findings.
92
+
+- Assets full upload Playwright validation is blocked by Local API provider persistence behavior, not by canonical entrypoint path loading.
71
93
+
72
94
+## Branch Validation
73
95
+
@@ -78,19 +100,27 @@ index 000000000..d0f945e60
78
100
+
79
101
+## Requirement Checklist
80
102
+
81
-
+- Use PR_033 and PR_034 results: PASS
82
-
+- Move API client if safe: PASS, not safe under current guardrail.
83
-
+- Retain API client and document temporary legacy exception if not safe: PASS
+- Run browser validation: PASS with existing failure documented.
112
+
+- Confirm all reports exist: PASS
88
113
+- Confirm ZIP exists: PASS after artifact creation.
89
114
+
90
115
+## Manual Validation Notes
91
116
+
92
-
+The canonical Game Journey entrypoint is already active. Keeping the API client in the existing legacy path avoids introducing an unapproved secondary JS file pattern and avoids changing completion-metrics behavior.
117
+
+This reaudit confirms the remaining target work is no longer entrypoint migration. It is shared-client and worker-placement cleanup, which should be scoped separately to avoid changing tool behavior under a structure-only migration stack.
93
118
+
94
-
+## Recommendation
119
+
+## Recommended Next PRs
95
120
+
96
-
+Continue to PR_036 final target-tool compliance reaudit. Treat `toolbox/game-journey/game-journey-api-client.js` as a retained exception with a defined removal plan.
121
+
+1. Shared API-client placement governance for reused toolbox API clients.
122
+
+2. Worker placement guardrail for tool-local module workers.
123
+
+3. Controls API client shared placement migration.
124
+
+4. Assets API client shared placement migration with Objects.
125
+
+5. Assets worker migration after worker placement rule exists.
126
+
+6. Game Journey API client migration after secondary module or shared-client placement is approved.
0 commit comments