Repository navigation
Conversation
Quest-Claim: e7e78dda8827133a
Pin cancellation-safe MoQ, show capture progress and errors, and offer explicit retry after denied capture. Exercise actual Hang input controls through a separate relay-connected Chromium viewer in the check suite. Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Use the upstream cancellation fix, distinguish requested and actual capture state, and provide explicit camera and microphone retry controls. Add a Chromium regression through a local relay and separate viewer to the CI check suite. Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Inject held support and flush promises around actual native codecs, then verify a separate relay-connected viewer decodes fresh video before releasing the old promise. This reproduces the stuck effect on the previous encoder implementation. Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Keep accessible capture status mounted, make the selected-device action follow requested state, and cover absent devices and pending menu cancellation. Bind the browser fixture relay ephemerally and await its listening event while draining one log stream. Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Keep the persistent capture live region as the sole camera availability announcement, while retaining the visible no-camera hint. Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 27 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
# Conflicts: # app/package.json # quest/m0/README.md
|
Design change: follow the current API and cancellation decisions in moq-dev/moq#8179. Hang will pin published head (Written by GPT-6.1 Sol with xhigh) |
Wait for the disabled capture acknowledgement before enabling Retry, cancel superseded handshakes, and parse terminal-styled relay startup records in CI. Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Problem
Camera off/on can wait forever behind a browser codec probe or final black-frame flush. The controls also obscured pending or denied capture. The required Check subsequently failed because terminal styling in the relay startup record broke the browser runner's address parser.
Approach
Pin published moq-dev/moq#8179 head
1ceb7ac7624cf8f05e59f4d2cec97ef9e46a3b0bin the submodule and Nix input. Follow its current enabled-toggle API and maintainer decision: preserve the compatibility black frame while muted, cancel its wait on track closure/replacement, and release ordering before cosmetic flushing.Show requested, pending, live, failed and unavailable capture state with a persistent accessible status. Retry uses enabled off/on, waiting for the source to clear its error after processing disabled. Cleanup, changed settings or newer enabled intent cancels that handshake. Device selection can cancel pending capture.
Keep the real controls-to-remote-decode browser regression in
just check. Strip terminal styling only when parsing relay readiness, retain raw diagnostics, and test the actual ANSI-styled field format. Merge current Hang main, preserving favorites' unit-only DOM preload and native globals in the browser runner. Finish and remove the media-toggles quest.Impact
No Hang public API or wire change. No new upstream retry API: the application uses the existing enabled signals.
Alternatives
Use unconditional cancellation, with no product timeout or automatic retry loop. Retain the existing capture recovery policy. Select the supported 2D viewer backend on this host, which lacks WebGL2.
Validation
At
c54f9c08e7664d502b942ac19f5258ecf5e0ee18:FORCE_COLOR=1 quest gate just checkpasses: 5 API tests, 8 app tests, and 2 browser tests with 52 assertions (~16.5 seconds for the browser file).quest gate just buildandgit diff --checkpass. Latest merged Hang base is38ecca4b9688d525e96cb79ae2a805672b8581db.The fixture uses Chromium fake devices, getUserMedia/native VideoEncoder promise interception and synthetic ended events. Physical hardware loss, real permission dialogs, other browsers and the spatial WebGL scene remain unmeasured.
Review
Previous counted review: Claude Code, Claude Opus 5.5, medium, round 3 reviewed
0207acc5ccacf5ffa2b8fcf553918d26f46933d2with no findings. Earlier UI, accessibility, fixture cleanup/startup and import findings were fixed; the test-cost concern was answered with measured runs and documented Nix prerequisites.Current head
c54f9c08e7664d502b942ac19f5258ecf5e0ee18is unreviewed. The fresh required cross-vendor review exited 2 before starting because the configured Claude CLI is logged out. No substitute, exemption or review bypass was used.Waiting
claude is not logged in to its default profile (CLAUDE_CONFIG_DIR is unset); run claude auth login. Afterclaude auth login, take the PR withquest iterate 33, runnix develop --accept-flake-config --command quest review --new --base origin/main, resolve any findings and review the resulting committed head, then mark ready. This draft is a clean, pushed checkpoint; the prior review does not cover its new head.Follow-ups
The broader capture-state redesign remains in moq-dev/moq#8145. Hardware and cross-browser runs would broaden coverage.
(Written by GPT-6.1 Sol with xhigh)