Repository navigation
Make the REPL Control-C journey observe its execution location consistently #998
Description
The REPL Control-C journey consistently observes the new execution's location before it inspects the directory and verifies that leaving prints that location. The test keeps its exit, printed-location and journal assertions.
The current J1: Control-C ends the command and prints the location row in packages/cli/tests/repl-journey.test.ts intermittently reaches files[0].replace(...) before the execution directory exists. CI reports an undefined value rather than a failed location assertion.
Failure evidence:
- Source:
4657c4d92ffbd940f58a3cfb7f93a76d3da32c26, PR Reduce memory use when opening and continuing REPL histories #997. - Runtime/command: Node on the GitHub Actions Linux runner,
pnpm test:node 7/10. - Failing CI run, attempt 1, failed shard.
not ok 1 - J1: Control-C ends the command and prints the location
TypeError: Cannot read properties of undefined (reading 'replace')
packages/cli/tests/repl-journey.test.ts:1310:34
The identical source passes locally without a fix under Node on macOS: three complete journey-file runs (71 tests each), eight concurrent runs of the affected row, and the exact pnpm test:node 7/10 selection (40 of 40 files). Those are different hosts; the local passes do not by themselves exclude a platform-specific problem. In the failing CI run every other non-aggregate job succeeded (39 of 42 jobs); the failed green aggregate depends on this shard.
The trace identifies a timing assumption to investigate. settled() advances eight scheduler turns before the directory inspection. The root directory exists, but its execution directory is not yet present. The relevant startup window is unchanged by #997's memory changes. The same fixture already provides an awaiting(...) deadline helper used by neighbouring rows. A readiness condition on the actual execution directory is a candidate repair; the failing scheduling window has not been forced locally yet.
Resolve the startup/readiness cause with discriminating evidence while preserving every original J1 assertion. Replace no assertion with a delay, looser value or ignored failure. Changes to an existing test require the repository's explicit test-edit authorization.
This is the dedicated flake record required by AGENTS.md. A green rerun restores CI health and does not close this issue. Close it only after the cause is fixed and regression evidence is recorded.
Activity
taras commentedon Oct 27, 2026
[flake-998-unchanged-retry-2]
The identical revision
4657c4d92ffbd940f58a3cfb7f93a76d3da32c26passed CI attempt 2, including Node shard 7/10. Attempt 1 failed the Control-C journey in that same shard; no source or test changed between those attempts. This adds CI-runner evidence of intermittence to the local observations recorded above.The green retry restores PR #997 CI health. This issue remains open until the startup readiness cause is fixed and focused regression evidence is recorded.