Skip to content

Make the REPL Tab focus test finish consistently #1015

Open

Description

@taras

The REPL Tab focus test finishes consistently while checking that Tab moves the visible cue and keyboard focus in one presented frame.

During the behavioral test cleanup in #1013, RS1: Tab moves the cue and the focus, and presents once intermittently timed out after 15 seconds. The saved native command result shows a passing full-file run followed by a failing run in the same two-run command, with no source-writing command between those invocations.

Evidence

  • Local Deno 2.9.7 on aarch64 Apple Darwin; no CI run link exists for this observation.
  • Command: deno test -A --frozen packages/cli/tests/repl-journey.test.ts.
  • Checkout HEAD was 541fd0df, with the journey migration still uncommitted. The exact transient worktree hash was not saved.
  • The native tool result at 2026-10-29 19:03:43 UTC preserves this output:
ok | 42 passed (77 steps) | 0 failed (26s)
  RS1: Tab moves the cue and the focus, and presents once ... FAILED (15s)
REPL responsiveness: a focus move is one frame ... FAILED (due to 1 failed step) (15s)
FAILED | 41 passed (76 steps) | 1 failed (1 step) (42s)

The complete timeout stack was not preserved. The migration helper subsequently added a wait for the draft to offer Send before starting the focus measurement and reported passing later runs. A late startup frame is a hypothesis, not an established cause from the available failure evidence.

Acceptance

Preserve the existing cue, keyboard-focus and single-presentation assertions. Identify the scheduling cause and record a regression that distinguishes the repair from the failing behavior. Do not replace those assertions with a delay or an ignored failure.

This is the dedicated flake record required by AGENTS.md. Close it only after the cause, regression evidence and delivery are recorded; a green rerun alone does not close it.

Activity

  1. added
    flakeIntermittent or timing-sensitive failure that can pass without a code change
    on Oct 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    flakeIntermittent or timing-sensitive failure that can pass without a code change

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions