Repository navigation
Description
Per-unit tracker for findings raised against this canonical unit by a carrying repository's review, per pr-review-conduct Merge Gate item 3.
Findings
-
Bound the wait after
terminate()on aPopenchild, with akill()fallback. Raised by CodeRabbit on Resync the Instruction Set and Carried Skills With the Hub NxWitness#685, against the carriedCODESTYLE.md"Interrupts in Python" at line 132, carried at the hub'smain2d0f8901. In the reviewer's words: "The rule waits without a bound afterterminate(). A child that ignores SIGTERM can keep the script from printing its interrupt line or exiting with 143/130." It proposeswait(timeout=...), thenkill()and a second wait onsubprocess.TimeoutExpired. It notes that "Interrupts in Shell" has the same unboundedwait, which Bash cannot time out directly.- Not judged here. The carrier declined it under outcome 2, since the text is the hub's to change.
-
Install a SIGINT handler explicitly rather than relying on Python's default. Raised by CodeRabbit on Resync the Instruction Set and Skills Tree With the Hub PlexCleaner#1259, against the carried
CODESTYLE.md"Interrupts in Python" first bullet, carried at the hub'smain009d3e5e. Python raisesKeyboardInterrupton SIGINT only where the parent did not start it with SIGINT ignored. A non-interactive shell starts a background command that way, so a script following the rule ignores SIGINT and skips its cleanup and its exit 130. It proposes that the entry point install handlers for both signals withsignal.signal, each recording the signal and raisingKeyboardInterrupt.- Not judged here. The carrier declined it under outcome 2, since the text is the hub's to change.
-
The bounded-wait finding above was raised again by CodeRabbit on Resync the Instruction Set and Skills Tree With the Hub PlexCleaner#1259, against the same bullet carried at
009d3e5e, again naming the Shellwaitas well. -
State the
__enter__window in the cleanup bullet. Raised by CodeRabbit on Promote Develop: Hub Resync to 009d3e5e and the .NET SDK Line PlexCleaner#1261, against the carriedCODESTYLE.md"Interrupts in Python" bullet "What the script holds is released bywithblocks andfinallyclauses as the exception unwinds", carried at009d3e5e. AKeyboardInterruptraised inside__enter__, after a resource is acquired and before the method returns, skips__exit__, so a lock or temporary path can stay held. It proposes limiting the claim to after__enter__returns and naming the window as uncovered.- Not judged here. The carrier declined it under outcome 2, since the text is the hub's to change.
🤖 Generated with Claude Code
Activity
Resync the Instruction Set and Carried Skills With the Hub (#685)