Skip to content

v0.9.0

Choose a tag to compare

@lidge-jun lidge-jun released this 18 Sep 09:26
b76c911

complete now means something narrower than it did

Every open issue in this repository shared one defect: an action that skipped, capped, filtered out or could not apply something the caller asked for still reported full success. Six of them had already been fixed once each, with a symptom test and no written rule, which is why a seventh and an eighth shipped under a green suite.

The change a caller will notice

In 0.8.1 browse.exec and browse.captureMany derived complete from the run status alone. A batch that finished every job and handed back a tree cut at maxTreeChars answered complete: true. In 0.9.0 the same result answers complete: false, sets truncated: true, and names the cut in lostTo.

complete now requires three things: the run finished every job, nothing inside a finished job was cut, and no loss marker was raised. The same tightening reaches the post-action snapshot, ref reads that failed, and text sliced at maxTextChars.

No field is removed and no signature loses a key. But a caller branching on complete will get a different answer for the same page, which is why this is a minor rather than a patch.

Also in this release

  • fs.list discloses a capped listing and names unreadable directories. Decoration now survives the sandbox boundary through a symbol brand rather than an action-name allow-list.
  • search.* gain a scope.coverage record with nine entries, so complete: true no longer reads as "the string is not there". A new binary option maps to --text.
  • browse.readText gains contentShape: a .diff URL answered with a sign-in page is ok: true, complete: false.
  • Eleven output signatures corrected; the drift test now checks the output direction too.
  • partial is split into losses and advisories, so one marker no longer means two things in two producers.
  • structure/ and its checker now ship in the package, where structure:check previously could only fail.

How it was checked

1,060 tests across Ubuntu 18/20/22, macOS 22 and Windows 22. Verified by mutation as well as by the green: reverting the six producers turns seven of the new completeness probes red.

Closes #35, #36, #37, #38, #39, #40, #41, #42.