Skip to content

Record a snapshot of the pages that never opened a browser - #3

Merged
qcoderx merged 1 commit into
mainfrom
speed-and-coverage
Aug 13, 2026
Merged

qcoderx merged 1 commit into
mainfrom
speed-and-coverage

Conversation

@qcoderx

@qcoderx qcoderx commented Aug 13, 2026

Copy link
Copy Markdown
Owner

The tier-0 result carried neither the capture nor the served bytes, so -snapshot on a page answered without a browser wrote a file containing little more than a URL, and replay rejected it with "contains no capture" -- which reads like a corrupt file rather than one that was never given anything to hold. Every other return path in Distill carried both; this one, the path most pages take, was the exception.

The consequence is worse than a missing feature. Snapshots exist so a bug can be reproduced offline against a user's attached file, and the bugs that were cheapest to reproduce were exactly the ones that could not be attached: every text-welding and reading-order defect fixed in this branch was a tier-0 defect, found by re-running live sites and fighting the network for it.

So Read no longer refuses a snapshot that has the served HTML but no capture, and Replay re-runs the static extraction over those bytes to rebuild the same input the live run used. go.dev now records twenty-three kilobytes instead of a hundred and forty-three bytes, and replays to an identical content hash: same ninety-one blocks, same six sections, same hundred and twenty-four actions.

A snapshot carrying neither a capture nor any HTML is still refused, and says which of the two it is missing.

Found by running every command over the corpus rather than distill alone.

The tier-0 result carried neither the capture nor the served bytes, so
-snapshot on a page answered without a browser wrote a file containing little
more than a URL, and replay rejected it with "contains no capture" -- which
reads like a corrupt file rather than one that was never given anything to
hold. Every other return path in Distill carried both; this one, the path
most pages take, was the exception.

The consequence is worse than a missing feature. Snapshots exist so a bug can
be reproduced offline against a user's attached file, and the bugs that were
cheapest to reproduce were exactly the ones that could not be attached: every
text-welding and reading-order defect fixed in this branch was a tier-0
defect, found by re-running live sites and fighting the network for it.

So Read no longer refuses a snapshot that has the served HTML but no capture,
and Replay re-runs the static extraction over those bytes to rebuild the same
input the live run used. go.dev now records twenty-three kilobytes instead of
a hundred and forty-three bytes, and replays to an identical content hash:
same ninety-one blocks, same six sections, same hundred and twenty-four
actions.

A snapshot carrying neither a capture nor any HTML is still refused, and says
which of the two it is missing.

Found by running every command over the corpus rather than distill alone.
@qcoderx
qcoderx merged commit deaa605 into main Aug 13, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant