Skip to content

Recording: persist verified camera and screen start timing - #20

Merged
FernandoAbishai merged 1 commit into
mainfrom
feature/p1-paired-capture-preview
Oct 23, 2026
Merged

FernandoAbishai merged 1 commit into
mainfrom
feature/p1-paired-capture-preview

Conversation

@FernandoAbishai

Copy link
Copy Markdown
Member

Scope

  • Persist screen and camera first-frame host-clock start times and their provenance (videoFrame vs camera callback).
  • Define a signed screen-minus-camera start offset only for same-numbered takes with two trustworthy first-frame measurements. Legacy, recovered-without-timing and fallback callback recordings remain explicitly unverified. No composite preview or audio-sync claim.
  • Preserve fractional Take.startedAt in session.json while retaining the legacy SessionMeta.createdAt encoding and derived session IDs; carry precise timing through crash-recovery journals.
  • Keep the Swift and Python/MCP session manifests aligned.
  • Repair the ChatRun test-fixture race: wait for captured stdin rather than the fake run counter alone.

Verification

  • ./test.sh --quiet with Xcode 27.1 (DEVELOPER_DIR): 518 Python/MCP tests (11 skipped), 664 Swift tests and 10 timed Swift tests passed on commit 01bbc11.
  • git diff --check and changed Swift syntax checks passed.
  • Independent read-only clock/preview and compatibility reviews; no unresolved confirmed must-fix in this slice.

Explicit boundaries

  • Source MOV recordings untouched; no auto-merge, automatic publish, installation, or release.
  • Actual simultaneous camera+screen capture timing, waveform/audio alignment and PiP preview remain subject to hardware and media-level validation in the next increment.

Persist provenance-gated host-clock video starts in paired takes and crash-recovery journals. Preserve subsecond take dates without changing legacy session IDs; both Swift and MCP manifests mark uncertain offsets unverified. Cover legacy decoding, callback starts and signed offsets, and fix a Jobs fixture readiness race.
@FernandoAbishai
FernandoAbishai marked this pull request as ready for review October 23, 2026 07:54
Copilot AI balanced review requested due to automatic review settings October 23, 2026 07:54
@FernandoAbishai
FernandoAbishai merged commit 4bc0223 into main Oct 23, 2026
2 checks passed
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-23T07:55:06.186428Z 01bbc11 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

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