Skip to content

rig_https_banner.py cannot fail on a truncated body #210

Description

@JC-000

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:

  1. 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.
  2. 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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions