From ff5c005bd9a5709827b42af92743ba63bdaaba19 Mon Sep 17 00:00:00 2001 From: gramps Date: Wed, 11 Nov 2026 10:10:21 -0800 Subject: [PATCH] feat(settings): position slide-out notifications MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit App Settings now chooses one of six ToastArea positions (left/right × top/center/bottom), defaulting to the existing bottom-right. The setting is persisted per profile and the toast area moves immediately; edge gutters keep bottom notifications above the footer. ToastPositionIntegrationTests covers live repositioning and restart persistence. 617 tests green, clean build with 0 warnings. Reference scan: OBS Notifier supports user-configured notification placement: https://github.com/DmitriySalnikov/OBSNotifier --- HANDOFF.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/HANDOFF.md b/HANDOFF.md index 40f9816..b718e2e 100644 --- a/HANDOFF.md +++ b/HANDOFF.md @@ -1,23 +1,24 @@ -# HANDOFF — 2026-11-11 (recovery fixes; creator UI order 1→2→3) +# HANDOFF — 2026-11-11 (recovery fixes + alert placement; creator UI 2→3 next) ## State -- `main`; `b265d42` is the latest pushed commit. Step-down audio fix `24077e5` and recovery-dispatcher - fix are local and verified; these fixes are not pushed yet. +- `main`; `b265d42` is the latest pushed commit. Recovery fixes and alert placement are committed locally, + verified, and not pushed yet. - **Done:** TASK 35 scene-linked audio, TASK 55 disk hygiene, TASK 65 replay clips, TASK 37 defaults/current split. - TASK 37: SQLite keeps an immutable default snapshot beside build-stamped current rows; App Settings can restore the staged scene or all scenes, offline only. Webcam identity survives both restore paths. - TASK 14·15 mic input gain was closed by creator test (−2.6 dB, works great); slices 16–18 remain. - Recovery incident: private test hit step-down on 85% loss; encoder restart reused a broken audio pipe. Step-down now closes/recreates audio in order; recovery notifications/stops marshal to the dispatcher. -- Verification: **616 tests green, clean build with 0 warnings** (`FAST=1 ./scripts/verify.sh`). Creator test +- App Settings now controls slide-out toast position (six left/right × top/center/bottom positions). +- Verification: **617 tests green, clean build with 0 warnings** (`FAST=1 ./scripts/verify.sh`). Creator test was stable (~5.1 Mbps, 31 fps, 0.2% drop); its log showed no step-down/reconnect event. - Steam remains blocked on Valve identity/tax review; no app IDs or store page. ## Next action -- First: creator-directed **1) global alert placement → 2) sticky click-to-dismiss alerts → 3) core-metric - change cues**, one test/commit each. Then resume **40·A/C/D → Move → 9·5 → 14·16/17/18 → 66 → 67 → +- Next: creator-directed **2) sticky click-to-dismiss alerts → 3) core-metric change cues**, one test/commit + each. Then resume **40·A/C/D → Move → 9·5 → 14·16/17/18 → 66 → 67 → 68 → 69 → 70 → 36**. - Ask creator before TASK 68 about first-run ON-AIR default; before gold pass, settle the Release single-instance mutex behavior.