commit c60a6d64a4414b0b8d9b26123f12f0f1886abe75
parent 60b908a5a39c507ab071516f2fb179103147792a
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date: Wed, 30 Sep 2026 23:58:30 -0400
plans: the on-screen deck, as shipped — the review fixes' row, the gates on 60b908a5, the review's verdict and its lows
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Diffstat:
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/plans/onscreen-deck.md b/plans/onscreen-deck.md
@@ -306,8 +306,12 @@ at 0d1e7d69 before the final gates.
| c653e119 | S3 — one command composes, renders and overlays; `applyChrome` for transition 0; `--chrome-only` / `--no-chrome` / `--chrome-preview`; `-reinit_filter 0` + `format=rgba`; verify-build deck checks; absolute concat list |
| 89fd4cfa | S7 — README, report-video/build/clip-bench docs, quirks, "As built" |
| 66e60c65 | S6 — `onscreen.spec.ts`, deck fixtures and a HyperFrames stub; the 409 reload keeps only real edits; timeline-row locators scoped past the table's `data-entry` |
+| 2d746cbc | Review fixes — the deck reuses a cached hard-cut concat only for the same segments in the same order (`<prerail>.segments`, `sameConcatList`); chapters take `onscreen.title` only under the deck |
+
+### Gates
+
+On 66e60c65 (everything), then on 2d746cbc after the review fixes (the gates the fixes touch):
-### Gates on 66e60c65
- `pnpm -r --no-bail --workspace-concurrency=1 exec tsc --noEmit` clean (81 s).
- common 2,404/2,404; editor unit 101/101; `test:scripts` 267 pass, 2 skipped (the
@@ -318,6 +322,11 @@ at 0d1e7d69 before the final gates.
- umtool `next build` with the corpus linked, under the 5 GB cap: exit 0, 22 s; link removed.
- umtool e2e `onscreen clip-bench build projects report-fetch-via-editor`: 87 passed (3.6 min);
on S6's branch 87/87 twice (7.8 and 3.3 min).
+- On 2d746cbc: tsc clean (65 s); `test:scripts` 268 pass, 2 skipped; capped umtool build exit 0
+ (19 s), link removed; umtool e2e 87 passed (3.3 min).
+- Review (read-only, Opus): SHIP AFTER FIXES — F1 (a reordered timeline reused the old hard-cut
+ concat under `--chrome-only`) and F2 (chapters took `onscreen.title` without the deck), both
+ fixed in 2d746cbc.
- Byte-identical without `render.chrome`: `--only c07` and `--only t00` segment md5s equal to
the base's (S1), and `c07` again after S3.
- First application, built from this branch with `--skip-fetch`: 17 clips, 350.2 s, deck
@@ -335,6 +344,13 @@ at 0d1e7d69 before the final gates.
settings do not (save recomposes).
- e2e runs the renderer through a stub; the real renderer is proven by the gates above, not by e2e.
- The legacy chart band still refuses `transition: 0`; `applyChrome` could serve it, untested.
+- The chart band's renderer is now the pinned `hyperframes@0.8.24` (it was `@latest`), through
+ the same `hyperframesCommand`; GSAP is vendored rather than loaded from a CDN.
+- `render.palette` colours reach the preview composition's CSS unescaped; only a manifest's
+ author can set them.
+- The rail's `--preview` and `--chrome-preview` both write `<slug>.preview.mp4`; a deck refuses
+ a rail, so one manifest cannot produce both.
+- `chrome/deck-from<s>[-frames]` preview windows are never pruned.
### Rollout