Skip to content

fix: integrate video queue, capture health and permission probes - #200

Merged
swellweb merged 10 commits into
maint-3.5from
codex/maint-3.5-video-permissions
Sep 14, 2026
Merged

swellweb merged 10 commits into
maint-3.5from
codex/maint-3.5-video-permissions

Conversation

@swellweb

@swellweb swellweb commented Sep 13, 2026 •

Copy link
Copy Markdown
Owner

Scope

Focused maintenance integration of #194, #195 and #177, preserving the original commits and contributor attribution. Thank you @Betafer for these focused fixes and tests.

  • fix(sender): preserve encoded frame references under backpressure #194: reserve queue capacity before encoding so HEVC/H.264 reference frames are not discarded afterwards.
  • fix(sender): distinguish idle capture from a stalled pipeline #195: distinguish event-driven idle capture from genuine stalls and guard delayed recovery against replacement sessions.
  • feat: expose non-interactive permission status #177: expose read-only permission status from both application binaries without starting the normal session.
  • Follow-up input fix: explicitly attach the relayed modifier flags to mouse button, drag, move (including edge), and scroll events on the Sender. Six CGEvent construction tests cover Shift/Command selection and release, all drag/button types, click state and scrolling. No input protocol or Receiver changes.
  • Resolve the shared capture-entry conflict by keeping BOTH the usable-frame guard and pre-encode queue budget.
  • Add a source integration guard, bounded permission-probe smoke tests for both binaries, CI coverage for both architectures, and documentation in docs/Automation.md.

Local validation (Apple Silicon)

  • Full Sender build passed.
  • Full Sender XCTest suite: 134 tests passed, zero failures.
  • Standalone production capture-health suite: 17 tests passed (also included in the 134 above).
  • Production video queue budget and both capture-path source guards passed.
  • Receiver: 654 checks passed (67 parser, 562 input queue, 12 watchdog, 13 display profile).
  • Receiver application build and dependency bundling passed.
  • Two consecutive permission probes per built application passed with valid output and bounded process exit.
  • All five shared localizations passed validation.
  • git diff --check passed.

Before merge / release

  • Re-run combined CI on Intel and Apple Silicon for the pointer-modifier follow-up. All four jobs passed on the earlier integration commit 126141a.
  • Live Sender/Receiver regression run: audio, 5K/HiDPI, colors, cursor, keyboard/shortcuts, reconnect, static desktop and resume.
  • Check supported older macOS packaging separately; local Homebrew builds are not proof of backward compatibility.

This is a test candidate, not a release. main, installed applications, permission settings and version numbers are unchanged. No signing-policy changes from #196 or other feature PRs are included. Keep the source PRs open until this integration has passed validation.

@swellweb
swellweb marked this pull request as ready for review September 14, 2026 19:05
@swellweb
swellweb merged commit 8ab5c3a into maint-3.5 Sep 14, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants