Make system-audio meeting warnings actionable - #1761
Merged
Merged
Conversation
r3dbars
force-pushed
the
codex/audio-permission-recovery-1162
branch
from
September 23, 2026 02:00
81e53fe to
d1639df
Compare
9 of 14 tasks
main already rebuilt the mid-meeting Check Access button (with its own copy and tests), so the conflicted files keep main's version and the two suites for the old design are dropped. What main lacked is ported onto today's code: a start that macOS refused for System Audio Recording (a typed missing grant or an observed capture denial, never a silent or timed-out probe) sets systemAudioPermissionRecoveryNeeded, and both overlays offer Grant Access, which opens the audio-only Settings pane. The pill uses its error action slot; the island adds the button to its meeting-error drop-down. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2 tasks done
Picks up the VM test socket-path fix (#1883) and everything merged today. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
r3dbars
added a commit
that referenced
this pull request
Sep 28, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Sep 28, 2026
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.
Targets main so audio-permission recovery can be validated independently of the unreleased 1.1.62 version bump in #1756. The 1.1.62 candidate must include this fix and be rebuilt before release.
A confirmed system-audio-only denial at meeting start now shows Grant System Audio Access, opening the audio-only macOS Settings pane. An unverified or failed live stream instead shows Check Access without claiming denial or running a competing capture probe. Keep Recording and End & Transcribe remain available. Copy explains that a changed permission requires a new recording. The CTA is tied to the specific error transition so it cannot appear on an unrelated transcription error.
Validation: permission/status tests 53/53; UI surface contracts 299/299; signed app build and integration smoke pass; independent static review found no blocker. Native AX/visual and real TCC denial/recovery are not yet verified on this exact code. The prior stacked CI failure was solely the 1.1.62 candidate vs still-published 1.1.61 release metadata; this PR now runs against main.
Update: merged with main (2026-09-27)
mainrebuilt the mid-meeting Check Access button after this PR was written, with its own copy and tests. So the conflicted files keep main's version, and this PR's two suites for the old design are dropped (their copy strings andshouldOfferAccessCheckno longer exist).What
mainstill lacked is ported onto today's code:MeetingSessionController.systemAudioPermissionRecoveryNeeded. Every other state change clears it.Checks:
bash build-deps.sh --force,bash build.sh --no-open,TZ=America/Chicago bash run-tests.sh(18776/18776),bash run-integration-smoke.sh,check-source-pins --changed-only,check-telemetry-keys.Not checked by hand: a real TCC denial on hardware.