Skip to content

feat(recording): implement pause/resume functionality#1

Merged
meck93 merged 5 commits intomainfrom
codex/pause-resume-refactor-followups
Feb 12, 2026
Merged

feat(recording): implement pause/resume functionality#1
meck93 merged 5 commits intomainfrom
codex/pause-resume-refactor-followups

Conversation

@meck93
Copy link
Copy Markdown
Owner

@meck93 meck93 commented Feb 12, 2026

Summary

  • refactor CaptureService into focused lifecycle/internal files and add stream/recording-output adapter seams for better isolation
  • add dedicated CaptureService refactor tests for pause-in-flight protection, resume rollback, partial recovery fallback, and paused stop/reset teardown
  • harden recording stop flow to always release directory access, plus add multi-cycle paused-duration accumulation test
  • extract menu/HUD recording state mapping into static helpers and add app-level tests for helper behavior

Commits

  • refactor(core): split capture service lifecycle and add adapters
  • fix(core): guarantee stop cleanup and extend pause timing coverage
  • refactor(app): extract recording UI state helpers with tests

Validation

  • mise run generate
  • mise run format
  • mise run lint
  • mise run test-core
  • mise run test
  • mise run build

- Add pause/resume toggle to RecordingEngine with segment-based recording
- Introduce SegmentStitcher to merge video segments across pause/resume cycles
- Track paused duration and adjust recording timer to exclude paused intervals
- Extract CaptureServicing/PermissionServicing protocols for testability
- Add partial recovery for stitched segments on stop failure
- Update UI to show pause/resume controls and paused state indicator
- Add comprehensive tests for pause/resume flow and segment stitching
@meck93 meck93 changed the title Refactor pause/resume internals with adapter seams and targeted test coverage feat(recording): implement pause/resume functionality Feb 12, 2026
@meck93 meck93 merged commit bc179c3 into main Feb 12, 2026
1 check 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.

1 participant