Repository navigation
test(cmux-next): reserve the cloexec probe descriptor - #17599
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Not verified: macOS jobs did not run: compile and app tests were skipped on CI passes on Written by |
|
Exact-head fleet compile completed successfully for |
|
The feat-cmux-next push run https://github.com/manaflow-ai/cmux/actions/runs/37510291185 at 8e8149d failed: cmux-next generated files, cmux-next swift test. |
|
The feat-cmux-next push run https://github.com/manaflow-ai/cmux/actions/runs/37510568883 at df62960 failed: cmux-next Release compile (Xcode 26), cmux-next swift test. |
|
The feat-cmux-next push run https://github.com/manaflow-ai/cmux/actions/runs/37510605955 at 96f7421 failed: cmux-next generated files, cmux-next swift test. |
Summary
The daemon socket CLOEXEC test probed a low descriptor number directly. A shell or unrelated inherited descriptor could occupy that number and make the redirection succeed even when the transport socket was correctly closed on exec.
Duplicate the descriptor into a reserved high range while preserving its descriptor flags before spawning the probe shell. The test still asserts the transport's
FD_CLOEXECbit and retains the no-CLOEXEC control case.Validation
python3 scripts/verify-local.py --only swift-syntax --swift-changed origin/feat-cmux-nextChangelog
Fixed flaky daemon socket close-on-exec coverage.
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by cubic
Fixes the daemon socket CLOEXEC test so it no longer falsely passes when an unrelated inherited descriptor occupies the probed number. The test now duplicates the descriptor into a reserved range (≥ 128) while preserving its flags before spawning the probe shell, and still asserts the transport's
FD_CLOEXECbit with the no-CLOEXEC control case intact.Written for commit 7252072. Summary will update on new commits.