Repository navigation
Description
Transcript keyboard navigation can finish without showing its final real turn in Bun CI. Determine whether navigation or its test acknowledgement is failing, then fix the demonstrated cause while preserving wheel scrolling, composer text, provider-call count and final selection.
At exact signed 4260c7382f62ccaed5fad647f796c370a053d00b, CI 42800980630 attempt 1, Bun shard 8/10 failed wheel real consumers > Transcript scrolls independently and keyboard reveals its last real turn. After creating 18 turns, scrolling in both directions and navigating the Transcript selector, repl-wheel-scroll.test.ts:254 expected > [U] turn-17; it received false. Command: bun run test:bun 8/10, Linux Bun 1.4.0. All 47 assigned files ran.
The complete first output was saved before rerunning: 5,301,419 bytes, SHA-256 72c1522de913c2b8dfbe26e4d649683aed9e28358adb26b71e04e9170ace03f1, retained at /private/tmp/xmd-staged-followup-evidence-20261110/ci-first-426-job-129778099646.log.
One focused local run passed at the identical clean commit:
bun test --timeout=300000 --test-name-pattern 'Transcript scrolls independently' packages/cli/tests/repl-wheel-scroll.test.tsResult: 1 pass, 0 fail, 8 assertions, 7.30 seconds. This uses macOS and Bun 1.3.14, rather than CI's Linux/Bun 1.4.0. It does not establish a successful unchanged-job CI rerun or a cause fix. Local output: 276 bytes, SHA-256 e7ac42e7b007310ee8536c20731bb4bd23286abc0228f0656f6a69b433153e70, retained as wheel426-first-local.log beside the first CI output.
One unchanged-head retry of only the failed Bun shard is selected after the current CI run completes; it has not started. Source, assertions and timing remain unchanged. The original failure remains authoritative evidence.
Inspect the actual selected row, focus, scroll window and acknowledgement of each intended key before choosing a correction. The helper currently accepts any later screen write and waits 30 ms; that is an investigation variable, not an established cause. Preserve the 18-turn conversation, wheel direction assertions, retained composer text, final selected turn, absence of Back to current chat and exactly 18 provider prompts. Record a discriminating regression before closing this issue.
PR #1203 changes no Transcript production module or this test; this alone does not establish independence from every shared path. Related wheel issues #1054 and #1125 concern different files and assertions; no shared cause is claimed. Main health #1224 and #1225's Implementation deadline #1143 are separate failures.
The single selected unchanged-head CI retry passed: attempt 2, Bun 8/10 job 129790642323, still 4260c7382f62ccaed5fad647f796c370a053d00b, Linux Bun 1.4.0, same shard command. The Transcript case completed in 6,170.13 ms and all 47 files passed. No source, assertion or timing change occurred. This establishes same-revision CI intermittence for this exact assertion. It does not fix or identify its cause; keep this issue open.
Complete passing log: 5,218,238 bytes, SHA-256 7e81c2aa5bed3afca568b624a7b3b58e7f5e05e03e73c9fbdaa11f68692641de, retained at /private/tmp/xmd-staged-followup-evidence-20261110/ci-wheel426-retry-job-129790642323.log. The earlier first failure remains intact. All technical jobs now pass on 426; Main health and its dependent aggregate remain red separately. No additional retry is selected. The subsequent guide-timing prose successor is a different revision and is not used for this intermittence comparison.
Recurrence on #1238
At exact signed a40e68b903e7a322395cd2d7130657397ccf4c92, CI attempt 1, Bun 8/10 failed the same Transcript case at repl-wheel-scroll.test.ts:254, expecting > [U] turn-17 and receiving false. Command bun run test:bun 8/10, Linux Bun 1.4.0. The complete first output was preserved before any rerun at /private/tmp/xmd-main-1143-repair-20261110/work/recovery/ci-1238-a40-bun8-first-130156716115.log, SHA-256 1fa4f539e7fda0e896f042ffd19eb823c96461dcddd1b92eb3283c0392bd6806.
This PR changes the workflow checkout component and its focused regressions. It changes neither the Transcript module nor this wheel test. The prior identical-signature, same-revision pass above establishes intermittence for the tracked assertion. One unchanged-head retry of this failed shard is selected after the current CI run completes. The original failure and this issue stay open; no source or timing change is selected for #1227 here. Main health remains blocked separately by #1231.
Activity
taras commentedon Nov 11, 2026
The repair is in draft PR #1240 at signed
7450ca217d2fd03d65e59a041809cbf21954d419.The test acknowledged a key after any later completed terminal write plus 30 ms. A controlled real-REPL schedule reproduced the original final assertion while actual tree focus was already on turn-17 and its frame was still held. Waiting for the expected focused row remained pending until that frame was released. A regression using the corrected navigation operation passes, and substituting the old helper fails its pending assertion.
Independent Fable review also observed the mechanism without an injected resize. Revealing turns 15–17 naturally produced two writes. The first moved the scroll window while still marking the previous row, and the second moved the marker. That provides a natural route to the old assertion's signature. The historical CI logs retain only the final boolean, so their exact schedule remains unknown.
The original Planner and Fable both passed the exact repair. Local Deno passed all 12 wheel scenarios, and macOS Bun 1.3.14 passed 12 tests and 113 assertions.
Linux Bun 1.4.0, shard 8/10 passed on the repair's first CI attempt. The original Transcript scenario passed in 5652.13 ms and the new presentation regression in 2671.49 ms. All 46 assigned files passed. The complete first job log is retained at
/private/tmp/xmd-transcript-1227-20261110/ci-bun8-first-api-130254872967.log, SHA-2568d7b1775de070627d4894db8b49890a33654e5cc1546e2c03b78e70be7da3eb9.The PR retains the 18 turns, both wheel directions, composer content, final real focused row, no Back to current chat, and exactly 18 provider prompts. The issue remains open for delivery. Main health and the Delivery fallback failure tracked by #1232 remain separate CI blockers.
Acknowledge Transcript navigation by its presented row
Acknowledge Transcript navigation by its presented row