docs: brief for the row 253 F5 follow-up, supervised legacy AS_USER calls (duckworth-0111 C4)
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# Brief: row 253 F5 follow-up, supervised legacy AS_USER calls in the case scripts
|
||||
|
||||
Sage, 2026-10-22. Source: row 253's DESIGN-C4 addendum (Gander 968db0bcd, :111-124) and Duckworth's
|
||||
addendum ruling (duckworth-0111, RULING-c4-addendum.md at 45288e584, F5 and C4).
|
||||
|
||||
## Brief: supervised legacy AS_USER calls
|
||||
|
||||
Owner Gander. Reviewer Duckworth. Gate owner Sage. Starts after row 253 lands.
|
||||
|
||||
Why: when a terminal is present, sudo runs the command in a new session (use_pty), and it can't relay
|
||||
SIGKILL. Row 253 puts its new config query and peer probe under an inline supervisor that scans the
|
||||
session it owns. It leaves the older calls in `case1-accept.sh` as they are. These are the `timeout 330 ...
|
||||
talk` path (case1-accept.sh.txt:305 in Gander's frozen snapshot) and the other AS_USER diagnostics (:326,
|
||||
:335, :355, :396). Each of these wraps sudo in a GNU timeout outside the uid drop. That has the same gap:
|
||||
when it fires, it kills timeout's process group, and the command keeps running in its separate session.
|
||||
|
||||
What to build:
|
||||
1. Every remaining AS_USER call in the case scripts runs under row 253's supervisor text. That's the same
|
||||
bytes, pinned by row 253's C5 test, with its own inner and outer bounds and reasons. The talk path
|
||||
keeps its 300 s conversation and its stdout and stderr diagnostics.
|
||||
2. Or, for any call that can't take the supervisor, the header says it isn't supervised and why, and the
|
||||
DEFERRED entry stays open for that call by name.
|
||||
|
||||
Tests: extend case-sudo-fixture.mjs cases in both fake modes (exec and session hop) to each changed call.
|
||||
Each one needs a no-leftover assertion and its exact reason. Mutants: drop the supervisor from the talk path,
|
||||
and drop the outer bound from one diagnostic. Each must be killed.
|
||||
|
||||
Gate: Duckworth approves the manifest, the touched test files run whole, every scripts/test-*.sh runs,
|
||||
and the mutants are killed.
|
||||
Reference in New Issue
Block a user