Milestone v1 (v2.0.0): Mokosh — Session Capture #1
@@ -100,6 +100,12 @@ Type taxonomy:
|
|||||||
activation change, the recorder MUST re-attach to the new active tab. First
|
activation change, the recorder MUST re-attach to the new active tab. First
|
||||||
invocation requires a user gesture.
|
invocation requires a user gesture.
|
||||||
|
|
||||||
|
### RETIRED (Phase 01-stabilize-video-pipeline, 2026-05-15)
|
||||||
|
|
||||||
|
- RETIRED-BY: Phase 01 CONTEXT.md D-01 / D-A2
|
||||||
|
- Reason: This phase replaces `chrome.tabCapture` with `navigator.mediaDevices.getDisplayMedia()`. The new API is not active-tab-bound; the recorder captures a screen / window selected once via Chrome's native picker and continues across tab switches.
|
||||||
|
- Replacement: CON-display-capture-binding (below).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## CON-service-worker-keepalive
|
## CON-service-worker-keepalive
|
||||||
@@ -110,6 +116,12 @@ Type taxonomy:
|
|||||||
extension MUST keep the worker alive via a `chrome.alarms` alarm firing every
|
extension MUST keep the worker alive via a `chrome.alarms` alarm firing every
|
||||||
**20 seconds**.
|
**20 seconds**.
|
||||||
|
|
||||||
|
### RETIRED (Phase 01-stabilize-video-pipeline, 2026-05-15)
|
||||||
|
|
||||||
|
- RETIRED-BY: Phase 01 CONTEXT.md D-17 / D-A2
|
||||||
|
- Reason: This phase replaces alarms-driven keepalive with a long-lived `chrome.runtime.connect` port between offscreen and Service Worker. Port-message traffic resets the SW idle timer per Chrome 110+ semantics.
|
||||||
|
- Replacement: CON-display-capture-binding (binds the port-keepalive expectations alongside the new capture API).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## CON-manifest-permissions
|
## CON-manifest-permissions
|
||||||
@@ -196,6 +208,16 @@ Type taxonomy:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## CON-display-capture-binding
|
||||||
|
|
||||||
|
- Source: Phase 01 CONTEXT.md D-01..D-17, RESEARCH.md Patterns 1 & 5
|
||||||
|
- Type: api-contract
|
||||||
|
- Constraint: Video capture uses `navigator.mediaDevices.getDisplayMedia()` invoked once per session from the offscreen document with `chrome.offscreen.Reason.DISPLAY_MEDIA`. The Service Worker is kept alive by a long-lived `chrome.runtime.connect({ name: 'video-keepalive' })` port opened by the offscreen, with traffic in both directions at a minimum cadence of 25 s and pre-emptive reconnect at 290 s.
|
||||||
|
- Replaces: CON-tab-capture-binding (RETIRED), CON-service-worker-keepalive (RETIRED).
|
||||||
|
- UX trade-off: Chrome's permanent "Sharing your screen" indicator is shown while recording. SPEC §1 silent-operation property is intentionally relaxed.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## CON-no-server-upload
|
## CON-no-server-upload
|
||||||
|
|
||||||
- Source: `Тз расширение фаза1.md` §9
|
- Source: `Тз расширение фаза1.md` §9
|
||||||
|
|||||||
Reference in New Issue
Block a user