Artifact 949336ddefe44f9a91e8dcdb22af9558c0da72108e342d9a3f2c6d78a607cb0e:
- File
src/e2e.zig
-
2026-07-19 19:18:34
— part of check-in
[0e1f7a719a]
on branch iss4
— stat: the content-bytes e2e gets an oracle it shares no code with
The honesty test asserted that content-bytes below store-bytes and that the byte fields sum to the file. Both hold for anything of the form `size - k`: one because a subtraction is smaller, the other because it is that subtraction's identity. The test named the defect it existed to catch and could not see it.
`statOracle` now totals frames from the store's per-rid index -- `payloadLenOf` for content, `frameSpanOf` less payload for overhead -- and the test pins the printed fields to it. It shares nothing with `storestat.walk`, so `size - header_len` for content now fails, as does overhead taken across all frames. One fabrication stays invisible and the test says so: subtracting the walk's own overhead and config from the size IS the measurement.
`stat_help` sat between `status_help` and its doc comment, so that comment documented the wrong constant and claimed an e2e transcription `stat` lacked. Restored, documented, and written.
A repeated `--type` was silent last-wins; a usage error now. runStat claimed "one pass" over two traversals; the claim goes, not the open, which verifies what the walk trusts. (user: dmestas, size: 670567) [annotate] [blame] [check-ins using]
-
2026-07-19 20:43:40
— part of check-in
[921678c019]
on branch trunk
— Merge iss4: zit stat, the store's own byte accounting and artifact roll
The store could not be interrogated from outside a checkout: no way to ask how many artifacts it holds, which ones, or how many of its bytes are content rather than framing. zit stat answers from one pass over the frames -- store-bytes, content-bytes, frame overhead, artifact and delta counts. Content is summed from each frame's payload during the walk, never derived from the .zit file size, which also carries the store header, a per-frame header and padding; a size-derived figure would look like a result and be a fabrication, so the two stay separate fields and the overhead between them stays checkable. --artifacts lists the stored hashes for comparison across stores. The frame walk and its accounting live in storestat, shared with the storage benchmark, so the verb inherits the benchmark's exact-accounting test and the two cannot drift. (user: dmestas, size: 670567) [annotate] [blame] [check-ins using]
-
2026-07-19 19:18:34
— part of check-in
[0e1f7a719a]
on branch iss4
— stat: the content-bytes e2e gets an oracle it shares no code with