feat(screenshot): burst capture with --count and --interval-ms

ST
5d ago
+805-9

Summary

Recording an animation today means repeating single screenshots by hand — six separate re-implementations showed up in the audited sessions. screenshot --count N --interval-ms T (count ≄ 2, interval ≄ 100 ms) captures a frame series in one request and returns per-frame frames entries (path, capturedAtMs, displayRotation) alongside the first frame's usual fields, so motion evidence is one call with timestamps instead of a hand-built loop.

10 files changed (contracts flag keys and validation, daemon capture loop, CLI output, tests).

Validation

  • Head: 6764cfb8e on a68693c72 (includes review-fix commit: frame entries survive the client boundary whitelist with per-frame validation).
  • pnpm run typecheck, pnpm run lint, screenshot and contracts tests, integration-progress --check, fallow, freerange: pass locally.
  • Independent cold review: 1 blocker fixed (frame passthrough), rest applied. CI runs the full gates on push.

šŸ¤– Generated with Claude Code


Autofix with [code]smith
Open in [code]smith Ā· Need help on this PR? Tag @codesmith-bot with what you need.