open-standards/wai/http-conformance/cases/rcpt-deep
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science d29cd0731d http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring
Round-2 fixes to http-delivery §8.1-§8.4, in the text, wai-rs, http_receipts.py and
the corpus together.

1. Claims run jwp-receipts §3.1 step 6 against what the passed delivery items
   deliver: energy against their object receipts (a named OER receipt is
   context_not_held); measurement/operating-point against the moq-jwp:object figure
   of an item delivered under the claimed group (energy_figure::HeldObject), else
   figure_not_held / context_not_held; delivery-gap against an item at its
   coordinates; decisions and recovery records against the declaration fetched by
   link; reconstruct-session context_not_held. Never acceptance without context.
2. A claim about a receipt attaches only through the group of an item whose
   delivery check passed.
3. A soft binding of another object is reported as attesting the ancestor only
   after §3.2 steps 2-5 pass (held object, a publisher key from a verified
   delivery, a matcher); otherwise receipt_not_about_object.
4. Bounds: receipt files 1 MiB (receipt_too_large), indexes 4 MiB with 256 items
   and 256 claims (receipt_index_too_large), each name fetched once per index
   (memo), 1024 fetches per index (receipt_fetch_budget_exhausted); the CLI fetches
   under a deadline (--deadline-ms) and these caps, never following a redirect.
5. A legacy (unlabelled) group file is refused (receipt_legacy_group): its name
   does not fix its parent.
6. The parent walk is clamped to 64 whatever bound is asked.
7. wai http receipts --key-origin retrieves the key log itself from --connect,
   sending anchoring_request_headers, following no redirect, and builds the
   Retrieval from the response.

Corpus: measurement/energy/gap claims and O5's index, legacy group, a 66-deep
chain, padded files and indexes, 256/257 items and claims, a fifty-fold item list;
1015 cases, Rust and Python agree.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-07 22:13:53 -04:00
..
1a0a5b813a9829960fc55d40e8db40c94f9e8fc49c65d76e8fddd9dc4e879f4e.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
01a07d8b4af7e85c22c5ecbba976073b5e043ce831e96f8c411121fde6bdfa24.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
2d31d0bd821ee2578210482b192d2cb47d1d9a9846fc9f032311c4b156b3170a.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
3aa91d8e5f296a997f8473822a5558478a3302b02c06c3192986bbcb2d5d27b1.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
3c8ead78e4ccaaa1b49790f87ea593a38e586e45cf8d2d7c1c575e64d3322893.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
003ce009852d8c0c3e808699db87f862368967295eaad10087ee86cd356a65dc.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
3d8bcf2693699485bf4560e6db247cfba2ed713171f434a76a8f90c55facae9a.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
4a929990963ba614aaac8bb2896cf2f0b9f1bb4724dec179d2457576e6de493b.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
4fddb12f5ebd443ad749945c70453e80223fa9f89c642fbc14bb736a4fcc0c19.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
5cf23a6733332727a616961d36300beb3ab39a637d985efa02f51f9ad9a788b1.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
6fe102acdfb722a4ac1e9708bd2524df96612c2b8572fb36187b36aaef695d19.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
8ce05b04d49062f191ae072bf970ba23863c7cc88b654d178acf61361fc81efa.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
9add9e068b526da6bd0d7dd6bac6f0bd53630f0cff4e303b0e2b5fa7032ab7b8.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
9bc7eb5b3a07d2c3bfa344a7f32612128c54efa856c8d8feab4c2d768559a153.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
9be1a59aa2577c7431548c5d117413044a37fdc1a05cb72c58d0ec16770bcfdf.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
9db4594f2e453f9cff014f3028d4c02dd5862b28855783f836891ec26e911616.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
9f4e6f8de572ae37b854c3f356c117a451713ae32d05176e8aae7d3cb928da3c.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
17ef1654e9710960f846a1453e40c927d3d526151006f5d01dcd0a50d8fe5cc0.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
21dcc9e852e59acff6ae0749f4a6afb81621f6a9226825ef597c860f306ff755.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
36f03021b405cf486db202f776174b6c81098add4784395a59327037c411aa05.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
45f8fa1e36cb9988a8ffecc639e92feb3c2cce92e70eeaebea7ce2bd75c5e581.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
73c6117b02857292a6b459ed1f433b42d7455a91a2941aab05c31a54a0ddf30a.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
82a9fe0631aaaa7a86edc18e09dad8f9080ae1faa6089a2632a9ce028562740a.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
89f6acee1ffd1ab9abcee3f448f2a7d1265f5de70c40ecdbd514fc2412a9581d.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
186babdb6cd3cfbc6d5ea3420bd0b9583d3a3328544f90d1f6ec337e833da309.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
296b25a0475ca8ba860b3db33ec1c42f9c67a3dcda5fee8b7ab924c14d05d02c.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
316ef8d8a425cee1a88181a83f46698d36124879649ebdef8104c66398a37580.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
319e3bd23ecc66f714d2226d160457fdface7e18022d071f2332adf1dc42f60a.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
628e127eff3ff5f3fc41008cd2aba447b2e6a5c6b6f7a7c355aeee5131614845.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
702d3f032ec6e859379cc73da1b5e2af6d8522ec13b20b3cb80579065cf3cb8f.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
727ec6e7702c42e445c28f7db5ca526c4cfcf72207a793b8a75b457b0004cbb7.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
7209b5f3d838d80969f2bedb44b36c62b9cb980de376565d29be1a36290673db.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
8499e3ae0889231bb4cf44be763227155c737d80c3119d6ef49ee37ac384f0f4.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
8642ba98b3ef5233e6fe4c2b2f8bf0511b48b25ad11139781874ca585dad39db.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
9437c7584edf8061151cc407cdc2cf5875138daa33def243f8e7958095159d43.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
009454fd76395b07a8db1c205e1eceb2fc39b70d6f19ce28f029f0aa25489eac.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
25632b6926e484b967f63df5a868d252c15d8fbba68d6bd6beb7c5db2bb8b284.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
63379f1324fcb7c7d65bec7ea0d81f585fad641c0881076dae2384c0dab77350.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
64100b9ff95fe8517af6d53ffae89420bcc4855b7a9fbfa9c0c2fcfd4c8f6e02.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
258947cefedab4a8c44cf3d02bc66e33c4c94b20baefdee5924100ac13ad2631.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
a14dd2629372b10738a35dcb3e71db5b60c2e6aac29776766f60df21debaa7a6.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
a577ff30a365f5af48f5ea6f2b874ea9520ec024639f33f9fcc8545d0535ea64.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
ae03f97d23795d99c4db5ddf04668bac928bd9e90969a20221cd7326e6a0cd1e.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
ba386a976d3bb07999fa2b48a0505aad51f5bcf1ad926f30e17475143abdaef7.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
bc54f7a82afbf23e1a81249785409dbf27d11f1c7871850d11f37afd637b0d8a.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
c5c6797e71d82c249afdfd5fa3e45c607168f5f46caab52de55ade65a7dca6db.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
c018e85a69702e3966349a8b1a5a6cb91925f53377612947760bcabee6325e46.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
c24a80173b436fddaec2e9efe8a243eb58334442ebbc0f5170d219fc833c1b56.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
c40b1d684d5696efc5f2cc1f39cee4d99b4dc4fe5aa6d43992a8c8d5be5bcbe9.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
cb54de1a2fb520d4b1b98a38732eeb0ae9260679c0ef38ee0c2db625d4690f08.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
ce8cdb9ba42eae1916d6543cc0df37a0e9e3cf6eb9f23dace8cadbcc68a1ce6e.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
d5c54a0582e4aae21a61b315843a4a3bc50af0b97a75f9fc6fa213f438839b59.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
dce4681c9a487a24a4b20f216f79d8319dfb7048ca2d965f1d34e5724e33d802.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
dddbdf295d8efc9890ea00b8cd09355b8bc12aa8c1b8a0abfa2736dc8e52beca.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
dde8580c86bd5c8b984f26ecf19b9f93f2dfef67c08fa99138c2bbcbfc5fb387.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
e2dfcd5e2cf232b3a0077e4a2c93598bd49a5408497bea9048e2dc1519655d19.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
e13cff8676af896dc1c0a7b82178a8dea0f39e2c1ffe5fe5fd18cbfbd38fcf13.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
ecd54bf262ce60576be4a2fb0aa1c9f5885e366c534ec7cda62e6bbca91c1e6c.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
eff8231145c90bca502126ff8268464a9c30a11436d3efd3a8aff1e9cc065d3f.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
f1d86cc4dc42d0dde7a760f09076dde6454c304a2b95c1150d244ab8d9868480.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
f2fed1d8ecfa414530d8bbc5114c80946a313a0c46a0d624c5083cfc4f9ab61b.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
f8d4ee129c6d180112f714e02ac68eed633ebf2a1bfcee7f1fe8bc91d57b4b62.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
f424f181500d06d27e5344e5ef28ff6a68eed7386ead966dd4c5f11baf14d41b.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
fbe11c778ba08a3178591ad782e1f2392419aad7d8b53be5e4e8432d7100c7fe.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
fcdf29a5c1f6567155dd0df394306fd179f9fdd04b252535d937c6537004735c.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00
ff696c1fecfcfdf1b1fe0d3a3bc7124039209dc2b8dfbb2efd9ee7dcbafc955a.json http receipts: step 6, items that passed, recovery, bounds, legacy groups, anchoring 2026-10-07 22:13:53 -04:00