Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ Rules:

## Current Version/Date

- Project Instructions Version: 2026.06.28.010
- Project Instructions Version: 2026.06.28.011
- Date: 2026-06-28
- Owner: OWNER

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Project Instructions Version

Current Project Instructions Version: 2026.06.28.010
Current Project Instructions Version: 2026.06.28.011

Last Updated: 2026-06-28

Expand All @@ -18,6 +18,7 @@ Last Updated: 2026-06-28
- Moved browser-served application files under `www/` and made local static serving prefer `www/` by default.
- Moved server/API application runtime under `api/`; browser API clients remain outside `api/`.
- Moved developer-only local runtime/bootstrap entrypoints under `dev/local-runtime/` and preserved the public npm command surface.
- Finalized moved test and validation path assumptions for the `www/`, `api/`, and `dev/local-runtime/` layout.
- Codex must read this version file and the latest repository copy of `PROJECT_INSTRUCTIONS.md` before performing work.
- Codex must discard previously remembered Project Instructions and treat the repository copy as authoritative.
- Codex must validate canonical report and ZIP paths, branching model, and legacy path avoidance before work proceeds.
12 changes: 6 additions & 6 deletions dev/build/ProjectInstructions/PROJECT_STATE.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Project State

```yaml
project_state_version: "2026.06.28.010"
project_state_version: "2026.06.28.011"
last_updated: "2026-06-28"
current_main_commit: "40de767476d70cadfd1292c916844c2f31b6f185"
repository_status:
Expand All @@ -10,18 +10,18 @@ repository_status:
runtime_database: "Postgres"
creator_metadata: "API to Postgres"
creator_assets: "API to R2"
project_instructions_version: "2026.06.28.010"
repository_structure_version: "2026.06.28.010"
canonical_layout_version: "2026.06.28.010"
project_instructions_version: "2026.06.28.011"
repository_structure_version: "2026.06.28.011"
canonical_layout_version: "2026.06.28.011"
active_teams:
- "Owner"
- "Alfa"
- "Bravo"
- "Charlie"
- "Delta"
- "Golf"
latest_owner_pr: "PR_26180_OWNER_010-move-dev-local-runtime"
latest_structure_pr: "PR_26180_OWNER_010-move-dev-local-runtime"
latest_owner_pr: "PR_26180_OWNER_011-move-tests-and-validation"
latest_structure_pr: "PR_26180_OWNER_011-move-tests-and-validation"
valid_top_level_folders:
- "api/"
- "deploy/"
Expand Down
6 changes: 3 additions & 3 deletions dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@ The backlog is the authoritative source for determining the next logical PRs.
- Team: Owner
- Product Area: Repository Architecture Simplification
- Status: Active
- Percent Complete: 50%
- Active PR: PR_26180_OWNER_010-move-dev-local-runtime
- Next Milestone: Move tests and validation path references for the new layout
- Percent Complete: 60%
- Active PR: PR_26180_OWNER_011-move-tests-and-validation
- Next Milestone: Update CI, package scripts, validation scripts, and developer utilities for the new layout
- Source / Reference: `dev/build/ProjectInstructions/repository/repository_layout_architecture_plan.md`; `dev/build/ProjectInstructions/repository/www_migration_map.md`

## Game Journey MVP
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ No browser, API, server, test, script, or runtime files move in the scaffold or

`PR_26180_OWNER_010-move-dev-local-runtime` moves developer-only local runtime/bootstrap entrypoints under `dev/local-runtime/` while preserving `npm run dev:bootstrap`, `npm run dev:api`, `npm run dev:web`, and `npm run dev:local-api`.

`PR_26180_OWNER_011-move-tests-and-validation` finalizes moved test and validation path assumptions for the `www/`, `api/`, and `dev/local-runtime/` layout while keeping product behavior unchanged.

## Proposed Future Layout

```text
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# PR_26180_OWNER_011-move-tests-and-validation Branch Validation

Generated: 2026-06-28T22:57:50.322Z

| Check | Result | Evidence |
| --- | --- | --- |
| Current branch | PASS | PR_26180_OWNER_011-move-tests-and-validation |
| Stacked base | PASS | PR_26180_OWNER_010-move-dev-local-runtime is an ancestor of HEAD |
| PR model | PASS | Owner stacked PR under Repository Architecture Simplification workstream |
| Scope | PASS | dev tests, validation script, and governance/status docs only |
| Product/runtime files | PASS | No www/, api/, or product runtime behavior files changed |
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# PR_26180_OWNER_011-move-tests-and-validation Manual Validation Notes

Generated: 2026-06-28T22:57:50.322Z

- Confirmed branch is PR_26180_OWNER_011-move-tests-and-validation.
- Confirmed PR011 is based on PR_26180_OWNER_010-move-dev-local-runtime.
- Confirmed no www/ or api/ files were moved or edited.
- Confirmed local static route smoke preserves public URLs while resolving files from the current web root.
- Confirmed Project Instructions version/status metadata now records 2026.06.28.011 and PR011 as the active structure PR.
- No manual browser session was required because route smoke was covered by targeted Playwright.
34 changes: 34 additions & 0 deletions dev/reports/PR_26180_OWNER_011-move-tests-and-validation_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# PR_26180_OWNER_011-move-tests-and-validation Report

Generated: 2026-06-28T22:57:50.322Z

## Purpose

Finalize tests and validation paths for the www/api/dev layout without moving www or api files and without changing product behavior.

## Summary

- Updated moved dev test path assumptions from old root tests layout to dev/tests depth.
- Updated test-generated output/local-db paths from root tmp/ to dev/workspace/tmp/.
- Updated browser-served test fixture paths from root toolbox/assets/games to www/toolbox, www/assets, and www/games.
- Updated canonical structure validation to reject tracked legacy root tests/scripts/tmp/docs_build paths and old dev/local-runtime entrypoints.
- Bumped Project Instructions/status metadata to 2026.06.28.011 for PR011.

## Scope Confirmation

- Runtime/product behavior changed: No.
- www or api files moved: No.
- Product UI files changed: No.
- API/server behavior changed: No.
- Test and validation path assumptions updated: Yes.

## Stack Dependency

- Previous PR dependency: PR_26180_OWNER_010-move-dev-local-runtime.
- Current PR: PR_26180_OWNER_011-move-tests-and-validation.
- Next PR dependency: PR_26180_OWNER_012-update-ci-and-scripts.
- Merge order: PR010, then PR011, then PR012.

## Notes

The formal validation lane is the moved-path dev-runtime Node test set plus the static web-root Playwright route smoke. Direct legacy V2 runtime scripts still reference retired workspace-v2/asset-manager-v2 fixtures; this PR corrected their repository-root and artifact paths only and does not recreate retired tool fixtures.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# PR_26180_OWNER_011-move-tests-and-validation Requirement Checklist

Generated: 2026-06-28T22:57:50.322Z

| Requirement | Result | Notes |
| --- | --- | --- |
| Ensure tests live under dev/tests/ | PASS | No tracked root tests/ path remains; moved tests now resolve repo root from dev/tests. |
| Update validation scripts for www/api/dev/local-runtime | PASS | Canonical validation now rejects legacy root paths and old dev/local-runtime entrypoints. |
| Fix remaining path assumptions | PASS | Updated old root tmp/, toolbox/, assets/, games/, and two-level repoRoot assumptions in tests. |
| Do not move www or api files | PASS | No www/api file moves were made. |
| Do not change product behavior | PASS | Changes are limited to tests, validation guardrails, and governance/status docs. |
| Required reports | PASS | Reports generated under dev/reports/. |
| Required ZIP | PASS | Repo-structured ZIP generated under dev/workspace/zips/. |
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# PR_26180_OWNER_011-move-tests-and-validation Validation Report

Generated: 2026-06-28T22:57:50.322Z

| Command | Result |
| --- | --- |
| git diff --check | PASS |
| npm run validate:canonical-structure | PASS |
| node --check dev/scripts/validate-canonical-repository-structure.mjs | PASS |
| node --test dev/tests/dev-runtime/ApiMenuPathCleanup.test.mjs dev/tests/dev-runtime/AdminNotesBoundary.test.mjs dev/tests/dev-runtime/TeamAwareBootstrap.test.mjs dev/tests/dev-runtime/StaticWebRootCompatibility.test.mjs dev/tests/dev-runtime/LocalApiStartupLogging.test.mjs | PASS, 32 tests |
| npx playwright test --config=dev/config/playwright.config.cjs --project=playwright dev/tests/playwright/tools/StaticWebRootCompatibility.spec.mjs | PASS, 2 tests |

## Non-Blocking Legacy Observation

Exploratory direct runtime scripts that target retired V2 workspace fixtures remain out of the required validation lane. Their repository-root and artifact paths were corrected, but this PR does not restore retired workspace-v2 or asset-manager-v2 fixtures.
107 changes: 98 additions & 9 deletions dev/reports/codex_changed_files.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,101 @@
dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md
dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md
dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md
dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS_VERSION.md
dev/build/ProjectInstructions/PROJECT_STATE.md
dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md
dev/build/ProjectInstructions/repository/canonical_repository_structure.md
dev/build/ProjectInstructions/repository/repository_layout_architecture_plan.md
dev/build/ProjectInstructions/repository/www_migration_map.md
dev/scripts/validate-browser-env-agnostic.mjs
dev/tests/dev-runtime/LocalApiStartupLogging.test.mjs
dev/tests/dev-runtime/StaticWebRootCompatibility.test.mjs
dev/tests/dev-runtime/TeamAwareBootstrap.test.mjs
package.json
dev/reports/codex_changed_files.txt
dev/reports/codex_review.diff
dev/reports/PR_26180_OWNER_011-move-tests-and-validation_branch-validation.md
dev/reports/PR_26180_OWNER_011-move-tests-and-validation_manual-validation-notes.md
dev/reports/PR_26180_OWNER_011-move-tests-and-validation_report.md
dev/reports/PR_26180_OWNER_011-move-tests-and-validation_requirement-checklist.md
dev/reports/PR_26180_OWNER_011-move-tests-and-validation_validation-report.md
dev/scripts/validate-canonical-repository-structure.mjs
dev/tests/dev-runtime/AdminNotesBoundary.test.mjs
dev/tests/dev-runtime/ApiMenuPathCleanup.test.mjs
dev/tests/dev-runtime/DbSeedIntegrity.test.mjs
dev/tests/final/ToolchainEngineIntegrationValidation.test.mjs
dev/tests/games/asteroidsManifestObjectGeometry.mjs
dev/tests/playwright/tools/AdminDbViewer.spec.mjs
dev/tests/playwright/tools/GameJourneyTool.spec.mjs
dev/tests/playwright/tools/LoginSessionMode.spec.mjs
dev/tests/playwright/tools/ThemeV2SvgIconRegistry.spec.mjs
dev/tests/runtime/GameManifestPayloadExpectations.test.mjs
dev/tests/runtime/GamesIndexWorkspaceManagerOpen.test.mjs
dev/tests/runtime/LaunchSmokeAllEntries.test.mjs
dev/tests/runtime/Phase18OverlayCssUiNormalizationSlice.test.mjs
dev/tests/runtime/V2AssetBrowserStrictJson.test.mjs
dev/tests/runtime/V2AssetManagerAddRemoveHardening.test.mjs
dev/tests/runtime/V2AssetManagerWorkspacePersistence.test.mjs
dev/tests/runtime/V2BackNav.test.mjs
dev/tests/runtime/V2BlockFakeSessionSave.test.mjs
dev/tests/runtime/V2ClearStaleMergePreview.test.mjs
dev/tests/runtime/V2ConfirmPreviewEnableState.test.mjs
dev/tests/runtime/V2CrossToolFlow.test.mjs
dev/tests/runtime/V2CrossToolMergeBlock.test.mjs
dev/tests/runtime/V2DeterministicStateTransitions.test.mjs
dev/tests/runtime/V2Diagnostics.test.mjs
dev/tests/runtime/V2DiffMergeButtonState.test.mjs
dev/tests/runtime/V2DiffViewerMessaging.test.mjs
dev/tests/runtime/V2DiffViewerSummaryCounts.test.mjs
dev/tests/runtime/V2EnableStateFeedback.test.mjs
dev/tests/runtime/V2EntryFlow.test.mjs
dev/tests/runtime/V2ErrorLogging.test.mjs
dev/tests/runtime/V2ErrorViewer.test.mjs
dev/tests/runtime/V2ImportExport.test.mjs
dev/tests/runtime/V2MergeApplyGuardAudit.test.mjs
dev/tests/runtime/V2MergeApplySessionGateFix.test.mjs
dev/tests/runtime/V2MergeConflictSummary.test.mjs
dev/tests/runtime/V2MergedRecentSessionRegistration.test.mjs
dev/tests/runtime/V2MergeOutputPersistence.test.mjs
dev/tests/runtime/V2MergePreviewOverlayFix.test.mjs
dev/tests/runtime/V2MergePreviewSelectionFix.test.mjs
dev/tests/runtime/V2MergeResultSummary.test.mjs
dev/tests/runtime/V2MergeSelectorPopulation.test.mjs
dev/tests/runtime/V2MergeStateSingleSourceOfTruth.test.mjs
dev/tests/runtime/V2MergeStateStatusReset.test.mjs
dev/tests/runtime/V2Performance.test.mjs
dev/tests/runtime/V2ProducerRender.test.mjs
dev/tests/runtime/V2RecentSessionDelete.test.mjs
dev/tests/runtime/V2RecentSessionSelectorBinding.test.mjs
dev/tests/runtime/V2ResetState.test.mjs
dev/tests/runtime/V2SavedSessionDeleteFeedback.test.mjs
dev/tests/runtime/V2SavedSessionRowActions.test.mjs
dev/tests/runtime/V2SaveLibraryFromRecentSession.test.mjs
dev/tests/runtime/V2SelectionFeedbackEnableState.test.mjs
dev/tests/runtime/V2SelectionPersistence.test.mjs
dev/tests/runtime/V2SelectionSyncRowActions.test.mjs
dev/tests/runtime/V2SessionDiff.test.mjs
dev/tests/runtime/V2SessionHistory.test.mjs
dev/tests/runtime/V2SessionIdUsability.test.mjs
dev/tests/runtime/V2SessionInventoryDiffMerge.test.mjs
dev/tests/runtime/V2SessionLibrary.test.mjs
dev/tests/runtime/V2SessionLibraryActionCleanup.test.mjs
dev/tests/runtime/V2SessionLibraryActionLabel.test.mjs
dev/tests/runtime/V2SessionLibraryActions.test.mjs
dev/tests/runtime/V2SessionLibraryCardOverwrite.test.mjs
dev/tests/runtime/V2SessionLibrarySaveGuard.test.mjs
dev/tests/runtime/V2SessionMerge.test.mjs
dev/tests/runtime/V2SessionMergePreview.test.mjs
dev/tests/runtime/V2SessionMigration.test.mjs
dev/tests/runtime/V2SessionPersistence.test.mjs
dev/tests/runtime/V2SessionProducer.test.mjs
dev/tests/runtime/V2SessionSize.test.mjs
dev/tests/runtime/V2SessionSource.test.mjs
dev/tests/runtime/V2SessionStateModelConsolidation.test.mjs
dev/tests/runtime/V2SessionStorage.test.mjs
dev/tests/runtime/V2SessionToolsCloseoutBundle.test.mjs
dev/tests/runtime/V2SessionUxStabilization.test.mjs
dev/tests/runtime/V2SessionValidation.test.mjs
dev/tests/runtime/V2SessionVersion.test.mjs
dev/tests/runtime/V2ShareLinks.test.mjs
dev/tests/runtime/V2Snapshot.test.mjs
dev/tests/runtime/V2ToolActionFlow.test.mjs
dev/tests/runtime/V2ToolLaunch.test.mjs
dev/tests/runtime/V2UndoButtonRender.test.mjs
dev/tests/runtime/V2UndoEnableStateActualAvailability.test.mjs
dev/tests/runtime/V2UndoEnableStateRefresh.test.mjs
dev/tests/runtime/V2UndoLastMerge.test.mjs
dev/tests/runtime/V2UrlState.test.mjs
dev/tests/runtime/V2WorkspaceAssetManagerLaunch.test.mjs
dev/tests/runtime/V2WorkspaceDefaultToolInitialization.test.mjs
Loading
Loading