From c8374bd7ed088e2c5fd39ddc7368a12376b557ac Mon Sep 17 00:00:00 2001 From: gramps Date: Sat, 29 Aug 2026 09:13:48 -0700 Subject: [PATCH] Docs: HANDOFF + TASKS reflect TASK 18 shipped as a9eb360 (working tree clean) --- HANDOFF.md | 23 +++++++++++------------ TASKS.md | 2 +- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/HANDOFF.md b/HANDOFF.md index 06b123a..6ce332f 100644 --- a/HANDOFF.md +++ b/HANDOFF.md @@ -2,14 +2,11 @@ ## Branch / Commit State -**`main`**, working tree has an **uncommitted TASK 18 work unit** (record-only pipeline + top-bar -pills/light/button UX + About resize + now button-label Start/End simplification) **plus a docs/image -memory-map fix** (derived-solution rule + README hero image). `origin/main` and head are both at -**`1e633f9`** (spin-guard rule), already pushed. This session's changes are **NOT committed** yet — see -"Next steps". +**`main`**, **working tree CLEAN.** TASK 18 (record-only pipeline + top-bar pills/light/Start-End button UX ++ Sign In label/spacing) **plus** the memory-map/derived-solution fix **and** the README hero image were +committed and pushed as **`a9eb360`** (2026-08-29). `origin/main` and head both at **`a9eb360`**. -No feature branches pre-1.0: all work lands on `main` per work unit (pending the creator's go-ahead to -commit + push). +No feature branches pre-1.0: all work lands on `main` per work unit. ## Memory-map corrections (2026-08-29 — "don't re-derive" fix) @@ -25,9 +22,9 @@ commit + push). 1400×794, 188KB JPEG). -## TASK 18 — Local recording (in progress, 2026-08-29) +## TASK 18 — Local recording (shipped `a9eb360`, 2026-08-29) -**Shipped in this (uncommitted) change:** +**Shipped (committed + pushed):** - `EncoderOptions` + `FfmpegArgs` + `FfmpegEncoder`: independent `StreamEnabled`/`RecordEnabled`/ `RecordPath`; per-output blocks (`-f flv` stream, `-f mp4` record); encoder throws unless ≥1 output. - `MainViewModel`: REC + ON-AIR pill toggles, status lights, dynamic `PrimaryButtonText` @@ -70,6 +67,8 @@ docs/ytLlive-preview.jpg docs/ytLlive-preview.png(deleted)` ## Next steps -1. Creator to decide: commit + push this TASK 18 work unit (scope list above), or refine first - (verify the rename + dual output in the running app before committing). -2. Continue queue: TASK 21 media source, TASK 22 audio sync offset. +1. **Running-app verification** of TASK 18 (the one real gap): confirm rename-on-stop produces + `ty-…-.mp4` and dual stream+record output actually works live. Requires the creator to run the app. +2. Manual rename dialog (planned modal for user-chosen name) — parked, needs a trigger (toast service has + no actions). +3. Continue queue: TASK 21 media source, TASK 22 audio sync offset. diff --git a/TASKS.md b/TASKS.md index d1cd2bd..964e576 100644 --- a/TASKS.md +++ b/TASKS.md @@ -951,7 +951,7 @@ click (volume sliders keep their manual `SetSliderValueFromClick`, harmless dupl **Goal:** record the stream output to a local file, with or without simultaneously streaming. -### Status: 🔄 In progress — encoder/CLI + VM + top-bar UX shipped (2026-08-29) +### Status: ✅ Shipped `a9eb360` (2026-08-29) — code done, build 0 warnings, 244/246 tests; remaining = running-app verification + manual-rename modal 1. ✅ `EncoderOptions` extended with `StreamEnabled` / `RecordEnabled` / `RecordPath` (independent intent flags) 2. ✅ `FfmpegArgs.Build` reworked into per-output blocks (stream `-f flv`, record `-f mp4`) via `AddVideoTags`