Files

5.1 KiB

Draft(b): expected P10 reasons before diagnostic(a)

Not derived from diagnostic output. No test edit is prepared or committed. The brief delegates P10 checks/outcome wording to DESIGN (docs/plans/2026-10-21_tester-socket-scripts.md:31). DESIGN.md:163-170 requires the failed reason to identify the failing observation, rather than accepting any unnamed line. BUILD.md:17 records the separate parent/socket/process/snapshot and peer checks. C4 refined failure classes in DESIGN-C4.md:84 and:91-95, with BUILD.md:175-177 recording distinct refusals.

The approved prose names semantic classes, not a literal exhaustive code-name table. The expected bounded labels below name those classes using existing source labels, cited separately for transparency. They are not selected from (a). peer-malformed=probe is additionally explicit in mos1293. If the diagnostic reports a different class/code, send it to Mos before any edit, even if it would make an existing broad assertion pass.

Fault Expected reason= Designed observation Design/build authority Existing label locator, not output oracle
parent-mode metadata Private parent mode is exact0700 DESIGN.md:119; BUILD.md:17 scripts/case1-accept.sh:659
parent-owner metadata Parent owner is stack uid DESIGN.md:119; BUILD.md:17 scripts/case1-accept.sh:659
socket-mode metadata Socket mode is exact0600 DESIGN.md:120; BUILD.md:17 scripts/case1-accept.sh:659
socket-owner metadata Socket owner is stack uid DESIGN.md:120; BUILD.md:17 scripts/case1-accept.sh:659
socket-type metadata Final entry is socket DESIGN.md:119; BUILD.md:17 scripts/case1-accept.sh:659
symlink metadata Final entry is not symlink DESIGN.md:119; BUILD.md:17 scripts/case1-accept.sh:659
peer peer Connected uid equals stack uid DESIGN.md:136; BUILD.md:17 scripts/case1-accept.sh:665
peer-pid peer Connected pid equals MainPID DESIGN.md:136; BUILD.md:17 scripts/case1-accept.sh:665
python-mode interpreter Fixed system interpreter safely owned and protected DESIGN.md:126; BUILD.md:17 scripts/case1-accept.sh:660
python-missing interpreter Missing system Python is failed observation DESIGN.md:129; BUILD.md:17 scripts/case1-accept.sh:660
python-not-elf interpreter System entry target is ELF DESIGN.md:126; BUILD.md:17 scripts/case1-accept.sh:660
peer-malformed probe Probe returns only exactly pid uid gid DESIGN.md:135; DESIGN.md:163; BUILD.md:17; mos-1293 item2 explicitly reason=probe scripts/case1-accept.sh:666
peer-error probe-inner-command Nonzero child output discarded, distinct child failure DESIGN-C4.md:84-85; BUILD.md:175; BUILD.md:177 scripts/case1-accept.sh:662; tester_capture_reason
peer-uid-fields metadata MainPID four proc uid fields equal stack uid DESIGN.md:118; BUILD.md:17 scripts/case1-accept.sh:659
changed-inode changed Snapshot replacement fails observation DESIGN.md:120; DESIGN.md:121; BUILD.md:17 scripts/case1-accept.sh:668
changed-pid changed MainPID change fails observation DESIGN.md:121; BUILD.md:17 scripts/case1-accept.sh:668
floor floor Numeric floor above privileged Console port DESIGN.md:122; DESIGN.md:123 scripts/case1-accept.sh:658

All existing status assertions and the boundary=failed/no-boundary=observed assertions remain. The draft adds exact reasons; it never weakens a status or changes a failure to fit observation. The special peer-uid-fields functional failure remains exit1. Product changes require Mos. A fixture-only repair can be considered only when the stub is shown to mask the intended fault, under mos1293.

One scratch archive of0604d91fc is prepared at the path in PREPARE.json. Its only change logs every P10 line, reason and status immediately before the same existing assertions in the named loop. Both product scripts and shared fixture are exact base blobs. The COPY-PATH is not a commit/worktree. No source or test in the seat checkout is changed.

On Sage CLEAR: create TMPDIR via mktemp-d /mnt/storage/scratch/tmp/gXXX, export it, invoke diagnostic-a/run.py with that grant. It gates with the busy check, uses timeout-k10 418 and outer448, pipefail/tee, records command/header/results and writes P10.jsonl. It refuses a second run if output exists. No diagnostic/syntax/Node execution has run while preparing this.

Duckworth0160 expected-set review

All17 expected reasons accepted by source-only review. C1: assert the exact reason token, including its following space, for example reason=probe , or match the full P10 line. A prefix expression /reason=probe/ is forbidden because it also accepts probe-inner-command and other probe-* reasons. C2: keep every existing status, boundary=failed and no-boundary=observed assertion. A fixture repair is limited to a mask shown by diagnostic(a), and an unexpected reason goes to Mos before any edit.

N1 citation corrected: peer-error child failure is DESIGN-C4.md:84-85. N2: the existing peer-hang test at case1-accept.test.mjs:291 has a separate loose probe prefix; Duckworth says it is outside mos1292/1293 scope and does not bind this repair. No change to it is prepared.