Repository navigation
fix(recording): close meter contexts when setup fails - #2655
rudycelekli wants to merge 1 commit into
Conversation
Signed-off-by: Rudy Celekli <47457359+rudycelekli@users.noreply.github.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 55 minutes. View limit detailsLimit details: You’ve used all 10 included reviews currently available. Review configuration: ⚙️ Run configuration
📒 Files selected for processing (5)
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. Comment |
|
[Medium risk] Adds error handling to microphone metering setup. The PR appears safe to merge based on the reviewed changes. SummaryThe PR closes microphone-meter AudioContexts when synchronous graph setup or initial frame scheduling fails, adds regression tests for both implementations, and updates the documentation and changelog. Reviews (1) · Last reviewed commit: "fix(recording): close meter contexts whe..." |
|
All contributors on this pull request have signed the VoiceStudio CLA. Thank you! |
|
recheck |
Summary
Both microphone meter implementations allocate an AudioContext before building the graph and scheduling a frame. A failure in source creation, graph connection or frame scheduling can escape without closing that context. The recording hook tolerates optional meter errors, so retrying can retain unused contexts. Failed setup should close its context before propagating the error.
Closes #2654.
Changes
Type
Testing
Hosted CI audit at 2026-10-06T12:35:20.584679+00:00: no failing latest checks; required CLA passes. All latest reported checks completed successfully. No upstream merge performed.
Web Audio facade regressions for both implementations: 6 failed and 4 passed before; all 10 pass after. No hardware microphone or native browser run.
git diff --checkand the repository changelog style gate pass.Focused JavaScript tests used Node 24.19.0 and a reused Vitest 5.0.1 runtime; this repository pins Vitest 4.1.11. No full build qualification is claimed.
Full backend suites and
bun run check:electronwere not run locally. The human CLA signature is registered and the required CLA status passes; hosted results are reported separately below.Checklist
package.json,pyproject.toml,backend/core/version.py, and lockfilestests/fixtures/omnivoice_data/still loads green on thesmoke-matrixCI job (macOS + Windows + Linux)Release cadence
VoiceStudio ships continuous-to-main — no release candidates, no soak windows.
Every merged PR is immediately part of rolling source (
main) and Docker:latest. Electron artifact rehearsals validate desktop packages without publishing.Version bumps require owner approval; validated releases are tagged from
mainand published explicitly under the release checklist.
Users who want stability install an Electron release or pin Docker
:stable.