test(install): pin exit-2 fixture temp-parent mode to 0700 - #2627
Conversation
On umask-0002 hosts mkdirSync creates the harness TMPDIR parent group-writable (775), which install.sh's validate_private_temp_root correctly rejects — the suite then failed with exit 127 instead of exercising the exit-2 contract. Pin the fixture dir to 0700 so the test is umask-independent. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
|
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 configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
Summary
install-exit2-propagationintegration suite failed (exit 127 instead of the exit-2 contract) on any host withumask 0002:mkdirSync(work/tmp)inherited the umask and produced a group-writable (775) temp parent, whichinstall.sh'svalidate_private_temp_rootcorrectly rejects.0o700so the test exercises the real exit-2 lifecycle regardless of host umask.Verification
bun test tests/integration/install-exit2-propagation.test.ts→ 2 pass / 0 fail on the same host.Note (not fixed here)
When
validate_private_temp_rootdies at source time,diecallsrelease_lifecycle_lockbefore it is defined, so the installer exits 127 instead of the contractual 1. Worth a small follow-up in install.sh.🤖 Generated with Claude Code