Model the AlertBox and standalone ticker with shared settings; scene tickers render the in-memory active and queued events without saving history. Keep AlertBox content active-event-only. Ref: https://obsproject.com/kb/obs-studio-overview
28 lines
1.5 KiB
Markdown
28 lines
1.5 KiB
Markdown
# HANDOFF — 2026-11-02 (scene-local alert ticker)
|
||
|
||
## State
|
||
|
||
- `main`; ticker work is local and not pushed.
|
||
- Standalone `SourceType.Ticker` is addable once per scene, has per-source settings, and shows the
|
||
in-memory current + queued alert feed. It does not persist event history.
|
||
- Stream Alerts keeps one box per layout; its ticker shares `Ticker` settings but shows only the
|
||
active event. Existing per-Source columns persist the settings without a schema migration.
|
||
- Focused build succeeded; the new integration test and all `AlertTickerPreviewDisplayTests` pass.
|
||
|
||
## Next action
|
||
|
||
Next queued unit: Day 1 system-message strip; also check the queued Debug-only test-access rule.
|
||
Keep one integration test per change. Do not push absent a milestone/checkpoint request.
|
||
|
||
## Landmines
|
||
|
||
- Build/test with Windows `dotnet.exe`; the full suite can hang in WASAPI teardown.
|
||
- Focused ticker tests pass; clean app build is 0 warnings. Full suite reports 13–14 UI/content
|
||
failures (508/521 or 507/521 pass), matching the prior baseline note; none is a ticker test. Their
|
||
relationship to this change is unconfirmed, and `verify.sh` currently only allows two other tests.
|
||
- The integration assertion is in `ytLive.Tests/AlertTickerPreviewDisplayTests.cs` and must use
|
||
`LayoutPathOverride`/clear it in `finally` if it constructs `MainWindow`.
|
||
- Scene tickers are dynamic per-element sources; only the AlertBox ticker uses the pump's global
|
||
ticker overlay callback.
|
||
- Bundled FFmpeg stays outside the single-file exe (`ExcludeFromSingleFile="true"`).
|