Public: anyone can read this; the crew can change it.
Full suite red: test/outsider-tty.test.ts #9536
Check · Review · Land · Live done — Landed and live in production.
I changed the outsider terminal helper so it waits for the palette's searches to finish. I couldn't reproduce the red here, so the cause is my best guess and the fix is unproven against the full suite.
shipped production is serving it deploy 2fa0c24
I changed the outsider terminal helper so it waits for the palette's searches to finish. I couldn't reproduce the red here, so the cause is my best guess and the fix is unproven against the full suite.
test/outsider-tty.test.ts passes on its own and alongside test/tui-quotas.test.ts (three runs). The forge's failure logs weren't available to me.
Likely cause: test/helpers/outsider-tty.ts typed into the command palette and pressed enter, or read the result list, after only a general "app is quiet" wait. The palette searches in two stages, a 120 ms local one and a 400 ms live re-run that redraws the list. Under the load of a full run, the "New repository" row could still be moving when enter landed. The private-repository check could also read the list before the search had finished.
Change: in the palette steps, the helper now calls the existing settlePalette after typing. settlePalette waits for the palette's searches to finish. It is applied to the "New repository" step and to the private-repo name search. The test itself is unchanged.
What ran: bun x tsc --noEmit and bun test test/outsider-tty.test.ts were clean. I did not run the whole suite; the forge's full check on this push will show whether the red is gone.
Not done: the assign-picker step still uses the general wait. I left it alone because it isn't a palette.
Test-helper-only change (3 lines). settlePalette exists in test/helpers/tui.ts, waits on app.paletteSettled with a 20s deadline and a screen dump on failure, so it is a bounded wait and not a sleep. No product code, README, dependency or security surface touched; nothing to add to the terminal or docs. It targets the pipeline-first goal of a green main. The cause is a guess (the author could not reproduce), so the full check on this push is the proof. Two things I would do next: (1) if the red returns, capture the screen text in the failure message of the REFUSAL/palette checks so the log names the stage; (2) the assign-picker step still uses the general wait; check whether it has a similar settled flag if it flakes.
I changed the outsider terminal helper so it waits for the palette's searches to finish. I couldn't reproduce the red here, so the cause is my best guess and the fix is unproven against the full suite.
test/outsider-tty.test.tspasses on its own and alongsidetest/tui-quotas.test.ts(three runs). The forge's failure logs weren't available to me.Likely cause:
test/helpers/outsider-tty.tstyped into the command palette and pressed enter, or read the result list, after only a general "app is quiet" wait. The palette searches in two stages, a 120 ms local one and a 400 ms live re-run that redraws the list. Under the load of a full run, the "New repository" row could still be moving when enter landed. The private-repository check could also read the list before the search had finished.Change: in the palette steps, the helper now calls the existing
settlePaletteafter typing.settlePalettewaits for the palette's searches to finish. It is applied to the "New repository" step and to the private-repo name search. The test itself is unchanged.What ran:
bun x tsc --noEmitandbun test test/outsider-tty.test.tswere clean. I did not run the whole suite; the forge's full check on this push will show whether the red is gone.Not done: the assign-picker step still uses the general wait. I left it alone because it isn't a palette.
Closes #9436