The rig's PASS verdict covers only the banner string. Body completeness rides on a hardcoded threshold that merely warns, so the rig exits 0 on a fetch missing 36 KB.
if total >= 125_000: ... # break, "body complete"
else: print(f" WARNING: body stalled at {total:,} B")
ok = total >= 125_000 # computed, then never used in the verdict
verdict = 0 if (names_target and not says_foobar) else 1
Two defects, one cause:
- Stale threshold.
>= 125_000 against an article measured at 125,703 B on 2026-09-07. Runs reaching 117,192 B print "body stalled" — and the article is user-editable, so any hardcoded expectation about someone else's content is a stale figure with a delayed fuse.
- The completeness check cannot fail the run.
ok is assigned from the byte count and then discarded; verdict never consults it.
Observed (PRG 0712def5d70e17cbb0efa7db929ddabd40600cffa5912bb0277e20efea3f0a32, e4fda6d): a run reaching 73,720 B of ~125,703 B printed WARNING: body stalled and PASS: banner names the real target, exit 0.
This is why the silent-truncation defect went unnoticed: the only rig exercising that path could not go red on it.
Suggested: derive expected size from the response's own framing rather than a literal, and make completeness gate the verdict.
The rig's PASS verdict covers only the banner string. Body completeness rides on a hardcoded threshold that merely warns, so the rig exits 0 on a fetch missing 36 KB.
Two defects, one cause:
>= 125_000against an article measured at 125,703 B on 2026-09-07. Runs reaching 117,192 B print "body stalled" — and the article is user-editable, so any hardcoded expectation about someone else's content is a stale figure with a delayed fuse.okis assigned from the byte count and then discarded;verdictnever consults it.Observed (PRG
0712def5d70e17cbb0efa7db929ddabd40600cffa5912bb0277e20efea3f0a32,e4fda6d): a run reaching 73,720 B of ~125,703 B printedWARNING: body stalledandPASS: banner names the real target, exit 0.This is why the silent-truncation defect went unnoticed: the only rig exercising that path could not go red on it.
Suggested: derive expected size from the response's own framing rather than a literal, and make completeness gate the verdict.