36fb8bfa9a879abae29dace85ab3e643d5f51cd8
Triage of Codex's read-only A23 audit (a23-audit-2026-06-26.md). The P2 (pixelpass --app best-effort fallback) is cross-repo and deferred to a design decision; these are the three actionable peerspeak-side P3s: - P3-1: guard the share-startup window. New `share_starting` flag blocks reopening the picker (and re-firing StartScreenShare) between ConfirmShareScreen and the core's ScreenShareStarted; cleared on Started/Stopped/Error so a failed spawn (surfaced as Error, not Stopped) can't wedge it. +2 state-machine tests. - P3-2: parse_audio_apps now runs each name through sanitize_app_name, so the picker never offers a name that host_args would later silently drop (which would revert the share to whole-desktop audio = the A23 echo, with no signal). +1 test. - P3-3: list_audio_apps wraps pactl in a 2s timeout so a wedged enumeration can't stall the core command loop (mute/deafen/leave/stop) while the picker opens. 433 lib tests (+3), clippy --all-targets clean. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>