wai/ietf: draft-charlot-moq-wai-packaging-00 (review only, not submitted) + wai_priors #383
Merged
dcharlot
merged 6 commits from 2026-10-21 14:13:11 -04:00
wai/ietf-draft into main 2026-10-21
Merge origin/main into wai/ietf-draft (synthesis, AI usage)
All checks were successful
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Successful in 10s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 25s
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Successful in 4m54s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 1m26s
WAI conformance / quantum core and corpus under wasm32-wasip2 (wasmtime) (pull_request) Successful in 1m59s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 26s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 7m42s
WAI HTTP delivery / HTTP corpus · every patch and mutation in exactly one shard (pull_request) Successful in 4s
WAI HTTP delivery / HTTP corpus · verified both ways, and the differential (pull_request) Successful in 3m5s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 16m37s
WAI energy receipts / energy receipts · linux (pull_request) Successful in 10m8s
WAI HTTP delivery / cache rules · controls and labelled caches (pull_request) Successful in 1m22s
wai-pack / wai-pack · linux-arm64 (pull_request) Successful in 1m31s
wai-pack / wai-pack · linux (pull_request) Successful in 1m23s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 53s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 18m40s
wai-pack / wai-pack · dependency licences (pull_request) Successful in 1m17s
wai-quantum studio and desktop / studio · browser (pull_request) Successful in 3m3s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Successful in 4m7s
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Successful in 3m40s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 26m46s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (pull_request) Successful in 8m31s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 18m38s
wai cross-architecture byte-equality / macos-arm64 (reference) (pull_request) Successful in 39s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 26m20s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 28s
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Successful in 53s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 5m33s
wai-pack / wai-pack · macos (pull_request) Successful in 1m16s
wai-quantum studio and desktop / desktop app · macos (pull_request) Successful in 2m28s
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Merge origin/main into wai/ietf-draft
Some checks failed
wai cross-architecture byte-equality / linux-aarch64 (pull_request) Has been cancelled
wai cross-architecture byte-equality / macos-arm64 (reference) (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · macos (pull_request) Has been cancelled
WAI conformance / v2 vocabulary · manifests validate as stated (pull_request) Has been cancelled
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Has been cancelled
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · linux (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · macos (pull_request) Has been cancelled
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Has been cancelled
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Has been cancelled
WAI energy receipts / energy receipts · linux (pull_request) Has been cancelled
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Has been cancelled
WAI energy receipts / energy receipts · macos (pull_request) Has been cancelled
WAI HTTP delivery / HTTP corpus · every patch and mutation in exactly one shard (pull_request) Has been cancelled
WAI HTTP delivery / HTTP corpus · verified both ways, and the differential (pull_request) Has been cancelled
WAI HTTP delivery / cache rules · controls and labelled caches (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · linux (pull_request) Has been cancelled
wai-pack / wai-pack · linux (pull_request) Has been cancelled
wai-pack / wai-pack · linux-arm64 (pull_request) Has been cancelled
wai-pack / wai-pack · macos (pull_request) Has been cancelled
wai-pack / wai-pack · independent verifier (Python) (pull_request) Has been cancelled
wai-pack / wai-pack · the floor through a media prober (pull_request) Has been cancelled
wai-pack / wai-pack · dependency licences (pull_request) Has been cancelled
wai-quantum studio and desktop / studio · browser (pull_request) Has been cancelled
wai-quantum studio and desktop / desktop app · macos (pull_request) Has been cancelled
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Has been cancelled
WAI conformance / quantum core and corpus under wasm32-wasip2 (wasmtime) (pull_request) Has been cancelled
jouleclaw fabrics / metal (macOS, Apple GPU) (pull_request) Successful in 54s
Co-Authored-By: Claude Opus 5.5 <[email protected]>
wai/ietf: draft-charlot-moq-wai-packaging-00 and a comment on NMSF
Some checks failed
wai-pack / wai-pack · linux (pull_request) Successful in 1m31s
wai-quantum studio and desktop / studio · browser (pull_request) Successful in 2m36s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 19m4s
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Successful in 4m3s
joule-moq-room room service / joule-moq-room, every target (pull_request) Successful in 1m58s
wai cross-architecture byte-equality / linux-aarch64 (pull_request) Successful in 40s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (pull_request) Successful in 9m28s
WAI conformance / v2 vocabulary · manifests validate as stated (pull_request) Successful in 51s
standards workspaces build + test / joule-code-rs (joule-code/joule-code-rs, joule-code-rs, linux-arm64, true) (pull_request) Failing after 4m46s
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Successful in 23s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 50s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 2m22s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 8m59s
wai cross-architecture byte-equality / macos-arm64 (reference) (pull_request) Successful in 25s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 9m22s
WAI HTTP delivery / HTTP corpus · every patch and mutation in exactly one shard (pull_request) Successful in 8s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 19m25s
WAI HTTP delivery / HTTP corpus · verified both ways, and the differential (pull_request) Successful in 3m48s
wai-pack / wai-pack · linux-arm64 (pull_request) Successful in 2m22s
WAI HTTP delivery / cache rules · controls and labelled caches (pull_request) Successful in 3m9s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 36s
wai-pack / wai-pack · dependency licences (pull_request) Successful in 1m13s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 16m51s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Successful in 4m45s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 1m9s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 27m13s
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Successful in 50s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 4m43s
wai-pack / wai-pack · macos (pull_request) Successful in 1m7s
wai-quantum studio and desktop / desktop app · macos (pull_request) Successful in 2m4s
The Internet-Draft (xml2rfc v3 source and its text rendering) for WAI as an MSF packaging: the "wai" and "wai-receipts" packaging values; the envelope, dispatch with fallback, the parameter-set pin by SHA-256 and the determinism tiers; catalog fields wai_capabilities, wai_determinism, wai_priors, the receipts fields and wai_staged; the receipts track (WJR1), its verification and the WAI_RECEIPT object property; the codecs parameter; security and IANA considerations (WAI_RECEIPT requested from the Specification Required range, 0x3A41 meanwhile; no action for the packaging values; application/wai registered). 36 pages; idnits 3.3.0 reports only the three normative references to Internet-Drafts. Not submitted, and the NMSF comment is not sent: both are the owner's decision. Author email is a placeholder until the owner confirms it. Co-Authored-By: Claude Opus 5.5 <[email protected]>
jwp-receipts §3 step 3: state the link hash's domain separator
The text said "the resulting hash" without saying which. Both reference
verifiers (wai-rs jwp_delivery, joule-moq receipt) and jwp_verify.py
compute BLAKE3("moq-jwp:receipt-link\x01" || canonical_bytes(G)); the
text now says so, and §2.4.1's parent_receipt_hash row points to it.
No byte changes.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
staged-conformance/moq/priors.json and the registry export for wai_priors
Generated by `wai_staged_vectors gen` and `wai registry export` on the build host. 30 cases: members that read, each way an object breaks the catalog (capability, digest, form either way, unpinned, fallback, empty list, a second object), and each way the member does not read. Checked by `wai_staged_vectors verify` and by `staged_verify.py`. Co-Authored-By: Claude Opus 5.5 <[email protected]>
moq-streaming-format §4.2: wai_priors, pinned parameter sets in the catalog
A track of packaging `wai` may list, in its MSF catalog entry, the pins its objects carry (capability, sha256, form, advisory tier), so a sink can tell before it subscribes whether it holds the parameter sets the track needs. The catalog never stands in for the envelope: an object whose pin the member does not list, or lists differently, is refused with the track (`catalog_prior_mismatch`); a member that does not read refuses the track (`catalog_priors_malformed`). A listed tier is advisory. §5 now states the WAI_RECEIPT property's value layout and its interim type 0x3A41 from MOQT's application range, as joule-moq writes it. - wai-rs staged::moq: CatalogPriors::read / check / check_manifest, PriorsRefusal, with unit tests for each malformation and each mismatch. - wai_staged_vectors: moq/priors.json (generated; verify re-checks it). - staged_verify.py: an independent reading and check of §4.2. - codecs::registry: the `wai_priors` wire member. The corpus file and the registry export are regenerated in the next commit. Co-Authored-By: Claude Opus 5.5 <[email protected]>