open-standards/joulecontract/conformance/v1/negative-metered_unattested.json
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

318 lines
No EOL
12 KiB
JSON

{
"description": "Metered tag with no meter attestation and no metered-baseline anchor: an unbound reading is no reading, so the Energy class demotes to Unaccounted; the Metered claim is illegal.",
"expected_composed": {
"claim": "⟨JR-3 · Unaccounted · certified⟩ — demotions: metered_unattested; unaccounted",
"demotions": [
"metered_unattested",
"unaccounted"
],
"max_profile": {
"energy": "Unaccounted",
"governance": "certified",
"rigor": "JR-3"
},
"permits_claimed_profile": false
},
"receipt": {
"claimed_profile": {
"energy": "Metered",
"governance": "certified",
"rigor": "JR-3"
},
"contract": "sha2-256:76dc6fd370236adb2b7c31fb63a6e666f929aceecadd6be83aa8d75fb4891780",
"discharge": [
{
"engagement": {
"compensated_by": "did:web:relying-bank.example",
"selected_by": "did:web:relying-bank.example"
},
"mode": null,
"obligation": {
"kind": "pre",
"text": "all orders signed"
},
"qualification": {
"attestation": "sha2-256:d927ef51dd5dbd9b3632c09b7ecabee59e1fac0707001a57c88bb905a1291f40",
"root": "human-attested",
"signer_key": "sha2-256:f11456540629ae942ff3f9544d0f3f2f3355ef1e80326c1310281e0d9ab13ac0",
"valid_until": 20000,
"validated_at": 10000
},
"re_discharged_by": null,
"recourse": "ISAE3000",
"result": "closed",
"tier": "sha2-256:3cc32cec487dce142a356163d3e6d99998a96cdf35411340e80c31804b9b9bd5",
"tier_class": "deterministic",
"tier_operator_keys": [
"sha2-256:32b9a4cebd230a5cb6c495576f3e4afb5a32bea5f7c01fd1b4dcf0001f282793"
],
"verifier_entity": "vLEI:5493-A1",
"verifier_keys": [
"sha2-256:0efbbcb3197f91e4dbc2e9484080952b1139d4e6bab640bc24db13e7f8a2125a"
]
},
{
"engagement": {
"compensated_by": "did:web:relying-bank.example",
"selected_by": "did:web:relying-bank.example"
},
"mode": null,
"obligation": {
"kind": "pre",
"text": "sum(debits) == sum(credits)"
},
"qualification": {
"attestation": "sha2-256:d927ef51dd5dbd9b3632c09b7ecabee59e1fac0707001a57c88bb905a1291f40",
"root": "human-attested",
"signer_key": "sha2-256:f11456540629ae942ff3f9544d0f3f2f3355ef1e80326c1310281e0d9ab13ac0",
"valid_until": 20000,
"validated_at": 10000
},
"re_discharged_by": null,
"recourse": "ISAE3000",
"result": "closed",
"tier": "sha2-256:ab1aeaa87644e79faef08d9428a87c6095c419a8f44032e85f41215855d48c61",
"tier_class": "deterministic",
"tier_operator_keys": [
"sha2-256:32b9a4cebd230a5cb6c495576f3e4afb5a32bea5f7c01fd1b4dcf0001f282793"
],
"verifier_entity": "vLEI:5493-B2",
"verifier_keys": [
"sha2-256:640b3b64b111999b35c821031a2f467af4f1f0c6b33a071761f963c999a892db"
]
},
{
"engagement": {
"compensated_by": "did:web:relying-bank.example",
"selected_by": "did:web:relying-bank.example"
},
"mode": null,
"obligation": {
"kind": "post",
"text": "ledger balanced"
},
"qualification": {
"attestation": "sha2-256:d927ef51dd5dbd9b3632c09b7ecabee59e1fac0707001a57c88bb905a1291f40",
"root": "human-attested",
"signer_key": "sha2-256:f11456540629ae942ff3f9544d0f3f2f3355ef1e80326c1310281e0d9ab13ac0",
"valid_until": 20000,
"validated_at": 10000
},
"re_discharged_by": null,
"recourse": "ISAE3000",
"result": "closed",
"tier": "sha2-256:035cf8cf094f961c26d763d399c3e8e7529225b7ebe33b24e51d7fede0df5199",
"tier_class": "deterministic",
"tier_operator_keys": [
"sha2-256:32b9a4cebd230a5cb6c495576f3e4afb5a32bea5f7c01fd1b4dcf0001f282793"
],
"verifier_entity": "vLEI:5493-A1",
"verifier_keys": [
"sha2-256:0efbbcb3197f91e4dbc2e9484080952b1139d4e6bab640bc24db13e7f8a2125a"
]
},
{
"engagement": {
"compensated_by": "did:web:relying-bank.example",
"selected_by": "did:web:relying-bank.example"
},
"mode": null,
"obligation": {
"kind": "post",
"text": "each order has a settlement id"
},
"qualification": {
"attestation": "sha2-256:d927ef51dd5dbd9b3632c09b7ecabee59e1fac0707001a57c88bb905a1291f40",
"root": "human-attested",
"signer_key": "sha2-256:f11456540629ae942ff3f9544d0f3f2f3355ef1e80326c1310281e0d9ab13ac0",
"valid_until": 20000,
"validated_at": 10000
},
"re_discharged_by": null,
"recourse": "ISAE3000",
"result": "closed",
"tier": "sha2-256:422780905a0dedb73cfcef39e89c9d75932682c5db44c0c11975ad434db488b4",
"tier_class": "deterministic",
"tier_operator_keys": [
"sha2-256:32b9a4cebd230a5cb6c495576f3e4afb5a32bea5f7c01fd1b4dcf0001f282793"
],
"verifier_entity": "vLEI:5493-B2",
"verifier_keys": [
"sha2-256:640b3b64b111999b35c821031a2f467af4f1f0c6b33a071761f963c999a892db"
]
},
{
"engagement": {
"compensated_by": "did:web:relying-bank.example",
"selected_by": "did:web:relying-bank.example"
},
"mode": null,
"obligation": {
"kind": "inv",
"text": "no order in two settlements"
},
"qualification": {
"attestation": "sha2-256:d927ef51dd5dbd9b3632c09b7ecabee59e1fac0707001a57c88bb905a1291f40",
"root": "human-attested",
"signer_key": "sha2-256:f11456540629ae942ff3f9544d0f3f2f3355ef1e80326c1310281e0d9ab13ac0",
"valid_until": 20000,
"validated_at": 10000
},
"re_discharged_by": null,
"recourse": "ISAE3000",
"result": "closed",
"tier": "sha2-256:291ad7f932cd556b879e0d97e829a9d54af6246b5041b71739ef7e2c3f4563a6",
"tier_class": "deterministic",
"tier_operator_keys": [
"sha2-256:32b9a4cebd230a5cb6c495576f3e4afb5a32bea5f7c01fd1b4dcf0001f282793"
],
"verifier_entity": "vLEI:5493-A1",
"verifier_keys": [
"sha2-256:0efbbcb3197f91e4dbc2e9484080952b1139d4e6bab640bc24db13e7f8a2125a"
]
},
{
"engagement": {
"compensated_by": "did:web:relying-bank.example",
"selected_by": "did:web:relying-bank.example"
},
"mode": null,
"obligation": {
"kind": "inv",
"text": "no negative balance at any step"
},
"qualification": {
"attestation": "sha2-256:d927ef51dd5dbd9b3632c09b7ecabee59e1fac0707001a57c88bb905a1291f40",
"root": "human-attested",
"signer_key": "sha2-256:f11456540629ae942ff3f9544d0f3f2f3355ef1e80326c1310281e0d9ab13ac0",
"valid_until": 20000,
"validated_at": 10000
},
"re_discharged_by": null,
"recourse": "ISAE3000",
"result": "closed",
"tier": "sha2-256:589039b6a5c6a4ecb1a860402d9ffe7bc602b12561c120d7d9ecd60aff7a12c1",
"tier_class": "deterministic",
"tier_operator_keys": [
"sha2-256:32b9a4cebd230a5cb6c495576f3e4afb5a32bea5f7c01fd1b4dcf0001f282793"
],
"verifier_entity": "vLEI:5493-B2",
"verifier_keys": [
"sha2-256:640b3b64b111999b35c821031a2f467af4f1f0c6b33a071761f963c999a892db"
]
},
{
"engagement": {
"compensated_by": "did:web:relying-bank.example",
"selected_by": "did:web:relying-bank.example"
},
"mode": "observed",
"obligation": {
"kind": "frame",
"text": "frame: ledger table+settlement index"
},
"qualification": {
"attestation": "sha2-256:d927ef51dd5dbd9b3632c09b7ecabee59e1fac0707001a57c88bb905a1291f40",
"root": "human-attested",
"signer_key": "sha2-256:f11456540629ae942ff3f9544d0f3f2f3355ef1e80326c1310281e0d9ab13ac0",
"valid_until": 20000,
"validated_at": 10000
},
"re_discharged_by": null,
"recourse": "ISAE3000",
"result": "closed",
"tier": "sha2-256:26b92e9480524489d4294a485cdd86591d5defdb357254ef592db1dd60337963",
"tier_class": "deterministic",
"tier_operator_keys": [
"sha2-256:32b9a4cebd230a5cb6c495576f3e4afb5a32bea5f7c01fd1b4dcf0001f282793"
],
"verifier_entity": "vLEI:5493-A1",
"verifier_keys": [
"sha2-256:0efbbcb3197f91e4dbc2e9484080952b1139d4e6bab640bc24db13e7f8a2125a"
]
}
],
"enb_ref": "sha2-256:812e1165c85ae3ff795ec46b4b9cdf59ad41409cb4fbad6feebe8a7c438f0d37",
"energy_anchor": null,
"evidence": "sha2-256:7238b33dd4d4854239c74c73579ed52d31f53adc4dc0e8b6110ac54ff248b09c",
"execution": [
"sha2-256:3cc32cec487dce142a356163d3e6d99998a96cdf35411340e80c31804b9b9bd5",
"sha2-256:ab1aeaa87644e79faef08d9428a87c6095c419a8f44032e85f41215855d48c61",
"sha2-256:035cf8cf094f961c26d763d399c3e8e7529225b7ebe33b24e51d7fede0df5199",
"sha2-256:422780905a0dedb73cfcef39e89c9d75932682c5db44c0c11975ad434db488b4",
"sha2-256:291ad7f932cd556b879e0d97e829a9d54af6246b5041b71739ef7e2c3f4563a6",
"sha2-256:589039b6a5c6a4ecb1a860402d9ffe7bc602b12561c120d7d9ecd60aff7a12c1",
"sha2-256:26b92e9480524489d4294a485cdd86591d5defdb357254ef592db1dd60337963"
],
"generator": {
"attestation": "sha2-256:ea72cbd4d841ebab39268fbbb8b9af277da552ce798ae29765fd97e4ca524028",
"attestation_signer": "sha2-256:3d916499376bd23e7c47ad52a197ebc7a43cb0039ca22d8f89babe024e70604e",
"entity": "vLEI:5493-PROD",
"human_principals": [
"did:web:eng-a.example"
],
"key_set": [
"sha2-256:92a910aad61aeee1ce387329cf663fa0914740118188f86ccf7cf1746b817405",
"sha2-256:d1990f97a1f4fe7b8e86da8c03c9dd3f7d536c14aa4a6f9eedab07f34cd961b0"
],
"loop_governance": {
"contract": "sha2-256:5b0490189b4732e08aebe0bb63c1bc05fd115882c7213206413e01de7646a8f9",
"discharged_by": [
"sha2-256:0efbbcb3197f91e4dbc2e9484080952b1139d4e6bab640bc24db13e7f8a2125a"
],
"root": "human-attested"
},
"system": "joulecode-agent",
"version_digest": "sha2-256:a2d42c4aa884e21216cbb8da4c7ba2fcf9b6033b2331666e666145c24caf7a38"
},
"grid_mix": null,
"joules_allowed": 3.0,
"joules_spent": 2.1,
"meter": null,
"provenance": "Metered",
"receipt_signer": "sha2-256:d1990f97a1f4fe7b8e86da8c03c9dd3f7d536c14aa4a6f9eedab07f34cd961b0",
"register_pin": "sha2-256:68f5ca24886c168ce4c00d5cbf75987b3a76f35cd1624bab599fc201dde059fb",
"transition": "sha2-256:25e103f382c2bb472dbba05ba0ed7c46cfde15284a5c3f31e05cefc8b7d46b70"
},
"sealed_context": {
"evidence_bundle_address": "sha2-256:7238b33dd4d4854239c74c73579ed52d31f53adc4dc0e8b6110ac54ff248b09c",
"interval": {
"receipt": {
"at": 160,
"authority": "did:web:tsa-1.example",
"independent": true
},
"start": {
"at": 100,
"authority": "did:web:tsa-1.example",
"independent": true
}
},
"key_log": {
"events": [
{
"Added": {
"at": 0,
"key": "sha2-256:0efbbcb3197f91e4dbc2e9484080952b1139d4e6bab640bc24db13e7f8a2125a"
}
},
{
"Added": {
"at": 0,
"key": "sha2-256:640b3b64b111999b35c821031a2f467af4f1f0c6b33a071761f963c999a892db"
}
},
{
"Added": {
"at": 0,
"key": "sha2-256:9fb646f44ce13ba86b62e1be7bbc6a6a6ef5e589f6a61fad337e2b86889d8087"
}
}
]
},
"max_anchor_latency_secs": 3600,
"note": "The bundle's five members (qualification, meter, and generator attestations; the CONTRACT's ceiling-derivation attestation; the signed EnB object) ship as bytes in evidence-bundle.json. Bundle address = sha2-256 of the LF-joined, lexicographically sorted member address strings (SPEC §5.1.3).",
"open_breach_unamended": false,
"transition_end_at": 150
}
}