From 654cf47afd22ba0a68b6222decd9ed4e5bef179f Mon Sep 17 00:00:00 2001 From: Alfa Team Date: Wed, 24 Jun 2026 18:16:53 -0400 Subject: [PATCH] PR_26175_ALFA_051 align idea board game hub row expectation --- ...row-expectation_manual-validation-notes.md | 5 + ...a-board-game-hub-row-expectation_report.md | 14 + ...-row-expectation_requirements-checklist.md | 8 + ...ame-hub-row-expectation_validation-lane.md | 8 + .../dev/reports/codex_changed_files.txt | 10 +- docs_build/dev/reports/codex_review.diff | 307 +++--------------- .../tools/IdeaBoardTableNotes.spec.mjs | 16 +- 7 files changed, 90 insertions(+), 278 deletions(-) create mode 100644 docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_manual-validation-notes.md create mode 100644 docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_report.md create mode 100644 docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_requirements-checklist.md create mode 100644 docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_validation-lane.md diff --git a/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_manual-validation-notes.md b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_manual-validation-notes.md new file mode 100644 index 000000000..19536ae8e --- /dev/null +++ b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_manual-validation-notes.md @@ -0,0 +1,5 @@ +# PR_26175_ALFA_051-idea-board-game-hub-row-expectation Manual Validation Notes + +- Confirmed the stale three-row expectation was limited to the Idea Board cross-flow test path. +- Confirmed the updated test now passes against current Game Hub rendering. +- No manual UI change was required because this PR only updates the test expectation. diff --git a/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_report.md b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_report.md new file mode 100644 index 000000000..b15f69106 --- /dev/null +++ b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_report.md @@ -0,0 +1,14 @@ +# PR_26175_ALFA_051-idea-board-game-hub-row-expectation Report + +## Summary +- Updated the Idea Board cross-flow Game Hub assertions to match the current expanded-row contract. +- The flow now expects the two current child rows: source-idea and readiness-output. +- Removed the stale expectation for a Game Summary child row from this Idea Board test path. + +## Branch Validation +PASS + +## Scope +- Test expectation only. +- No runtime code changes. +- No UI changes. diff --git a/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_requirements-checklist.md b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_requirements-checklist.md new file mode 100644 index 000000000..3995aafea --- /dev/null +++ b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_requirements-checklist.md @@ -0,0 +1,8 @@ +# PR_26175_ALFA_051-idea-board-game-hub-row-expectation Requirements Checklist + +- PASS: Align Idea Board Game Hub expanded-row expectation with current Game Hub behavior. +- PASS: Preserve Source Idea child-table assertions. +- PASS: Preserve Readiness Output child-table assertion. +- PASS: Avoid runtime code changes. +- PASS: Avoid UI changes. +- PASS: Produce repo-structured delta ZIP under tmp/. diff --git a/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_validation-lane.md b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_validation-lane.md new file mode 100644 index 000000000..3168b0251 --- /dev/null +++ b/docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_validation-lane.md @@ -0,0 +1,8 @@ +# PR_26175_ALFA_051-idea-board-game-hub-row-expectation Validation Lane + +## Commands +- PASS: node --check tests/playwright/tools/IdeaBoardTableNotes.spec.mjs +- PASS: npx playwright test tests/playwright/tools/IdeaBoardTableNotes.spec.mjs --workers=1 (4 passed) + +## Branch Validation +PASS diff --git a/docs_build/dev/reports/codex_changed_files.txt b/docs_build/dev/reports/codex_changed_files.txt index 4ab486733..555bee3b8 100644 --- a/docs_build/dev/reports/codex_changed_files.txt +++ b/docs_build/dev/reports/codex_changed_files.txt @@ -1,3 +1,7 @@ -docs_build/dev/reports/PR_26175_OWNER_056-final-open-pr-resolution-plan.md / added -docs_build/dev/reports/codex_changed_files.txt / updated -docs_build/dev/reports/codex_review.diff / updated +tests/playwright/tools/IdeaBoardTableNotes.spec.mjs +docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_manual-validation-notes.md +docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_report.md +docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_requirements-checklist.md +docs_build/dev/reports/PR_26175_ALFA_051-idea-board-game-hub-row-expectation_validation-lane.md +docs_build/dev/reports/codex_changed_files.txt +docs_build/dev/reports/codex_review.diff diff --git a/docs_build/dev/reports/codex_review.diff b/docs_build/dev/reports/codex_review.diff index 6f8e9ca7f..c1231b0fb 100644 --- a/docs_build/dev/reports/codex_review.diff +++ b/docs_build/dev/reports/codex_review.diff @@ -1,266 +1,41 @@ -diff --git a/docs_build/dev/reports/PR_26175_OWNER_056-final-open-pr-resolution-plan.md b/docs_build/dev/reports/PR_26175_OWNER_056-final-open-pr-resolution-plan.md -new file mode 100644 -index 000000000..7c265727f ---- /dev/null -+++ b/docs_build/dev/reports/PR_26175_OWNER_056-final-open-pr-resolution-plan.md -@@ -0,0 +1,231 @@ -+# PR_26175_OWNER_056 - Final Open PR Resolution Plan -+ -+## Executive Summary -+ -+PASS - Audit/report only. No PRs were merged or closed, no branches were deleted, and no runtime code was modified. -+ -+GitHub was used as authority for the remaining open PRs. The current open set is small enough to resolve by explicit lane: -+ -+1. Charlie stack should merge to `main` in order: #151, then #152, then #153. PR #153 now carries the #155 work because #155 was merged into #153's branch. -+2. Bravo #157 is independent because it targets `main`, but it is currently `CONFLICTING` and has no status checks after a force update. It needs conflict resolution and validation before merge. -+3. Alfa #135, Alfa/Alpha #26, OWNER #85, and Gamma historical #50 are still valuable as evidence/planning or older runtime/governance context, but should not merge without deeper review. -+ -+## Branch Validation -+ -+| Gate | Status | Evidence | -+| --- | --- | --- | -+| Current branch before work | PASS | `main` | -+| Worktree before work | PASS | Clean | -+| Local/origin sync before work | PASS | `0 0` | -+| Pull latest main before branch | PASS | `git pull --ff-only` reported `main` already up to date. | -+| Work branch | PASS | `PR_26175_OWNER_056-final-open-pr-resolution-plan` | -+ -+## Recommended Actions -+ -+| Order | PR | Team | Recommendation | Reason | -+| ---: | --- | --- | --- | --- | -+| 1 | #151 | Charlie | merge | Base is `main`; first stack layer for System Health environment identity. GitHub mergeability is `UNKNOWN`, but platform validation passed and non-destructive merge-tree found no conflict hints. | -+| 2 | #152 | Charlie | merge | Base is #151 branch; second stack layer for current database health. GitHub reports `MERGEABLE`; platform validation passed. | -+| 3 | #153 | Charlie | merge | Base is #152 branch; final stack layer. It includes current R2 health plus the #155 history/closeout and admin submenu work now merged into #153's branch. GitHub reports `MERGEABLE`; platform validation passed. | -+| 4 | #157 | Bravo | needs deeper review | Independent `main`-targeted PR, but GitHub reports `CONFLICTING`, no checks are currently listed after a forced branch update, and generated report conflicts must be resolved before merge. | -+| 5 | #135 | Alfa | needs deeper review | Report/BUILD-only progress-context audit remains useful planning evidence for status-bar work, but is not a runtime implementation PR. | -+| 6 | #26 | Alfa/Alpha | needs deeper review | Older Game Workspace table rebuild touches runtime files outside the recently merged Alfa Game Hub/Game Journey/Idea Board consolidation. | -+| 7 | #85 | OWNER | needs deeper review | Protected governance addendum PR touches Project Instructions/root governance paths; review for still-current content before merge or close. | -+| 8 | #50 | Gamma historical | hold | Final SQLite clean-status report remains historical evidence while PostgreSQL-only direction is active; keep until OWNER decides merge-as-history or archive/close. | -+ -+## Charlie Stack Analysis -+ -+GitHub chain: -+ -+```text -+main -+ -> #151 pr/26175-CHARLIE-007-system-health-environment-identity -+ -> #152 pr/26175-CHARLIE-008-system-health-current-database-health -+ -> #153 pr/26175-CHARLIE-009-system-health-current-r2-health -+ includes merged #155 pr/26175-CHARLIE-010-system-health-history-and-closeout -+``` -+ -+Conclusion: #151 -> #152 -> #153 is the required order to carry all Charlie health work to `main`. Do not try to merge #153 directly to `main`; the stack should collapse through its base sequence. After #153 lands, the Charlie System Health environment identity, database health, R2 health, history/closeout, and admin submenu alphabetical work should all be on `main`. -+ -+## Per-PR Inventory -+ -+### Bravo -+ -+| PR | Title | Branch | Base | Draft | Mergeable | Dependency Chain | Recommendation | -+| --- | --- | --- | --- | --- | --- | --- | --- | -+| #157 | PR_26175_BRAVO_011-idea-board-guest-save-auth-redirect | `pr/26175-BRAVO-011-idea-board-guest-save-auth-redirect` | `main` | No | CONFLICTING | Independent; no listed dependency PR. | needs deeper review | -+ -+Changed files: -+ -+- `assets/toolbox/idea-board/js/index.js` -+- `docs_build/dev/reports/PR_26175_BRAVO_011-idea-board-guest-save-auth-redirect_branch-validation.md` -+- `docs_build/dev/reports/PR_26175_BRAVO_011-idea-board-guest-save-auth-redirect_instruction-compliance.md` -+- `docs_build/dev/reports/PR_26175_BRAVO_011-idea-board-guest-save-auth-redirect_manual-validation-notes.md` -+- `docs_build/dev/reports/PR_26175_BRAVO_011-idea-board-guest-save-auth-redirect_report.md` -+- `docs_build/dev/reports/PR_26175_BRAVO_011-idea-board-guest-save-auth-redirect_requirements-checklist.md` -+- `docs_build/dev/reports/PR_26175_BRAVO_011-idea-board-guest-save-auth-redirect_validation-lane.md` -+- `docs_build/dev/reports/codex_changed_files.txt` -+- `docs_build/dev/reports/codex_review.diff` -+- `docs_build/dev/reports/coverage_changed_js_guardrail.txt` -+- `docs_build/dev/reports/playwright_v8_coverage_report.txt` -+- `tests/playwright/tools/IdeaBoardTableNotes.spec.mjs` -+- `tests/playwright/tools/ToolboxRoutePages.spec.mjs` -+ -+Notes: GitHub reports #157 as conflicting. Non-destructive merge-tree showed `assets/toolbox/idea-board/js/index.js` can merge, while generated report artifacts conflict. The branch was force-updated during fetch and no status checks were listed after refresh, so do not merge until conflicts are resolved and validation is rerun. -+ -+### Charlie -+ -+| PR | Title | Branch | Base | Draft | Mergeable | Dependency Chain | Recommendation | -+| --- | --- | --- | --- | --- | --- | --- | --- | -+| #151 | PR_26175_CHARLIE_007-system-health-environment-identity | `pr/26175-CHARLIE-007-system-health-environment-identity` | `main` | Yes | UNKNOWN | First Charlie stack layer. | merge | -+| #152 | PR_26175_CHARLIE_008-system-health-current-database-health | `pr/26175-CHARLIE-008-system-health-current-database-health` | `pr/26175-CHARLIE-007-system-health-environment-identity` | Yes | MERGEABLE | Second layer after #151. | merge | -+| #153 | PR_26175_CHARLIE_009-system-health-current-r2-health | `pr/26175-CHARLIE-009-system-health-current-r2-health` | `pr/26175-CHARLIE-008-system-health-current-database-health` | Yes | MERGEABLE | Final layer after #151 and #152; includes merged #155. | merge | -+ -+#151 changed files: -+ -+- `admin/system-health.html` -+- `assets/theme-v2/js/admin-system-health.js` -+- `docs_build/dev/reports/PR_26175_CHARLIE_007-system-health-environment-identity.md` -+- `docs_build/dev/reports/coverage_changed_js_guardrail.txt` -+- `docs_build/dev/reports/playwright_v8_coverage_report.txt` -+- `src/dev-runtime/server/local-api-router.mjs` -+- `tests/dev-runtime/AdminHealthOperations.test.mjs` -+- `tests/playwright/tools/AdminHealthOperationsPage.spec.mjs` -+ -+#152 changed files: -+ -+- `admin/system-health.html` -+- `assets/theme-v2/js/admin-system-health.js` -+- `docs_build/dev/reports/PR_26175_CHARLIE_008-system-health-current-database-health.md` -+- `docs_build/dev/reports/coverage_changed_js_guardrail.txt` -+- `docs_build/dev/reports/playwright_v8_coverage_report.txt` -+- `src/dev-runtime/server/local-api-router.mjs` -+- `tests/dev-runtime/AdminHealthOperations.test.mjs` -+- `tests/playwright/tools/AdminHealthOperationsPage.spec.mjs` -+ -+#153 changed files: -+ -+- `admin/system-health.html` -+- `assets/theme-v2/js/admin-system-health.js` -+- `docs_build/dev/reports/PR_26175_CHARLIE_009-system-health-current-r2-health.md` -+- `docs_build/dev/reports/PR_26175_CHARLIE_010-system-health-history-and-closeout.md` -+- `docs_build/dev/reports/PR_26175_CHARLIE_011-admin-submenu-alphabetical-order-branch-validation.md` -+- `docs_build/dev/reports/PR_26175_CHARLIE_011-admin-submenu-alphabetical-order-manual-validation-notes.md` -+- `docs_build/dev/reports/PR_26175_CHARLIE_011-admin-submenu-alphabetical-order-requirement-checklist.md` -+- `docs_build/dev/reports/PR_26175_CHARLIE_011-admin-submenu-alphabetical-order-validation.md` -+- `docs_build/dev/reports/PR_26175_CHARLIE_011-admin-submenu-alphabetical-order.md` -+- `docs_build/dev/reports/codex_changed_files.txt` -+- `docs_build/dev/reports/codex_review.diff` -+- `docs_build/dev/reports/coverage_changed_js_guardrail.txt` -+- `docs_build/dev/reports/playwright_v8_coverage_report.txt` -+- `src/api/admin-owner-navigation.js` -+- `src/dev-runtime/server/local-api-router.mjs` -+- `tests/dev-runtime/AdminHealthOperations.test.mjs` -+- `tests/dev-runtime/ApiMenuPathCleanup.test.mjs` -+- `tests/dev-runtime/ArchitectureCleanupApiNavInvitations.test.mjs` -+- `tests/playwright/tools/AdminHealthOperationsPage.spec.mjs` -+- `tests/playwright/tools/AdminInvitationsNavPage.spec.mjs` -+- `tests/playwright/tools/AdminOwnerNavigationBoundary.spec.mjs` -+ -+### Alfa / Alpha -+ -+| PR | Title | Branch | Base | Draft | Mergeable | Dependency Chain | Recommendation | -+| --- | --- | --- | --- | --- | --- | --- | --- | -+| #135 | PR_26175_ALFA_010-game-journey-progress-context-audit | `codex/pr-26175-alfa-010-game-journey-progress-context-audit` | `main` | Yes | UNKNOWN | Independent report/BUILD planning branch. | needs deeper review | -+| #26 | PR_26171_ALPHA_046 game hub table standard rebuild | `pr/26171-ALPHA-046-game-hub-table-standard-rebuild` | `main` | No | UNKNOWN | Independent older Alpha runtime branch. | needs deeper review | -+ -+#135 changed files: -+ -+- `docs_build/dev/BUILD_PR.md` -+- `docs_build/dev/reports/PR_26175_ALFA_010-game-journey-progress-context-audit_report.md` -+- `docs_build/dev/reports/PR_26175_ALFA_010-game-journey-progress-context-audit_requirements-checklist.md` -+- `docs_build/dev/reports/PR_26175_ALFA_010-game-journey-progress-context-audit_validation-lane.md` -+- `docs_build/dev/reports/codex_changed_files.txt` -+- `docs_build/dev/reports/codex_review.diff` -+ -+#26 changed files: -+ -+- `assets/theme-v2/css/tables.css` -+- `docs_build/dev/reports/codex_changed_files.txt` -+- `docs_build/dev/reports/codex_review.diff` -+- `docs_build/pr/PR_26171_ALPHA_046-game-hub-table-standard-rebuild/APPLY_PR.md` -+- `docs_build/pr/PR_26171_ALPHA_046-game-hub-table-standard-rebuild/BUILD_PR.md` -+- `docs_build/pr/PR_26171_ALPHA_046-game-hub-table-standard-rebuild/PLAN_PR.md` -+- `tests/playwright/tools/GameWorkspaceMockRepository.spec.mjs` -+- `toolbox/game-workspace/game-workspace.js` -+- `toolbox/game-workspace/index.html` -+ -+Notes: #135 is still valuable as planning evidence for active status-bar progress context work, but should not be merged as a substitute for a runtime implementation. #26 predates the consolidated Alfa work and may still contain Game Workspace table behavior; review against current Theme V2/table-first standards before deciding. -+ -+### OWNER -+ -+| PR | Title | Branch | Base | Draft | Mergeable | Dependency Chain | Recommendation | -+| --- | --- | --- | --- | --- | --- | --- | --- | -+| #85 | [codex] Add Project Instructions governance addendums | `codex/canonical-repository-structure-instructions` | `main` | Yes | UNKNOWN | Independent older governance branch. | needs deeper review | -+ -+Changed files: -+ -+- `docs_build/dev/ProjectInstructions/README.txt` -+- `project-instructions/addendums/canonical-repository-structure.md` -+- `project-instructions/addendums/platform-development-standards.md` -+ -+Notes: Still potentially valuable, but protected governance content must be compared against current Project Instructions before merge or closure. Do not merge blindly because current OWNER governance has moved forward since this branch was opened. -+ -+### Gamma Historical -+ -+| PR | Title | Branch | Base | Draft | Mergeable | Dependency Chain | Recommendation | -+| --- | --- | --- | --- | --- | --- | --- | --- | -+| #50 | PR_26171_GAMMA_028-final-sqlite-clean-status-report | `pr/26171-GAMMA-028-final-sqlite-clean-status-report` | `main` | Yes | UNKNOWN | Independent historical evidence branch. | hold | -+ -+Changed files: -+ -+- `docs_build/dev/reports/PR_26171_GAMMA_028-final-sqlite-clean-status-report-instruction-compliance-checklist.md` -+- `docs_build/dev/reports/PR_26171_GAMMA_028-final-sqlite-clean-status-report-manual-validation-notes.md` -+- `docs_build/dev/reports/PR_26171_GAMMA_028-final-sqlite-clean-status-report.md` -+- `docs_build/dev/reports/codex_changed_files.txt` -+- `docs_build/dev/reports/codex_review.diff` -+ -+Notes: #50 remains valuable as final historical evidence for the retired Gamma SQLite lane. Keep held unless OWNER approves merge-as-history or closure. -+ -+## Requirement Checklist -+ -+| Requirement | Status | Notes | -+| --- | --- | --- | -+| Start from `main` | PASS | Verified before branch creation. | -+| Hard stop if branch/worktree/sync invalid | PASS | Branch `main`, clean worktree, local/origin `0 0`. | -+| Read all Project Instructions | PASS | All files under `docs_build/dev/ProjectInstructions/` were read. | -+| Audit Bravo #157 | PASS | Included above. | -+| Audit Charlie #151, #152, #153 | PASS | Included above with merge order. | -+| Audit Alfa #135 and #26 | PASS | Included above. | -+| Audit OWNER #85 | PASS | Included above. | -+| Audit Gamma historical #50 | PASS | Included above. | -+| Determine Charlie merge order after #155 | PASS | #151 -> #152 -> #153, with #153 carrying #155. | -+| Determine whether #157 is independent and mergeable | PASS | Independent, but not currently mergeable due conflicts/no current checks. | -+| Determine whether #135, #26, #85, #50 are superseded or still valuable | PASS | #135/#26/#85 need deeper review; #50 hold. | -+| Do not merge PRs | PASS | No merge performed. | -+| Do not close PRs | PASS | No closure performed. | -+| Do not delete branches | PASS | No branch deletion performed. | -+| Do not modify runtime code | PASS | Report-only branch. | -+| Required reports and ZIP | PASS | `codex_review.diff`, `codex_changed_files.txt`, this report, and repo-structured ZIP are produced. | -+ -+## Validation Lane -+ -+| Command | Status | Result | -+| --- | --- | --- | -+| `git branch --show-current` | PASS | `main` before branch creation. | -+| `git status --short` | PASS | Clean before branch creation. | -+| `git rev-list --left-right --count HEAD...origin/main` | PASS | `0 0` before branch creation. | -+| `git pull --ff-only` | PASS | `main` already up to date; remote Charlie branch updates fetched. | -+| `gh pr view` for requested PRs | PASS | All eight requested PRs fetched successfully. | -+| `git merge-tree` probes | PASS | Non-destructive checks for #157, #151, and #153; no repository merge performed. | -+| `git diff --name-only` | PASS | Diff limited to this report, `codex_changed_files.txt`, and `codex_review.diff`. | -+| `git diff --check` | PASS | No whitespace errors. | -+| ZIP content check | PASS | Repo-structured ZIP contains the three required report files. | -+| Runtime validation | N/A | Report-only PR; no runtime code changed. | -+ -+## Manual Validation Notes -+ -+- GitHub `mergeable=UNKNOWN` is reported as-is and is not treated as merge approval. -+- #157 had a forced remote branch update during fetch; its latest GitHub state is open, not draft, conflicting, and without listed checks. -+- Non-destructive merge-tree output was written under `tmp/` for local scratch evidence and is not committed. -+- Historical Team Gamma names remain unchanged for traceability; Team Gamma remains retired and Team Golf remains the active replacement lane. -diff --git a/docs_build/dev/reports/codex_changed_files.txt b/docs_build/dev/reports/codex_changed_files.txt -index 4229a376f..4ab486733 100644 ---- a/docs_build/dev/reports/codex_changed_files.txt -+++ b/docs_build/dev/reports/codex_changed_files.txt -@@ -1,20 +1,3 @@ --# git status --short --M docs_build/dev/ProjectInstructions/backlog/BACKLOG_MASTER.md -- M docs_build/dev/roadmaps/MASTER_ROADMAP_FEATURES.md --?? docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-branch-validation.md --?? docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-manual-validation-notes.md --?? docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-requirement-checklist.md --?? docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-validation.md --?? docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout.md -- --# git ls-files --others --exclude-standard --docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-branch-validation.md --docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-manual-validation-notes.md --docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-requirement-checklist.md --docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout-validation.md --docs_build/dev/reports/PR_26175_CHARLIE_025-system-health-backlog-closeout.md -- --# git diff --stat --.../ProjectInstructions/backlog/BACKLOG_MASTER.md | 26 ++++++++++++++++- -- docs_build/dev/roadmaps/MASTER_ROADMAP_FEATURES.md | 34 +++++++++++++++++++++- -- 2 files changed, 58 insertions(+), 2 deletions(-) -\ No newline at end of file -+docs_build/dev/reports/PR_26175_OWNER_056-final-open-pr-resolution-plan.md / added -+docs_build/dev/reports/codex_changed_files.txt / updated -+docs_build/dev/reports/codex_review.diff / updated +diff --git a/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs b/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs +index 949c4254e..6d626f03b 100644 +--- a/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs ++++ b/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs +@@ -416,12 +416,10 @@ test("Idea Board uses accordion table ideas and notes", async ({ page }) => { + await expect(activeGameToggle).toHaveText("Lantern Reef"); + await activeGameToggle.click(); + let expandedRows = page.locator("[data-game-expanded-row]"); +- await expect(expandedRows).toHaveCount(3); +- await expect(expandedRows.nth(0)).toHaveAttribute("data-game-child-row", "summary"); +- await expect(expandedRows.nth(1)).toHaveAttribute("data-game-child-row", "source-idea"); +- await expect(expandedRows.nth(2)).toHaveAttribute("data-game-child-row", "readiness-output"); +- await expect(expandedRows.nth(0).locator("[data-game-child-table='summary'] caption")).toHaveText("Game Summary"); +- let sourceIdeaChildTable = expandedRows.nth(1).locator("[data-game-child-table='source-idea']"); ++ await expect(expandedRows).toHaveCount(2); ++ await expect(expandedRows.nth(0)).toHaveAttribute("data-game-child-row", "source-idea"); ++ await expect(expandedRows.nth(1)).toHaveAttribute("data-game-child-row", "readiness-output"); ++ let sourceIdeaChildTable = expandedRows.nth(0).locator("[data-game-child-table='source-idea']"); + await expect(sourceIdeaChildTable.locator("caption")).toHaveText("Source Idea"); + await expect(sourceIdeaChildTable.locator("thead th")).toHaveText(["Context", "Details"]); + await expect(sourceIdeaChildTable.locator("tbody tr")).toHaveText([ +@@ -430,7 +428,7 @@ test("Idea Board uses accordion table ideas and notes", async ({ page }) => { + "Note 1Use dusk tide changes as the first Game Hub planning note.", + ]); + await expect(sourceIdeaChildTable.locator(":is(input, textarea, select, button)")).toHaveCount(0); +- await expect(expandedRows.nth(2).locator("[data-game-child-table='readiness-output'] caption")).toHaveText("Readiness Output"); ++ await expect(expandedRows.nth(1).locator("[data-game-child-table='readiness-output'] caption")).toHaveText("Readiness Output"); + await page.reload({ waitUntil: "networkidle" }); + await expect(page.locator("[data-active-game-name]")).toHaveCount(0); + await expect(page.locator("[data-game-list]")).toContainText("Lantern Reef"); +@@ -439,8 +437,8 @@ test("Idea Board uses accordion table ideas and notes", async ({ page }) => { + await expect(page.locator("[data-game-hub-foundation]")).toHaveCount(0); + await activeGameToggle.click(); + expandedRows = page.locator("[data-game-expanded-row]"); +- await expect(expandedRows).toHaveCount(3); +- sourceIdeaChildTable = expandedRows.nth(1).locator("[data-game-child-table='source-idea']"); ++ await expect(expandedRows).toHaveCount(2); ++ sourceIdeaChildTable = expandedRows.nth(0).locator("[data-game-child-table='source-idea']"); + await expect(sourceIdeaChildTable.locator("tbody tr")).toHaveText([ + "IdeaLantern Reef", + "PitchGuide light through a reef that rearranges at dusk.", diff --git a/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs b/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs index 949c4254e..6d626f03b 100644 --- a/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs +++ b/tests/playwright/tools/IdeaBoardTableNotes.spec.mjs @@ -416,12 +416,10 @@ test("Idea Board uses accordion table ideas and notes", async ({ page }) => { await expect(activeGameToggle).toHaveText("Lantern Reef"); await activeGameToggle.click(); let expandedRows = page.locator("[data-game-expanded-row]"); - await expect(expandedRows).toHaveCount(3); - await expect(expandedRows.nth(0)).toHaveAttribute("data-game-child-row", "summary"); - await expect(expandedRows.nth(1)).toHaveAttribute("data-game-child-row", "source-idea"); - await expect(expandedRows.nth(2)).toHaveAttribute("data-game-child-row", "readiness-output"); - await expect(expandedRows.nth(0).locator("[data-game-child-table='summary'] caption")).toHaveText("Game Summary"); - let sourceIdeaChildTable = expandedRows.nth(1).locator("[data-game-child-table='source-idea']"); + await expect(expandedRows).toHaveCount(2); + await expect(expandedRows.nth(0)).toHaveAttribute("data-game-child-row", "source-idea"); + await expect(expandedRows.nth(1)).toHaveAttribute("data-game-child-row", "readiness-output"); + let sourceIdeaChildTable = expandedRows.nth(0).locator("[data-game-child-table='source-idea']"); await expect(sourceIdeaChildTable.locator("caption")).toHaveText("Source Idea"); await expect(sourceIdeaChildTable.locator("thead th")).toHaveText(["Context", "Details"]); await expect(sourceIdeaChildTable.locator("tbody tr")).toHaveText([ @@ -430,7 +428,7 @@ test("Idea Board uses accordion table ideas and notes", async ({ page }) => { "Note 1Use dusk tide changes as the first Game Hub planning note.", ]); await expect(sourceIdeaChildTable.locator(":is(input, textarea, select, button)")).toHaveCount(0); - await expect(expandedRows.nth(2).locator("[data-game-child-table='readiness-output'] caption")).toHaveText("Readiness Output"); + await expect(expandedRows.nth(1).locator("[data-game-child-table='readiness-output'] caption")).toHaveText("Readiness Output"); await page.reload({ waitUntil: "networkidle" }); await expect(page.locator("[data-active-game-name]")).toHaveCount(0); await expect(page.locator("[data-game-list]")).toContainText("Lantern Reef"); @@ -439,8 +437,8 @@ test("Idea Board uses accordion table ideas and notes", async ({ page }) => { await expect(page.locator("[data-game-hub-foundation]")).toHaveCount(0); await activeGameToggle.click(); expandedRows = page.locator("[data-game-expanded-row]"); - await expect(expandedRows).toHaveCount(3); - sourceIdeaChildTable = expandedRows.nth(1).locator("[data-game-child-table='source-idea']"); + await expect(expandedRows).toHaveCount(2); + sourceIdeaChildTable = expandedRows.nth(0).locator("[data-game-child-table='source-idea']"); await expect(sourceIdeaChildTable.locator("tbody tr")).toHaveText([ "IdeaLantern Reef", "PitchGuide light through a reef that rearranges at dusk.",