Milestone v1 (v2.0.0): Mokosh — Session Capture #1
@@ -17,13 +17,19 @@ Requirements for the Phase 1 SPEC. Each maps to one phase in ROADMAP.md.
|
||||
### Video
|
||||
|
||||
- [ ] **REQ-video-ring-buffer**: The extension maintains an in-memory ring
|
||||
buffer containing the most recent 30 seconds of active-tab video. Video is
|
||||
captured via `chrome.tabCapture.capture()` at `video/webm; codecs=vp9` @
|
||||
400 000 bps with a `MediaRecorder` timeslice of 2000 ms. A single continuous
|
||||
recorder per session; tab activation changes trigger re-attach. The first
|
||||
emitted chunk (WebM header) is retained indefinitely; subsequent chunks
|
||||
rotate out by the 30-second TTL rule. Bindings: DEC-003, DEC-009,
|
||||
CON-video-window, CON-video-codec, CON-webm-header-retention.
|
||||
buffer containing the most recent 30 seconds of captured video. AMENDED in
|
||||
Phase 01: video is acquired via `navigator.mediaDevices.getDisplayMedia()`
|
||||
invoked from the offscreen document (with `chrome.offscreen.Reason.DISPLAY_MEDIA`),
|
||||
NOT `chrome.tabCapture` as originally specified. The captured stream is
|
||||
screen-or-window-scoped per the operator's one-time selection in Chrome's
|
||||
native picker, and continues unchanged across tab switches. Encoding is
|
||||
unchanged: `video/webm; codecs=vp9` @ 400 000 bps with a `MediaRecorder`
|
||||
timeslice of 2000 ms; a single continuous recorder runs for the whole
|
||||
session. The first emitted chunk (WebM header) is retained indefinitely;
|
||||
subsequent chunks rotate out by the 30-second TTL rule. Bindings: DEC-003
|
||||
(AMENDED), DEC-009, CON-video-window, CON-video-codec,
|
||||
CON-webm-header-retention, CON-display-capture-binding (replaces RETIRED
|
||||
CON-tab-capture-binding).
|
||||
- SPEC §10 acceptance criteria: #2, #3, #7.
|
||||
|
||||
### DOM Capture
|
||||
|
||||
Reference in New Issue
Block a user