Skip to content

Fix #70: anchor the screen-capture device match - #77

Merged
REPPL merged 1 commit into
mainfrom
fix-70-screen-anchor
Aug 27, 2026
Merged

Fix #70: anchor the screen-capture device match#77
REPPL merged 1 commit into
mainfrom
fix-70-screen-anchor

Conversation

@REPPL

@REPPL REPPL commented Aug 27, 2026

Copy link
Copy Markdown
Owner

Validated against main: selectDevices used an unanchored strings.Contains(d.name, "Capture screen") with break, and the repo's own fixture ordering puts cameras before the screen device (regression test added first — fails on main selecting the lookalike camera at index 0).

Fix: match the anchored canonical ^Capture screen \d+$ via a documented screenDevice regex, so only the genuine macOS screen pseudo-device can resolve. CHANGELOG entry added.

Fixes #70

selectDevices picked the screen by an unanchored strings.Contains with
first-match-wins, and avfoundation lists cameras before screen
pseudo-devices — so a camera whose OS-supplied name merely contained
"Capture screen" (crafted, or a vendor string) shadowed the genuine
display and was recorded into screen.mp4 silently. Match the anchored
canonical form ^Capture screen \d+$ instead: the video-side sibling of
the microphone's :default anti-shadowing hardening.

Fixes #70.

Assisted-by: Claude:claude-fable-5
@REPPL
REPPL merged commit 29c2ca4 into main Aug 27, 2026
6 checks passed
@REPPL
REPPL deleted the fix-70-screen-anchor branch August 27, 2026 05:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant