From 5e161837d814a5133115c880615d6e4cafa2168c Mon Sep 17 00:00:00 2001 From: Christian Pillsbury Date: Wed, 24 Jun 2026 10:41:16 -0700 Subject: [PATCH] docs(spf): drop stale repositionPolicy references after seam removal The repositionPolicy seam was removed when seek-to-live-edge's guard became reload-driven. Reframe the sibling references: the guard does window-exit, and the edge-only [live-edge-only-mode] use-case supplies its own reposition behavior (alternative-impl) rather than flipping a seam. Co-Authored-By: Claude Opus 4.8 (1M context) --- internal/design/spf/features/dvr-event-stream-support.md | 6 +++--- internal/design/spf/use-cases/README.md | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/internal/design/spf/features/dvr-event-stream-support.md b/internal/design/spf/features/dvr-event-stream-support.md index 9f01bfbc..570eb772 100644 --- a/internal/design/spf/features/dvr-event-stream-support.md +++ b/internal/design/spf/features/dvr-event-stream-support.md @@ -215,10 +215,10 @@ Things this feature probably forces decisions on, not just additions: miss-counter), and the `setLiveSeekableRange` writer-behavior shape. DVR/event-stream supplies the windowing variance and the variant-specific seekable-range start producer. Its live-window - playhead guard's DVR `repositionPolicy` (preserve in-window + playhead guard's window-exit behavior (preserve in-window scrub-back on the sliding window) is the analog of this feature's - full-history back-seek; the guard's edge-only `repositionPolicy` - variant is the no-scrub-back opposite end of that spectrum. + full-history back-seek; the edge-only end of that spectrum — no + scrub-back — is the `[live-edge-only-mode]` use-case. - **[ll-hls-support](./ll-hls-support.md)** — orthogonal cluster A extension. DVR + LL-HLS compose; both extensions sit atop the same reload-loop foundation but address different concerns diff --git a/internal/design/spf/use-cases/README.md b/internal/design/spf/use-cases/README.md index 467d97fd..dd87bdaf 100644 --- a/internal/design/spf/use-cases/README.md +++ b/internal/design/spf/use-cases/README.md @@ -141,7 +141,7 @@ Initially empty; populated as docs land. Candidates flagged in source material ( - [`audio-only-mode-override`](./audio-only-mode-override.md) *(partial — Phase 1 landed)* — audio-only delivery. Covers both truly-audio-only HLS sources and mixed-manifest sources delivered as audio-only via the same shared engine factory (`createHlsAudioOnlyEngine`). Subsumes what Notion originally framed as separate epics #4a (Basic Audio-only) and #4b (Audio-only Mode Override). - [`video-only-mode-override`](./video-only-mode-override.md) *(coarse)* — video-only delivery. Inverse-axis sibling of [`audio-only-mode-override`](./audio-only-mode-override.md); same shape. Subsumes Notion epics NEW-A (Basic Video-only) and NEW-B (Video-only Composition). - `[background-video]` — Mux's background-video product scenario: loop + autoplay-muted + GPU/thermal-aware caps + likely silent-video delivery. **Distinct from `video-only-mode-override`** despite shared Mux consumer context; both may share constituent features but address different delivery scenarios. *[GitHub #873](https://github.com/videojs/v10/issues/873); [`mux-background-video`](https://github.com/muxinc/mux-background-video) prior art.* -- `[live-edge-only-mode]` — pure-live delivery with no DVR scrub-back: always snap the playhead to the live edge on resume rather than preserving in-window position, optionally stop fetching segments while paused, and narrow the declared seekable range to the edge. The opposite end of the seekable spectrum from [`dvr-event-stream-support`](../features/dvr-event-stream-support.md). Composes on [`live-stream-support`](../features/live-stream-support.md) via its `repositionPolicy: 'on-resume'` seam (alternative-default-config) + a pause-fetch-gate behavior (add) + a narrowed-seekable producer (alternative-impl). Scope it only when a concrete consumer asks for edge-only. +- `[live-edge-only-mode]` — pure-live delivery with no DVR scrub-back: always snap the playhead to the live edge on resume rather than preserving in-window position, optionally stop fetching segments while paused, and narrow the declared seekable range to the edge. The opposite end of the seekable spectrum from [`dvr-event-stream-support`](../features/dvr-event-stream-support.md). Composes on [`live-stream-support`](../features/live-stream-support.md) by supplying its own snap-to-edge-on-resume reposition behavior in place of the window-exit guard (alternative-impl) + a pause-fetch-gate behavior (add) + a narrowed-seekable producer (alternative-impl). Scope it only when a concrete consumer asks for edge-only. - Further candidates surfaced in source material but not yet scoped: picture-in-picture, short-form / shorts-player, audio-podcast mode, cast/remote-display compositions, ambient/decorative video. ## See also