From f69bbe8dca9387e351ddaf5ecb5429768a3fc2b8 Mon Sep 17 00:00:00 2001 From: Jinwoo Hong <73622457+Jinwoo-H@users.noreply.github.com> Date: Sat, 10 Oct 2026 22:15:50 -0400 Subject: [PATCH] List the cold-relaunch tab-order swap as known on main (#27353) * List the cold-relaunch tab-order swap as known on main The cold-daemon-restart oracle scenario intermittently finds the tab rows in swapped order after the relaunch. The relaunch's exits for the killed daemon's terminals retire both tab rows, the respawns re-add them in the order they bind, and the window's next save keeps main's row order. Co-Authored-By: Claude * Wrap the known-on-main comment to the line limit Co-Authored-By: Claude --------- Co-authored-by: Claude --- tests/e2e/AGENTS.md | 2 +- tests/e2e/workspace-layout-oracle-known-on-main.ts | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/e2e/AGENTS.md b/tests/e2e/AGENTS.md index 88908539f2a..7865a3f9e25 100644 --- a/tests/e2e/AGENTS.md +++ b/tests/e2e/AGENTS.md @@ -58,4 +58,4 @@ Terminal-topology refactor PRs must be inert or fix a named bug. `terminal-layou `workspace-layout-oracle-latency.spec.ts` records command-to-drawn-update p50/p95 for split, close pane, new tab, rename, tab reorder and close tab, idle and while another tab floods output. It never fails on a number. -A step waits up to `ORCA_LAYOUT_ORACLE_SETTLE_MS` (12 s) for every view to agree before recording. Findings main still has are listed in `workspace-layout-oracle-known-on-main.ts` with their bug; anything else fails. `ORCA_LAYOUT_ORACLE_RECORD=1` records without failing, `ORCA_LAYOUT_ORACLE_REPEAT=` repeats each scenario, and each run writes a JSON report (with the evidence each side held) to `ORCA_LAYOUT_ORACLE_REPORT_DIR`. `node config/scripts/check-workspace-layout-rules.mjs ` runs the rules over any profile, including a running dev app's. +A step waits up to `ORCA_LAYOUT_ORACLE_SETTLE_MS` (12 s) for every view to agree before recording. Findings main still has are listed in `workspace-layout-oracle-known-on-main.ts` with their bug; anything else fails. A new entry must cite, in its PR, a run on `main` that reproduced the finding; for an intermittent finding, rerun until one does. `ORCA_LAYOUT_ORACLE_RECORD=1` records without failing, `ORCA_LAYOUT_ORACLE_REPEAT=` repeats each scenario, and each run writes a JSON report (with the evidence each side held) to `ORCA_LAYOUT_ORACLE_REPORT_DIR`. `node config/scripts/check-workspace-layout-rules.mjs ` runs the rules over any profile, including a running dev app's. diff --git a/tests/e2e/workspace-layout-oracle-known-on-main.ts b/tests/e2e/workspace-layout-oracle-known-on-main.ts index 7bfd83a2251..25cfb71fc63 100644 --- a/tests/e2e/workspace-layout-oracle-known-on-main.ts +++ b/tests/e2e/workspace-layout-oracle-known-on-main.ts @@ -58,6 +58,16 @@ export const LAYOUT_ORACLE_KNOWN_ON_MAIN: readonly KnownOnMain[] = [ rule: 'tab_order_disagrees', cause: 'one tab order' }, + // Intermittent (about 1 in 30 on main): the relaunch's exits for the killed daemon's terminals + // retire both tab rows, the respawns re-add them in whichever order they bind, and the window's + // next save keeps main's row order. Fixed in PR 6, where rows follow the group's tab order. + { + scenario: 'cold-daemon-restart', + check: 'expected', + step: 'after cold relaunch', + detail: /: panes per tab \[1,2\], expected \[2,1\]$/, + cause: 'one tab order' + }, // After a cold relaunch the paired-client tab list stays empty while the window shows the tabs. { scenario: 'cold-daemon-restart',