open-standards/wai/extensions
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science b5b7bd3686
Some checks failed
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 3m28s
standards workspaces build + test / aac-rs (pull_request) Successful in 44s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 49s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 41s
standards workspaces build + test / map-rs (pull_request) Successful in 35s
standards workspaces build + test / mesh-rs (pull_request) Successful in 30s
joule-code conformance gate / Build + round-trip C1-C4 vectors (pull_request) Successful in 1m29s
standards workspaces build + test / openpay (pull_request) Successful in 1m37s
wai cross-architecture byte-equality / linux-aarch64 (pull_request) Successful in 18s
jouleclaw public surface must stay documented / Public-surface audit (jouleclaw-rs) (pull_request) Successful in 58s
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 56s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 17s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m48s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m19s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m11s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m7s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 2m33s
wai cross-architecture byte-equality / linux-x86_64 (pull_request) Successful in 14s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 34s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 17s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 42s
WAI neural decoders end-to-end / synthetic fixtures → Rust decode → reference (±4) (pull_request) Failing after 1m5s
standards workspaces build + test / arl-rs (pull_request) Successful in 2m0s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 2m15s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 2m20s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 2m14s
standards workspaces build + test / sense-rs (pull_request) Successful in 2m16s
wai cross-architecture byte-equality / macos-arm64 (reference) (pull_request) Successful in 14s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 47s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 14s
wai cross-architecture byte-equality / windows-x86_64 (pull_request) Has been cancelled
WAI conformance / cargo-class corpora · windows (pull_request) Has been cancelled
WAI conformance / cross-arch byte-equality · windows (pull_request) Has been cancelled
wai: reconcile the WebCodecs mapping with capability constraints
This mapping was written on 2026-08-03 and sat unmerged while
`extensions/capability-constraints.md` landed, which makes dispatch a
precondition check: a sink satisfies a capability when it advertises `cap` AND
the object's declared parameters satisfy a registered constraint set. Rebased
onto current main, the two extensions read as overlapping claims about §4 with
nothing saying how they relate.

They are not in tension, and the newer one makes this one sharper.
`isConfigSupported()` is not a codec-string test — it takes a whole
`VideoDecoderConfig`, codec string plus `codedWidth`, `codedHeight` and the rest
— so it is a constraint evaluator already, and a browser satisfies the
constraint extension's three requirements structurally rather than through extra
machinery: the query is pre-flight, so evaluation happens before dispatch rather
than during it; it answers for a configuration, so the answer is per object and
not per sink; and `supported: false` is a negative answer returned before any
payload is committed to, which is the required treatment of an object that
satisfies no set. The call also returns the normalised config the platform would
accept, which is the accepted parameter set, so a sink SHOULD use it rather than
re-derive one.

The limit is stated rather than glossed. WebCodecs' parameter vocabulary is the
conventional-media one — codec, resolution, frame rate, bit depth, profile —
which is the same shape as the ratified registers `capability-constraints.md` §3
draws on, and it has the same gap: no WebCodecs configuration describes the
neural, quantum, world or haptic families. Those have no native tier to
constrain at all, resolve through the WASM tier, and stay unconstrained until
WAI authors their register entries. That is the state §3 already describes, not
a shortfall introduced here.

Framing renumbered §5 → §6. Docs only; `check-no-vanity-metrics.sh` passes.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-09-21 13:49:10 -04:00
..
avatars.md wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
capability-constraints.md dispatch: capability constraints, and delivery over bearers that cannot answer 2026-09-10 10:24:58 -04:00
confidentiality.md wai: register confidentiality (MLS+SFrame) + document opt-in JWP freshness (#37) 2026-07-04 21:16:39 -04:00
determinism-tiers.md Merge pull request 'task-fidelity: name the contract for media a model consumes, not a hash' (#83) from wai/task-fidelity into main 2026-09-10 12:20:55 -04:00
energy-binding.md energy: the operating point, the residual, and alignment with network-layer identities 2026-09-10 12:01:53 -04:00
energy-measurement.md energy: the operating point, the residual, and alignment with network-layer identities 2026-09-10 12:01:53 -04:00
haptics.md wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
interactive-worlds.md wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
jwp-receipts.md wai: publish the energy-measurement methodology (extensions/energy-measurement.md) 2026-08-26 08:14:53 -04:00
linear-film.md wai: film reel — wai.film.reel, cuts over one world 2026-06-17 02:38:59 -04:00
moq-streaming-format.md moq-streaming-format: declare WAI as a MoQ streaming format 2026-09-10 10:24:58 -04:00
provenance.md wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
quantum-ops.md wai-quantum-ops: spec (extensions/quantum-ops.md) + SPEC.md verify-half pointer 2026-08-01 08:40:14 -04:00
quantum-sim.md wai-quantum: Add the energy-accounted receipt (QuantumReceipt + wai_quantum_meter) 2026-07-30 23:10:18 -04:00
reconstruction-binding.md wai: ingest the determinism-tier spectrum for neural decode 2026-08-01 19:44:45 -04:00
score.md wai: music as instructions — wai.audio.score (Phase 6) 2026-06-14 04:29:10 -04:00
spatial-audio.md wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
state-feeds.md wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
task-fidelity.md task-fidelity: name the contract for media a model consumes, not a hash 2026-09-10 10:24:58 -04:00
ternary-tt.md wai-ternary: Productionize wai.ternary.tt — WQTT container, registry entry, receipt, spec 2026-07-30 23:10:18 -04:00
transparency.md transparency: an external encoding, and a witness for the receipt chain 2026-09-10 10:24:58 -04:00
unidirectional-delivery.md dispatch: capability constraints, and delivery over bearers that cannot answer 2026-09-10 10:24:58 -04:00
volumetric.md wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
webcodecs-negotiation.md wai: reconcile the WebCodecs mapping with capability constraints 2026-09-21 13:49:10 -04:00