open-standards/joulecontract/conformance/v1
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science cbf57f71a8 joulecontract: an unattested Metered tag falls to the class its evidence supports
A Metered tag whose meter attestation did not bind was always demoted to
ModelBased, but ModelBased is defined (SPEC §4.2) as a figure anchored to
a metered baseline, with that anchor sealed. A receipt with no meter and
no anchor was therefore certified ModelBased on evidence it did not
carry. An unbound reading is no reading: the class now falls to
ModelBased only where the metered-baseline anchor is sealed, else to
Unaccounted (with the `unaccounted` demotion), on the issue side and on
the sealed-evidence side alike; an unresolved anchor still demotes a
ModelBased figure to Unaccounted after that.

SPEC §4.2 and the §15 demotion table say so. The metered_unattested
negative vector, regenerated by gen_vectors, now composes to
⟨JR-3 · Unaccounted · certified⟩ with demotions metered_unattested and
unaccounted; the other 21 vectors are byte-identical. A unit test pins
both branches (no anchor → Unaccounted; anchor → ModelBased).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 22:47:45 -04:00
..
amendment-chain.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
context-breach_unamended.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
context-timestamp_stale.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
context-verifier_revoked_window.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
contract.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
envelope-dsse.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
evidence-bundle.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
malformed-inflated-allowance.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
malformed-missing-obligations.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
MANIFEST.json joulecontract: an unattested Metered tag falls to the class its evidence supports 2026-10-11 22:47:45 -04:00
negative-engagement_undisclosed.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-frame_undischarged.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-generator_unattested.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-independent_false.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-independent_key_only.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-metered_unattested.json joulecontract: an unattested Metered tag falls to the class its evidence supports 2026-10-11 22:47:45 -04:00
negative-recourse_undeclared.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-self_attested_loop.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-static_only_frame.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-stochastic_alone_unqualified.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
negative-unterminated_chain.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
receipt-conformant.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00
receipt-jr4-conformant.json joulecontract v0.8: the implementability amendment — round five seals the pack 2026-06-10 16:21:44 -04:00