wai: energy reports, labelled JWP leaves and what signatures cover #133

Merged
dcharlot merged 6 commits from wai/land-14-energy-reporting into main 2026-10-01 14:54:28 -04:00

2026-10-01

Transaction Science
Merge main into wai/land-14-energy-reporting
Some checks failed
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Has been cancelled
wai cross-architecture byte-equality / linux-aarch64 (pull_request) Has been cancelled
wai cross-architecture byte-equality / linux-x86_64 (pull_request) Has been cancelled
wai cross-architecture byte-equality / macos-arm64 (reference) (pull_request) Has been cancelled
standards workspaces build + test / jouleclaw-rs (pull_request) Has been cancelled
standards workspaces build + test / aac-rs (pull_request) Has been cancelled
standards workspaces build + test / arl-rs (pull_request) Has been cancelled
standards workspaces build + test / eoc-rs (pull_request) Has been cancelled
standards workspaces build + test / jcp-rs (pull_request) Has been cancelled
standards workspaces build + test / joule-code-rs (pull_request) Has been cancelled
standards workspaces build + test / joule-ui-rs (pull_request) Has been cancelled
standards workspaces build + test / joulecontract-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 / map-rs (pull_request) Has been cancelled
standards workspaces build + test / mesh-rs (pull_request) Has been cancelled
standards workspaces build + test / openpay (pull_request) Has been cancelled
standards workspaces build + test / proof-rs (pull_request) Has been cancelled
standards workspaces build + test / sandbox-rs (pull_request) Has been cancelled
standards workspaces build + test / sense-rs (pull_request) Has been cancelled
standards workspaces build + test / smart-byte-rs (pull_request) Has been cancelled
standards workspaces build + test / macOS energy backend (jcp-energy) (pull_request) Has been cancelled
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Has been cancelled
no-vanity-metrics / WAI public text names no comparison (pull_request) Has been cancelled
no-vanity-metrics / WAI public text names no company or product (pull_request) Has been cancelled
joule-code conformance gate / Build + round-trip C1-C4 vectors (pull_request) Has been cancelled
smart-byte conformance gate / Validate conformance JSON files (pull_request) Has been cancelled
smart-byte conformance gate / Second implementation reproduces every vector (pull_request) Has been cancelled
smart-byte conformance gate / Spec changes require vector-pack updates (pull_request) Has been cancelled
smart-byte conformance gate / VERSIONS.md and README.md must exist (pull_request) Has been cancelled
Main now carries links 12 and 13. This merge makes main the base of the
pull request, so its diff is this link's own change.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-01 14:53:28 -04:00
Transaction Science
Merge main into wai/land-14-energy-reporting
Some checks failed
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 32s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 44s
WAI energy receipts / energy receipts · linux (pull_request) Successful in 1m44s
wai formal verification (integer core) / kani (pull_request) Successful in 4m59s
WAI JPEG-AI whole decode (pinned inputs, required) / fetch pinned JPEG-AI inputs → whole decode + pixel hash, required (pull_request) Successful in 1m51s
WAI neural decoders end-to-end / synthetic fixtures → Rust decode → reference (±4) (pull_request) Successful in 1m18s
WAI neural sink gates / model-free refusals of the neural sink (pull_request) Successful in 34s
WAI mbt2018_mean integer decode (regenerated vectors) / regenerate mbt2018_mean integer vectors → Rust decode, required (pull_request) Successful in 3m49s
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Successful in 1m40s
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 24m31s
standards workspaces build + test / aac-rs (pull_request) Successful in 13m32s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 12m54s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 4m34s
standards workspaces build + test / map-rs (pull_request) Successful in 2m38s
standards workspaces build + test / mesh-rs (pull_request) Successful in 1m34s
standards workspaces build + test / openpay (pull_request) Successful in 15m59s
wai cross-architecture byte-equality / linux-aarch64 (pull_request) Successful in 1m17s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 12m12s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 2m7s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 3m58s
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
standards workspaces build + test / macOS energy backend (jcp-energy) (pull_request) Has been cancelled
wai cross-architecture byte-equality / macos-arm64 (reference) (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · macos (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · macos (pull_request) Has been cancelled
WAI energy receipts / energy receipts · macos (pull_request) Has been cancelled
joule-code/CHANGELOG.md: main's entry (a vendor counter is a hardware
reading only while it is demonstrably live) and this link's joule-moq 0.2.0
entry both land under the unreleased section, main's first. The joule-code
workspace builds with --locked and the joule-moq tests pass on the merge.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-01 09:54:06 -04:00
Transaction Science
wai: state what CI builds, the meters' new feature, and the /verify change
The v0.4.0 energy-report entry said the conformance build builds the
reference meters on every platform. It builds two of them, wai_meter and
wai_world_meter. wai-energy-receipts.yml builds those two, wai_video_meter
and wai_quantum_meter on linux, linux-arm64 and macos. No workflow builds
wai_prov, which needs codecs. The entry now says so, and the conformance
workflow's comment no longer names a Windows leg its matrix does not have.

The entry now records two compatibility changes. Every reference meter bin
requires receipt_claims, and Cargo skips a bin whose required features are
off without an error. POST /verify in wai-quantum-serve renders an unmetered
receipt's joules_micro as null and adds a metered member, so the crate moves
to 0.4.0 and the Wire paragraph names the change.

jwp-receipts §2.4.9 rule 2 reads "A point that is present MUST NOT be
empty", in the form of the other rules. quantum-sim names the meter's other
unmetered paths: a rail that is not live in both brackets (energy-measurement
§3.1), and a §4 ratio or §2.3 uncertainty that cannot support a figure.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-01 09:05:14 -04:00
Transaction Science
Merge wai/land-13-parameter-set-identity into wai/land-14-energy-reporting
Brings link 13's review fixes and the link 12 commits it had merged: the
strict gate reads only dispatchable capabilities, a pinned ONNX model
that keeps tensors in another file is refused with set_incomplete,
sha256.json sidecar writes are serialized, and the public text the
review found stale or overstated is corrected. The merge needed no
conflict resolution. On the merged tree the registry exports are up to
date, and the conformance workflow's library, integer-kernel, carriage
and C ABI envelope steps and the neural gates workflow's three steps
passed locally.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-01 09:01:31 -04:00
Transaction Science
wai: name jwp-conformance in the decoded-output sidecar exclusions
every_decoded_output_states_a_sha256 enumerates every wai/*-conformance
directory and requires a sha256.json sidecar or a named exclusion. The
new JWP corpus holds delivery receipts, receipt content with no decoded
output, so it is excluded for the reason the claim and OER corpora are.
Without this, the fast-kernel steps of wai-conformance.yml fail on the
assembled tree.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-01 06:48:31 -04:00
Transaction Science
wai: energy reports, labelled JWP leaves and what signatures cover
Two claim classes report on one energy figure without changing the
receipt that seals it. `measurement` carries a bracket's values as
integers with each bracket's liveness facts, the build and the power
reader, and is accepted only against the receipt that carries its
figure. `operating-point` records the requested, committed and
delivered operating points and a prediction. The ratio, verdict and
residual are derived by every reader, never stated.

energy-measurement §6.2 gives the figure and the least declaration a
report's integers support as exact integer formulas; wai-rs
`energy_report` implements them with no floating-point arithmetic.
§3.1 defines a live power reader: a rail must advance in two
consecutive intervals, in at least five and in at least four of every
five, over at least 300 ms. A frozen or held rail is refused rather than
sealed under a hardware class. An unmetered `0` is never a figure of
zero joules.

A JWP object's figure, class and origin are bound into its Merkle leaf
(`\x02`), and a labelled group payload signs the total's class, its
coverage and the parent link. An object must sit at the position its
inclusion proof walks, and group signatures follow the strict Ed25519
rule claims use. `jwp_delivery` and `energy_figure` implement this in
wai-rs; joule-moq 0.2.0 builds and verifies both labelled forms.

New corpus `jwp-conformance/` with `jwp_verify.py`, more claim vectors
with the earlier ones pinned, and a CI job that runs claim_verify.py,
differential.py and jwp_verify.py. Legacy receipts keep their bytes.
External JWP implementations must adopt the `\x02` leaf and the
labelled group payload before verifying objects or groups that use
them.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-01 06:37:25 -04:00