WAI Studio on the web: one front end, two hosts (the core in WebAssembly; wai dev at /_wai/), actions from the operation catalogue with a drift check #522

Merged
dcharlot merged 12 commits from wai/studio-web into main 2026-10-28 08:00:49 -04:00

2026-10-28

Transaction Science
Merge remote-tracking branch 'origin/main' into wai/studio-web
All checks were successful
wai-audit collector and player integration / collector, player integration and the browser end to end · macos (pull_request) Successful in 1m35s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 2m8s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 9m50s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 27s
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Successful in 1m6s
WAI examples / WAI examples · android-app · linux-arm64 (pull_request) Successful in 5m41s
WAI conformance / each feature of the independent verifiers' steps compiles alone (pull_request) Successful in 11m27s
wai-pack / wai-pack · linux-arm64 (pull_request) Successful in 2m5s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 44s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 10m38s
wai-pack / wai-pack · dependency licences (pull_request) Successful in 1m20s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 7m31s
wai-fleet service / service · macos (pull_request) Successful in 41s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Successful in 2m32s
wai-ledger service / service · macos (pull_request) Successful in 57s
joule-moq-remote host agent / joule-moq-remote, every target (linux-arm64) (pull_request) Successful in 1m45s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Successful in 7m41s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 22m33s
wai-pack / wai-pack · macos (pull_request) Successful in 3m14s
joule-moq-room room service / joule-moq-room, every target (pull_request) Successful in 4m15s
wai-quantum studio and desktop / desktop app · macos (pull_request) Successful in 3m47s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 21m14s
WAI examples / WAI examples · the archive, the readiness check, the browser and Apple · macos (pull_request) Successful in 14m58s
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (pull_request) Successful in 7m40s
WAI Studio / Studio in Chromium and Firefox · macos (pull_request) Successful in 10m8s
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (pull_request) Successful in 16m41s
joule-moq-remote host agent / joule-moq-remote, every target (macos) (pull_request) Successful in 1m4s
wai-app and Create / wai-app · Create, browser end-to-end (macos) (pull_request) Successful in 6m12s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (pull_request) Successful in 15m0s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 59m29s
# Conflicts:
#	wai/CHANGELOG.md
2026-10-28 05:51:27 -04:00
Transaction Science
Merge remote-tracking branch 'origin/main' into wai/studio-web
All checks were successful
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 10m7s
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 examples / WAI examples · android-app · linux-arm64 (pull_request) Successful in 6m7s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 40s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 17m53s
wai-pack / wai-pack · linux-arm64 (pull_request) Successful in 1m53s
WAI Studio / Studio in WebKit · linux (pull_request) Successful in 10m51s
wai-pack / wai-pack · dependency licences (pull_request) Successful in 1m22s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 22m13s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Successful in 2m40s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Successful in 6m59s
joule-code conformance gate / joule-moq-relay, its own energy on a counter (macos) (pull_request) Successful in 35s
joule-moq-remote host agent / joule-moq-remote, every target (macos) (pull_request) Successful in 59s
wai-app and Create / wai-app · Create, browser end-to-end (macos) (pull_request) Successful in 7m29s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (pull_request) Successful in 14m58s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 58m17s
wai-audit collector and player integration / collector, player integration and the browser end to end · macos (pull_request) Successful in 6m57s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 46s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 9m41s
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Successful in 1m1s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 4m48s
wai-fleet service / service · macos (pull_request) Successful in 43s
wai-ledger service / service · macos (pull_request) Successful in 48s
wai-pack / wai-pack · macos (pull_request) Successful in 2m48s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 17m17s
wai-quantum studio and desktop / desktop app · macos (pull_request) Successful in 3m29s
WAI examples / WAI examples · the archive, the readiness check, the browser and Apple · macos (pull_request) Successful in 12m47s
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (pull_request) Successful in 7m8s
WAI Studio / Studio in Chromium and Firefox · macos (pull_request) Successful in 9m27s
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (pull_request) Successful in 16m13s
2026-10-28 04:04:56 -04:00
Transaction Science
wai dev: close a connection only after reading what is left of the request
The front answers a refusal (another origin, 403) before reading the request's
body. Closing a socket with bytes still unread makes the system reset the
connection, and on macOS the client then lost the 403 it had been sent:
studios_api_answers_this_origin_once_the_stack_is_up failed on the macOS CI
runner with "Connection reset by peer". Each connection is now half-closed
after its answer and drained for at most a second before it closes.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 04:03:57 -04:00
Transaction Science
wai-studio.yml: the macOS job named for the browsers it runs
Some checks failed
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 35s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 1m55s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 18m58s
WAI conformance / each feature of the independent verifiers' steps compiles alone (pull_request) Successful in 13m9s
WAI examples / WAI examples · android-app · linux-arm64 (pull_request) Successful in 5m20s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 9m10s
wai-pack / wai-pack · linux-arm64 (pull_request) Successful in 1m46s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 24s
joule-moq-remote host agent / joule-moq-remote, every target (macos) (pull_request) Successful in 1m0s
wai-pack / wai-pack · dependency licences (pull_request) Successful in 2m21s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 24m33s
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Successful in 2m42s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Successful in 8m2s
wai-app and Create / wai-app · Create, browser end-to-end (macos) (pull_request) Successful in 7m2s
joule-moq-web browser client / joule-moq-web · browser end-to-end (macos) (pull_request) Successful in 16m51s
wai-audit collector and player integration / collector, player integration and the browser end to end · macos (pull_request) Successful in 1m43s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 11m16s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 51s
WAI conformance / codec wrappers · fuzz smoke, text decode limits, C entry points, provenance, the semantic path (pull_request) Successful in 1m46s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 6m29s
wai-fleet service / service · macos (pull_request) Successful in 41s
wai-ledger service / service · macos (pull_request) Successful in 51s
wai-pack / wai-pack · macos (pull_request) Successful in 3m21s
WAI conformance / cargo-class corpora · macos (pull_request) Failing after 17m11s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 1h5m40s
wai-quantum studio and desktop / desktop app · macos (pull_request) Successful in 2m49s
WAI examples / WAI examples · the archive, the readiness check, the browser and Apple · macos (pull_request) Successful in 15m23s
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (pull_request) Successful in 7m49s
WAI Studio / Studio in Chromium and Firefox · macos (pull_request) Successful in 9m55s
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (pull_request) Successful in 16m33s
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 02:13:20 -04:00
Transaction Science
WAI Studio: Escape closes the palette from its search field too; the e2e holds it
Some checks failed
wai-fleet service / does this change touch it (pull_request) Has been cancelled
wai-fleet service / service · linux (pull_request) Has been cancelled
wai-fleet service / service · macos (pull_request) Has been cancelled
wai-ledger service / does this change touch it (pull_request) Has been cancelled
wai-ledger service / service · linux (pull_request) Has been cancelled
wai-ledger service / service · macos (pull_request) Has been cancelled
wai-pack / wai-pack · does this change touch it (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 / does this change touch it (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-sink-android native sink library / does this change touch it (pull_request) Has been cancelled
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Has been cancelled
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (pull_request) Has been cancelled
wai-sink-swift native sink package / does this change touch it (pull_request) Has been cancelled
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (pull_request) Has been cancelled
WAI Studio / does this change touch it (pull_request) Has been cancelled
WAI Studio / the catalogue's actions, the unit tests and the core · linux (pull_request) Has been cancelled
WAI Studio / Studio in Chromium, WebKit and Firefox · macos (pull_request) Has been cancelled
WAI Studio / Studio in WebKit · linux (pull_request) Has been cancelled
wai-web reach builds / wai-web reach · does this change touch it (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Has been cancelled
wai-web wasm32 / does this change touch it (pull_request) Has been cancelled
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Has been cancelled
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 02:08:48 -04:00
Transaction Science
wai-studio-core: wasm-pack builds it without wasm-opt, as wai-web
Some checks failed
wai-fleet service / does this change touch it (pull_request) Has been cancelled
wai-fleet service / service · linux (pull_request) Has been cancelled
wai-fleet service / service · macos (pull_request) Has been cancelled
wai-ledger service / does this change touch it (pull_request) Has been cancelled
wai-ledger service / service · linux (pull_request) Has been cancelled
wai-ledger service / service · macos (pull_request) Has been cancelled
wai-pack / wai-pack · does this change touch it (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 / does this change touch it (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-sink-android native sink library / does this change touch it (pull_request) Has been cancelled
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Has been cancelled
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (pull_request) Has been cancelled
wai-sink-swift native sink package / does this change touch it (pull_request) Has been cancelled
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (pull_request) Has been cancelled
WAI Studio / does this change touch it (pull_request) Has been cancelled
WAI Studio / the catalogue's actions, the unit tests and the core · linux (pull_request) Has been cancelled
WAI Studio / Studio in Chromium, WebKit and Firefox · macos (pull_request) Has been cancelled
WAI Studio / Studio in WebKit · linux (pull_request) Has been cancelled
wai-web reach builds / wai-web reach · does this change touch it (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Has been cancelled
wai-web wasm32 / does this change touch it (pull_request) Has been cancelled
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Has been cancelled
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 02:04:20 -04:00
Transaction Science
Merge remote-tracking branch 'origin/main' into wai/studio-web
Some checks failed
wai-fleet service / does this change touch it (pull_request) Has been cancelled
wai-fleet service / service · linux (pull_request) Has been cancelled
wai-fleet service / service · macos (pull_request) Has been cancelled
wai-ledger service / does this change touch it (pull_request) Has been cancelled
wai-ledger service / service · linux (pull_request) Has been cancelled
wai-ledger service / service · macos (pull_request) Has been cancelled
wai-pack / wai-pack · does this change touch it (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 / does this change touch it (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-sink-android native sink library / does this change touch it (pull_request) Has been cancelled
wai-sink-android native sink library / the JNI layer and the platform-free half on the host JVM · linux-arm64 (pull_request) Has been cancelled
wai-sink-android native sink library / every ABI, the AAR, and the instrumented tests in a headless emulator · macos (pull_request) Has been cancelled
wai-sink-swift native sink package / does this change touch it (pull_request) Has been cancelled
wai-sink-swift native sink package / libwai slices, desktop tests, simulator tests · macos (pull_request) Has been cancelled
WAI Studio / does this change touch it (pull_request) Has been cancelled
WAI Studio / the catalogue's actions, the unit tests and the core · linux (pull_request) Has been cancelled
WAI Studio / Studio in Chromium, WebKit and Firefox · macos (pull_request) Has been cancelled
WAI Studio / Studio in WebKit · linux (pull_request) Has been cancelled
wai-web reach builds / wai-web reach · does this change touch it (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · the package of record, every output as recorded (pull_request) Has been cancelled
wai-web reach builds / wai-web reach builds · this tree's wai-web, every rung on its engine line (pull_request) Has been cancelled
wai-web wasm32 / does this change touch it (pull_request) Has been cancelled
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Has been cancelled
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 01:53:02 -04:00
Transaction Science
2026-10-28 01:50:13 -04:00

2026-10-27

Transaction Science
WAI Studio e2e: a publisher in the room before a viewer joins; WebKit on Linux in Playwright's image; scrollable blocks focusable; Quantum Studio's critique a named group
A viewer follows the room's clock, whose events track opens with the room's first participant.
The macOS runner and the Studio host run WebKit from SSH, where it never launches, so the CI
runs WebKit in Playwright's image on the linux runner.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 16:17:25 -04:00
Transaction Science
WAI Studio on the web: one front end, its core in WebAssembly, served by wai dev at /_wai/
wai/wai-studio: the panels (Inspect, Verify and receipts, Encode/decode/package, Rooms,
Run, Quantum) and the command palette; actions generated from the operation catalogue
with a drift check; the core (wai-studio-core) binding the wai crate for the tab. wai dev
serves Studio at /_wai/ on its own origin, with the dev stack's routes for it under
/_wai/api/.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 15:22:51 -04:00