energy: the operating point, the residual, and alignment with network-layer identities #86

Merged
dcharlot merged 1 commit from wai/energy-operating-point into main 2026-09-10 12:22:43 -04:00
Owner

The energy field is contested, not empty. The prescriptive half is a decade old and ratified — ISO/IEC 23001-11 carries decoding-operation-reduction metadata whose purpose is to make a decoder do less work, with a companion carriage part now moving it. WAI's half is the measured one. Neither scores against the other, and that gap is where a joule figure stops meaning anything.

Degradation-blindness (§7.1)

A receipt that records joules spent, and nothing about how much work the decode was asked to do, rewards the wrong behaviour: a sink can always spend fewer joules by decoding worse. energy-measurement.md §5's recomputable-work-unit rule blocks the substitution at the byte-exact tier — but not at entropy-consistency, and not for the conventional codecs WAI already carries.

Request / commitment / delivery (§7.2)

Three distinct fields, because the interesting cases are the ones where they differ.

  • A receipt MUST NOT carry op_delivered alone — that is the degradation-blind case.
  • op_committed MUST be what the receiver stated even where it differs from the request. A commitment that silently becomes the request is not a commitment.
  • A sink that honoured a reduction request MUST NOT claim decode-equivalence (per #81).

This converts a recorded number into a number measured against a promise. The prescriptive standards say what should be spent; the measurement standards say what was; nobody scores the second against the first.

The residual (§7.3)

Where a complexity descriptor and a measured binding cover the same reconstruction, the receipt MUST carry the signed difference between predicted and measured energy — over the same work unit, never without the acquisition class of the measured term, and never suppressed for being large. The large ones are the informative ones; suppressing them turns a falsifiable claim into an unfalsifiable one.

A complexity descriptor is a prediction about energy, and until something records what actually happened against it, the prediction can never be wrong. §7.3 closes that loop inside the artifact.

Network-layer alignment (energy-measurement §2.1)

HwShunt/ModelBased/Estimator is a private vocabulary, and coarser than the graded accuracy hierarchy an adopted IETF GREEN draft defines for device energy. An implementation reporting under both SHOULD derive rather than assign independently, MUST say which identity it derived from, MUST NOT let a derivation improve the class, and MUST declare the tolerance the class implies — a class without a tolerance is a label.

WAI does not adopt that model; the scopes differ (device vs per-object) and conflating them would breach §4. What's required is that two vocabularies for one property don't contradict each other.

Ingest queue items 3 and 8 (#80 §5.3 a–e).

🤖 Generated with Claude Code

The energy field is **contested, not empty**. The prescriptive half is a decade old and ratified — ISO/IEC 23001-11 carries decoding-operation-reduction metadata whose purpose is to make a decoder do *less* work, with a companion carriage part now moving it. WAI's half is the measured one. Neither scores against the other, and that gap is where a joule figure stops meaning anything. ### Degradation-blindness (§7.1) A receipt that records joules spent, and nothing about how much work the decode was *asked* to do, rewards the wrong behaviour: **a sink can always spend fewer joules by decoding worse.** `energy-measurement.md` §5's recomputable-work-unit rule blocks the substitution at the byte-exact tier — but not at `entropy-consistency`, and not for the conventional codecs WAI already carries. ### Request / commitment / delivery (§7.2) Three distinct fields, because the interesting cases are the ones where they differ. - A receipt MUST NOT carry `op_delivered` alone — that *is* the degradation-blind case. - `op_committed` MUST be what the receiver stated even where it differs from the request. **A commitment that silently becomes the request is not a commitment.** - A sink that honoured a reduction request MUST NOT claim `decode-equivalence` (per #81). This converts a recorded number into a number measured against a promise. The prescriptive standards say what *should* be spent; the measurement standards say what *was*; nobody scores the second against the first. ### The residual (§7.3) Where a complexity descriptor and a measured binding cover the same reconstruction, the receipt MUST carry the signed difference between predicted and measured energy — over the same work unit, never without the acquisition class of the measured term, and **never suppressed for being large**. The large ones are the informative ones; suppressing them turns a falsifiable claim into an unfalsifiable one. A complexity descriptor is a *prediction* about energy, and until something records what actually happened against it, the prediction can never be wrong. §7.3 closes that loop inside the artifact. ### Network-layer alignment (`energy-measurement` §2.1) `HwShunt`/`ModelBased`/`Estimator` is a private vocabulary, and coarser than the graded accuracy hierarchy an adopted **IETF GREEN** draft defines for device energy. An implementation reporting under both SHOULD derive rather than assign independently, MUST say which identity it derived from, **MUST NOT let a derivation improve the class**, and MUST declare the tolerance the class implies — a class without a tolerance is a label. WAI does not adopt that model; the scopes differ (device vs per-object) and conflating them would breach §4. What's required is that two vocabularies for one property don't contradict each other. Ingest queue items 3 and 8 (#80 §5.3 a–e). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
energy: the operating point, the residual, and alignment with network-layer identities
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 54s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 55s
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 / proof-rs (pull_request) Successful in 1m10s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 1m59s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 4m39s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 46s
standards workspaces build + test / map-rs (pull_request) Successful in 49s
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 2m39s
standards workspaces build + test / arl-rs (pull_request) Successful in 9m13s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 9m24s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 9m41s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 9m12s
standards workspaces build + test / sense-rs (pull_request) Successful in 8m55s
a8d2ce80f9
The energy field is contested, not empty. The prescriptive half is a decade old
and ratified — ISO/IEC 23001-11 carries decoding-operation-reduction metadata
whose purpose is to make a decoder do less work, and a companion carriage part
now moves it. WAI's half is the measured one. Neither half currently scores
against the other, and that gap is where a joule figure stops meaning anything.

DEGRADATION-BLINDNESS (§7.1). A receipt that records joules spent, and nothing
about how much work the decode was asked to do, rewards the wrong behaviour: a
sink can always spend fewer joules by decoding worse. energy-measurement.md §5's
recomputable-work-unit rule blocks the substitution at the byte-exact tier, but
not at `entropy-consistency`, and not for the conventional codecs WAI already
carries. So the receipt has to carry the operating point, not only the cost.

REQUEST / COMMITMENT / DELIVERY (§7.2). Three distinct fields, because the
interesting cases are exactly the ones where they differ. A receipt MUST NOT
carry `op_delivered` alone — that is the degradation-blind case. `op_committed`
MUST be what the receiver stated even where it differs from the request, since a
commitment that silently becomes the request is not a commitment. And a sink that
honoured a reduction request MUST NOT claim `decode-equivalence`, per the tier
rule.

This converts a recorded number into a number measured against a promise. The
prescriptive standards say what should be spent; the measurement standards say
what was; nobody scores the second against the first.

THE RESIDUAL (§7.3). Where a complexity descriptor and a measured binding cover
the same reconstruction, the receipt MUST carry the signed difference between
predicted and measured energy — over the same work unit, never without the
acquisition class of the measured term, and never suppressed for being large.
The large ones are the informative ones, and suppressing them turns a falsifiable
claim into an unfalsifiable one.

A complexity descriptor is a prediction about energy, and until something records
what actually happened against it, the prediction can never be wrong. §7.3 closes
that loop inside the artifact rather than in a report.

COMPANION CAPABILITY (§7.4). Green-metadata semantics register the way
wai.meta.hdr10plus and wai.meta.dovi do — name the descriptor class, sink supplies
the decoder, no carriage adopted. ISOBMFF/DASH carriage is somebody else's layer.

NETWORK-LAYER ALIGNMENT (energy-measurement §2.1). WAI's HwShunt/ModelBased/
Estimator is a private vocabulary, and coarser than the graded accuracy hierarchy
an adopted IETF GREEN draft defines for device energy. An implementation
reporting under both SHOULD derive rather than assign independently, MUST say
which identity it derived from, MUST NOT let a derivation improve the class, and
MUST declare the tolerance the class implies — a class without a tolerance is a
label. WAI does not adopt that model; the scopes differ (device vs per-object)
and conflating them would breach §4. What is required is that two vocabularies
for one property do not contradict each other.

Ingest queue item 3 and item 8 from the landscape survey (#80 §5.3 a–e).

Co-Authored-By: Claude Opus 5 <[email protected]>
dcharlot force-pushed wai/energy-operating-point from a8d2ce80f9
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 54s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 55s
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 / proof-rs (pull_request) Successful in 1m10s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 1m59s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 4m39s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 46s
standards workspaces build + test / map-rs (pull_request) Successful in 49s
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 2m39s
standards workspaces build + test / arl-rs (pull_request) Successful in 9m13s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 9m24s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 9m41s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 9m12s
standards workspaces build + test / sense-rs (pull_request) Successful in 8m55s
to 282ef7e560
Some checks failed
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / aac-rs (pull_request) Successful in 33s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 35s
standards workspaces build + test / eoc-rs (pull_request) Failing after 1s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m13s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m12s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m14s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 36s
standards workspaces build + test / map-rs (pull_request) Successful in 29s
standards workspaces build + test / mesh-rs (pull_request) Successful in 29s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m0s
standards workspaces build + test / openpay (pull_request) Successful in 1m17s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 36s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 16s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m36s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 33s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 18s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 43s
standards workspaces build + test / arl-rs (pull_request) Has been cancelled
standards workspaces build + test / joule-ui-rs (pull_request) Has been cancelled
standards workspaces build + test / jouledesk-rs (pull_request) Has been cancelled
standards workspaces build + test / joulehook-rs (pull_request) Has been cancelled
standards workspaces build + test / sense-rs (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 49s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 26s
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:51 -04:00
Compare
dcharlot force-pushed wai/energy-operating-point from 282ef7e560
Some checks failed
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / aac-rs (pull_request) Successful in 33s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 35s
standards workspaces build + test / eoc-rs (pull_request) Failing after 1s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m13s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m12s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m14s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 36s
standards workspaces build + test / map-rs (pull_request) Successful in 29s
standards workspaces build + test / mesh-rs (pull_request) Successful in 29s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m0s
standards workspaces build + test / openpay (pull_request) Successful in 1m17s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 36s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 16s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m36s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 33s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 18s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 43s
standards workspaces build + test / arl-rs (pull_request) Has been cancelled
standards workspaces build + test / joule-ui-rs (pull_request) Has been cancelled
standards workspaces build + test / jouledesk-rs (pull_request) Has been cancelled
standards workspaces build + test / joulehook-rs (pull_request) Has been cancelled
standards workspaces build + test / sense-rs (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 49s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 26s
WAI conformance / cargo-class corpora · windows (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · windows (pull_request) Has been cancelled
to 54db9c6f4d
All checks were successful
standards workspaces build + test / aac-rs (pull_request) Successful in 39s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 45s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 2m41s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 37s
standards workspaces build + test / map-rs (pull_request) Successful in 32s
standards workspaces build + test / mesh-rs (pull_request) Successful in 54s
standards workspaces build + test / openpay (pull_request) Successful in 1m26s
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m51s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m17s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m16s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m3s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m34s
standards workspaces build + test / arl-rs (pull_request) Successful in 10m10s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 10m1s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 10m30s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 10m17s
standards workspaces build + test / sense-rs (pull_request) Successful in 10m27s
2026-09-10 12:01:56 -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!86
No description provided.