Skip to content

chore: capture the answer loop not coming back after Ctrl-Z and a resume - #819

Merged
REPPL merged 1 commit into
mainfrom
chore/capture-ctrlz-redraw
Oct 4, 2026
Merged

REPPL merged 1 commit into
mainfrom
chore/capture-ctrlz-redraw

Conversation

@REPPL

@REPPL REPPL commented Oct 4, 2026

Copy link
Copy Markdown
Collaborator

Captures a defect found when a merge-queue run was ejected. Records only.

On the macOS merge-queue runner, the plain-Terminal answer loop's Ctrl-Z subtest saw two things go right: the child stopped, and the terminal was restored while it was stopped (both asserted). After SIGCONT, though, the child wrote nothing for 20 seconds: no redraw, and no raw mode again. A person would press Ctrl-Z, then fg, and find the question still frozen until Ctrl-C.

  • The lead: re-entering raw mode calls tcsetattr from a process group that is not the terminal's foreground group, and the kernel answers with SIGTTOU and stops the child again.
  • The alternative: a race between Suspend's wait for its continue token and the signal goroutine.

The capture is minor, with a remedy that diagnoses first. The subtest stays armed. A diagnosis lane follows the home rename.

Refs: iss-2610041944562639

Assisted-by: Claude:claude-opus-5-5

The macOS merge-queue runner saw the Ctrl-Z subtest's child stop and the
terminal restored, then nothing written for 20 s after SIGCONT: no redraw,
no raw mode again. Captured minor with a diagnosis-first remedy; the
subtest stays armed, and the diagnosis lane follows the home rename.

Refs: iss-2610041944562639
Assisted-by: Claude:claude-opus-5-5
@REPPL
REPPL enabled auto-merge October 4, 2026 19:58
@REPPL
REPPL added this pull request to the merge queue Oct 4, 2026
Merged via the queue into main with commit 7421f4e Oct 4, 2026
13 checks passed
@REPPL
REPPL deleted the chore/capture-ctrlz-redraw branch October 4, 2026 20:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant