fix(voice): keep clicked calls bound to their chat - #247
Conversation
morgmart
left a comment
There was a problem hiding this comment.
🤖 Automated code review
APPROVE. Fresh static review of the exact three-dot comparison 1366fb9...7dac06f found no publishable findings. The change removes window-focus as an authorization proxy while retaining renderer epoch, foreground-session generation, stable session ownership, and serialized lifecycle validation. The replacement-stop and voice-start paths were traced through validation and lifecycle boundaries; the changed unit test discriminates ownership acceptance and rejection. Final self-check covered the changed voice start/replacement flows, accessibility, localization, navigation/consent guards, async/error/never-completes/lifecycle/race behavior, test honesty, project laws and design-system rules, duplicate overlap, and blocking-evidence quality. This backend-only change introduces no visual, accessibility, or localization surface. Supplied GitHub evidence was inspected: all nine check runs for the exact head SHA completed successfully, while the legacy combined commit status is pending with no contexts; required checks still independently govern merge readiness.
Deterministic publication result: 0 blocking and 0 non-blocking finding(s) publishable; 0 duplicate(s) suppressed.
Pending checks: 1 check(s) are not complete.
This approval reflects the completed code review only; merge readiness remains governed by the repository's required checks.
Summary
Keeps Voice Conversation bound to the chat and window that initiated it without relying on transient focus.
Reviewer example
Click the call control in a chat, then let focus move to the voice controls while startup is in flight. The call remains attached to that chat; a stale start from another foreground generation is rejected.
Testing
just checkjust tauri-checkjust clippy