Skip to content

test(cli): stabilize macOS dispatch cancellation - #2524

Merged
wgqqqqq merged 1 commit into
GCWing:1.0.0-explorefrom
wgqqqqq:codex/fix-macos-dispatch-cancellation-test
Aug 26, 2026
Merged

test(cli): stabilize macOS dispatch cancellation#2524
wgqqqqq merged 1 commit into
GCWing:1.0.0-explorefrom
wgqqqqq:codex/fix-macos-dispatch-cancellation-test

Conversation

@wgqqqqq

@wgqqqqq wgqqqqq commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • keep the dispatch cancellation safety coverage that rejects SIGKILL after the verified process-group leader exits
  • make the shell leader block in its built-in wait command so TERM traps run immediately
  • remove the runner-dependent timing window caused by repeatedly launching external sleep processes

Root cause

POSIX shells may defer a TERM trap while waiting for an external command. On slower macOS runners, the one-second process-group grace period could expire while the shell leader still appeared alive, so the production cancellation path correctly escalated and the test incorrectly failed. The shell built-in wait provides a deterministic handshake while the TERM-resistant child keeps the process group alive.

Verification

  • focused cancellation test passed 50 consecutive runs on macOS
  • cargo test --locked -p bitfun-cli -p bitfun-acp
  • pnpm run check:repo-hygiene
  • git diff --check

Remote scenarios

  • Detached Dispatch: test-only fixture stabilization; production cancellation behavior is unchanged
  • Remote workspace, Remote control, and Peer Device Mode are unchanged

@wgqqqqq
wgqqqqq merged commit 49defe8 into GCWing:1.0.0-explore Aug 26, 2026
11 checks passed
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