media/03-transport#34
Draft
SunkenInTime wants to merge 17 commits into
Draft
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
SunkenInTime
force-pushed
the
media/02-album-art
branch
from
July 25, 2026 19:34
5605dd1 to
ec77763
Compare
SunkenInTime
force-pushed
the
media/03-transport
branch
from
July 25, 2026 19:35
edd821d to
04b2375
Compare
SunkenInTime
force-pushed
the
media/02-album-art
branch
from
July 25, 2026 19:50
ec77763 to
3a492d6
Compare
SunkenInTime
force-pushed
the
media/03-transport
branch
from
July 25, 2026 19:50
04b2375 to
0511dcd
Compare
SunkenInTime
force-pushed
the
media/02-album-art
branch
from
July 25, 2026 20:25
3a492d6 to
2eecd49
Compare
SunkenInTime
force-pushed
the
media/03-transport
branch
from
July 25, 2026 20:25
1de6126 to
ab5114e
Compare
SunkenInTime
force-pushed
the
media/03-transport
branch
from
July 26, 2026 01:00
ab5114e to
5fbc620
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack: 03/05
What becomes usable
capabilities: ["media-transport"]and calluseMediaTransport()for play, pause, next, previous, and absolute seek.with separate bounded frame and acknowledgement lanes in the runtime.
Promise<boolean>semantics.weaver checkfollows the SDK symbol through aliases, namespace imports,and helper modules; manifests and pack/install audit output carry the
declared capability.
examples/now-playingproves the real play/pause loop.Deliberately missing
plumbing exists here, but valid macOS commands honestly acknowledge
false.and side-by-side visual gate remain layer 05.
Verification
npm test? PASS, 63/63.npm run typecheck? PASS.node cli/bin/weaver.js check examples/now-playing? PASS.runtime: zig build test -Dweb-layer=exclude -Dtrace=off? PASS with Zig0.16.0.
host: zig build test? PASS with Zig 0.16.0.runtime: zig build -Dweb-layer=exclude -Dtrace=off? PASS.host: zig build? PASS.true;next/previous changed tracks, and seek reached 129 s for a 128 s target.
The live gate exposed a synchronous duplex deadlock on the first provider
write. Both Windows pipe handles now use overlapped I/O while retaining one
blocking reader thread and one host-loop writer. Host/runtime partial-line
tests cover the repaired framing path.
Performance
Performance claim deliberately declined. Transport adds one bounded reader
thread to each widget with a provider endpoint. It adds no transport polling
loop; commands and acknowledgements are request-driven.
Visual gate
PASS. The committed example was launched on the desktop layer; other windows
were minimized; the actual widget region was captured with
System.Drawing.CopyFromScreen; every accepted PNG was reopened and viewed.The per-element checklist and verb evidence are in
docs/media-evidence/pr03-visual.md, including:docs/media-evidence/pr03-now-playing-live.pngdocs/media-evidence/pr03-now-playing-paused.pngdocs/media-evidence/pr03-now-playing-final-paused.pngdocs/media-evidence/pr03-verb-next.pngdocs/media-evidence/pr03-verb-previous-track.pngdocs/media-evidence/pr03-verb-seek.pngAdversarial review update (2026-07-25)
This layer now owns F1/F2/F3/F4/F10/F11/F12: both endpoints authenticate the launched child PID; all command/runtime readers reject EOF residuals; transport-only widgets remain idle-zero; ack arrival wakes the app loop; the deadline is an exact one-shot 3000 ms; acks are keyed by pending ID; the nine-slot nack bound is proven; SDK detection is forced/symbol-based through aliases; endpoint writes and Windows OS calls are bounded and isolated from supervision.
Mandatory adversarial tests cover Windows and macOS PID hijack, command/ack EOF residuals, hostile bursts, late-ack rollover, exact timeout, transport-only idle, hostile tsconfig mapping, and const aliases. Final owning-layer gates: npm 63/63, typecheck, all 18 examples through
weaver check, runtime/hostzig build test, and direct macOS reader semantic compiles ? PASS.