determinism-tiers: a tier covers what the sink emits, not the decode alone #81

Merged
dcharlot merged 1 commit from wai/determinism-tier-covers-emitted-medium into main 2026-09-10 12:18:36 -04:00
Owner

decode-equivalence claims "the whole decode to the final medium reproduces byte-for-byte", and §3 makes it the precondition for a receipt carrying a reproducible decoded-medium hash and for a hard provenance binding over the rendered content.

But the tier was defined over the decode stage only. The file has no occurrence of post-decode, post-filter, SEI, or hint — verified directly, not inferred.

What walks through the gap

Two mechanisms in force today, both arriving in the same pipe as the codestream:

  • ITU-T H.274 (V4, 01/2026) nnpfc/nnpfa SEI activate a neural post-filter after decoding, changing output pixels.
  • ISO/IEC 23001-11 decoding-operation-reduction metadata exists precisely to make a decoder spend fewer joules by doing less work — deliberate degradation, invisible to a conformance check that stops at the decoder.

So a capability can hold decode-equivalence honestly, emit a receipt carrying a "reproducible decoded-medium hash", and have that hash describe something the viewer never saw. The hash verifies. It attests the wrong artifact.

This is the same defect shape as the proof ladder fixed earlier in #65: a claim that outruns what was actually verified. There, an absent solver escalated into a stand-in that proved anything; the fix was that it yields Unproved. Here, a tier claim is void if the sink alters the medium after decode.

The fix

Adds §2 "What a tier covers" with three rules:

  1. A sink claiming a tier MUST evaluate it over the medium it emits — apply post-decode processing, or claim the tier, not both.
  2. An object honouring a decoding-operation-reduction hint MUST NOT claim decode-equivalence, and a receipt over its output MUST NOT carry a reproducible decoded-medium hash.
  3. A capability's registration SHOULD state whether its payload can carry post-decode directives at all.

Plus a §3 cross-reference so the rule is visible where tiers are declared.

Rule 2 is the one with teeth for the energy work: reporting joules while concealing the degradation that bought them states a cost without its consideration.

No wire format change — vocabulary and conformance framing only, as the extension already is. Surfaced by the landscape survey in #80 and verified directly against this file.

🤖 Generated with Claude Code

`decode-equivalence` claims *"the whole decode to the final medium reproduces byte-for-byte"*, and §3 makes it the precondition for a receipt carrying a reproducible decoded-medium hash and for a hard provenance binding over the **rendered** content. But the tier was defined over the decode stage only. The file has **no occurrence** of `post-decode`, `post-filter`, `SEI`, or `hint` — verified directly, not inferred. ### What walks through the gap Two mechanisms in force today, both arriving in the same pipe as the codestream: - **ITU-T H.274 (V4, 01/2026)** `nnpfc`/`nnpfa` SEI activate a neural post-filter **after** decoding, changing output pixels. - **ISO/IEC 23001-11** decoding-operation-reduction metadata exists precisely to make a decoder spend fewer joules by doing less work — deliberate degradation, invisible to a conformance check that stops at the decoder. So a capability can hold `decode-equivalence` honestly, emit a receipt carrying a "reproducible decoded-medium hash", and have that hash describe something the viewer never saw. **The hash verifies. It attests the wrong artifact.** This is the same defect shape as the proof ladder fixed earlier in #65: a claim that outruns what was actually verified. There, an absent solver escalated into a stand-in that proved anything; the fix was that it yields `Unproved`. Here, a tier claim is void if the sink alters the medium after decode. ### The fix Adds §2 *"What a tier covers"* with three rules: 1. A sink claiming a tier MUST evaluate it over the medium it **emits** — apply post-decode processing, or claim the tier, not both. 2. An object honouring a decoding-operation-reduction hint MUST NOT claim `decode-equivalence`, and a receipt over its output MUST NOT carry a reproducible decoded-medium hash. 3. A capability's registration SHOULD state whether its payload can carry post-decode directives at all. Plus a §3 cross-reference so the rule is visible where tiers are declared. Rule 2 is the one with teeth for the energy work: **reporting joules while concealing the degradation that bought them states a cost without its consideration.** No wire format change — vocabulary and conformance framing only, as the extension already is. Surfaced by the landscape survey in #80 and verified directly against this file. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
determinism-tiers: a tier covers what the sink emits, not the decode alone
All checks were successful
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / aac-rs (pull_request) Successful in 44s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 1m3s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m48s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m14s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m10s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 3m59s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m0s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 44s
standards workspaces build + test / arl-rs (pull_request) Successful in 7m11s
standards workspaces build + test / map-rs (pull_request) Successful in 41s
standards workspaces build + test / mesh-rs (pull_request) Successful in 35s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m31s
standards workspaces build + test / openpay (pull_request) Successful in 2m53s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 7m27s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 6m34s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 7m39s
standards workspaces build + test / sense-rs (pull_request) Successful in 8m7s
03a1db0ebc
`decode-equivalence` claims "the whole decode to the final medium reproduces
byte-for-byte", and §3 makes it the precondition for a receipt carrying a
reproducible decoded-medium hash and for a hard provenance binding over the
RENDERED content. But the tier was defined over the decode stage only, and said
nothing about processing applied after a conformant decode.

Two mechanisms in force today walk through that gap, both arriving in the same
pipe as the codestream:

  * ITU-T H.274 (V4, 01/2026) `nnpfc`/`nnpfa` SEI activate a neural post-filter
    AFTER decoding, changing output pixels.
  * ISO/IEC 23001-11 decoding-operation-reduction metadata exists precisely to
    make a decoder spend fewer joules by doing less work — deliberate
    degradation, invisible to a conformance check that stops at the decoder.

So a capability could hold `decode-equivalence` honestly, emit a receipt with a
"reproducible decoded-medium hash", and have that hash describe something the
viewer never saw. The hash verifies. It attests the wrong artifact.

This is the same defect shape the proof ladder had: a claim that outruns what was
actually verified. There the fix was that an absent solver yields Unproved; here
it is that a tier claim is void if the sink alters the medium after decode.

Adds §2 "What a tier covers" with three rules — evaluate the tier over the
EMITTED medium; an object honouring a reduction hint MUST NOT claim
`decode-equivalence` nor carry a reproducible decoded-medium hash; a
registration SHOULD state whether its payload can carry post-decode directives at
all — plus a §3 cross-reference so the rule is visible where tiers are declared.

The second rule is the one with teeth for the energy work: reporting joules while
concealing the degradation that bought them states a cost without its
consideration.

No wire format change; vocabulary and conformance framing only, as the extension
already is. Found by the landscape survey in #80, then verified directly against
this file — it has no occurrence of post-decode, post-filter, SEI, or hint.

Co-Authored-By: Claude Opus 5 <[email protected]>
dcharlot force-pushed wai/determinism-tier-covers-emitted-medium from 03a1db0ebc
All checks were successful
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / aac-rs (pull_request) Successful in 44s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 1m3s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m48s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m14s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m10s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 3m59s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m0s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 44s
standards workspaces build + test / arl-rs (pull_request) Successful in 7m11s
standards workspaces build + test / map-rs (pull_request) Successful in 41s
standards workspaces build + test / mesh-rs (pull_request) Successful in 35s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m31s
standards workspaces build + test / openpay (pull_request) Successful in 2m53s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 7m27s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 6m34s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 7m39s
standards workspaces build + test / sense-rs (pull_request) Successful in 8m7s
to f5cfabb8c3
Some checks failed
jouleclaw public surface must stay documented / Public-surface audit (jouleclaw-rs) (pull_request) Successful in 57s
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m47s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m13s
standards workspaces build + test / aac-rs (pull_request) Successful in 34s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m12s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 41s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m2s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m49s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 38s
standards workspaces build + test / map-rs (pull_request) Successful in 29s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m33s
standards workspaces build + test / mesh-rs (pull_request) Successful in 33s
standards workspaces build + test / openpay (pull_request) Successful in 1m24s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 34s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 18s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 29s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 14s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 39s
standards workspaces build + test / arl-rs (pull_request) Successful in 11m29s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 10m45s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 9m29s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 9m44s
standards workspaces build + test / sense-rs (pull_request) Successful in 9m45s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 1m13s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 23s
WAI conformance / cargo-class corpora · windows (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · windows (pull_request) Has been cancelled
2026-09-10 10:25:50 -04:00
Compare
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Transaction-Science/open-standards!81
No description provided.