diff --git a/docs/gate-script-framing.md b/docs/gate-script-framing.md index 359ee33..180ddb1 100644 --- a/docs/gate-script-framing.md +++ b/docs/gate-script-framing.md @@ -9,16 +9,20 @@ lane. **Approved after four review rounds plus a locale follow-up, all of which turned on evidence rather than design.** Round 1 corrected a -propagation witness that proved only that the variable was used, and -two wrong guard reserves. Round 2 tightened the socket budget to the -Darwin floor and replaced an existence-only ancestor check with one -that honours marker types. Round 3 made the traversal canonical and -gave the length guard its first real witnesses. Round 4 moved those -rows onto the exact boundary, covered both managed areas on cleanup, -and withdrew an unsupported causal claim. The follow-up required the -byte-versus-character row to *establish* its precondition rather than -name one. Each correction was a witness asserting something adjacent -to the contract while appearing to assert the contract itself. +propagation witness that observed no inheritance, a reserve that was +not the maximum, and a guard that leaked what it exists to manage. +Round 2 tightened the socket budget to the Darwin floor, *ruled* the +nested case rather than accommodating it by loosening the reserve, and +replaced an existence-only ancestor check with one that honours marker +types. Round 3 made the traversal canonical, gave the length guard its +first witnesses, and **withdrew an unsupported causal claim**. Round 4 +found four properties that were fixed or claimed but would have stayed +green if reverted: it added the **canonical-traversal witness**, moved +the guard rows onto the exact boundary, and covered both managed areas +on cleanup. The follow-up required the byte-versus-character row to +*establish* its precondition rather than name one. Each correction was +a witness asserting something adjacent to the contract while appearing +to assert the contract itself. **Previously, revision 5. Approved at revision 4 and IMPLEMENTED; revision 5 records two safety defects review found in the implementation.** diff --git a/scripts/gate b/scripts/gate index 81db624..2ddd9d7 100755 --- a/scripts/gate +++ b/scripts/gate @@ -548,9 +548,12 @@ mkdir -p "$AMBIENT" # VERIFIES rather than assumes. # # Disk-backed matters independently. `/tmp` is commonly a tmpfs, so a -# sweep's fixtures compete with the machine for RAM; a build here has -# hit tmpfs quota mid-compile. The gate root is on the same filesystem -# as the build artifacts, which is where the space is. +# sweep's fixtures compete with the machine for RAM rather than for +# disk. Measured here: `/tmp` is a 30G tmpfs that reached 24G occupied, +# leaving ~4G of 61G free, at which point process spawning became +# unreliable and rows failed with EMPTY output --- a symptom that reads +# like a code defect. It was not out of space. The gate root is on the +# same filesystem as the build artifacts, which is where the space is. # # IT HANGS OFF THE GATE ROOT, NOT THE PER-WORKTREE TARGET, AND THE NAME # IS SHORT ON PURPOSE --- see the SUN_LEN budget below. Note this