Files
LlamaCasty/HANDOFF.md
T

3.8 KiB
Raw Blame History

HANDOFF — Session State

Branch

main — clean, 0 warnings.

What shipped this session

  1. TASK 10 — Polar billing + Velopack auto-updates (steps 1–7)
  2. TRAX meter double-attenuation fix
  3. LAN infrastructure documented — all servers in ai.md + CREDENTIALS.md
  4. llamavault NFS/SMB diagnosis
  5. Control Surface UX — all 10 phases complete (StagedScene/LiveScene, thumbnails, edit gating, transitions, brand rename)
  6. Sliding pill toggle — green ON (#22c55e) / red OFF (#ef4444), replaces checkbox
  7. Backdrop → Background — full C# rename, SQL column rename with migration, asset files renamed, Source.IsBackground new → override fix, legacy "Backdrop" display name migration
  8. Geometry mismatch error — red text when custom background aspect ratio >5% off 16:9
  9. Per-scene background properties — UseDefaultBackground + CustomBackgroundPath on SceneElement (superclass), persisted per-source via BackgroundPath_{sourceId} / BackgroundUseDefault_{sourceId} in Settings table
  10. All five scenes have backgrounds — SceneCatalog.HasBackground returns true for all canonical scenes. EnforceBackgroundPolicy no longer strips backgrounds from non-Live scenes.
  11. Pill toggle label — "Use default background:" TextBlock before toggle
  12. Pill toggle wiring — SelectedElement.PropertyChanged subscription triggers UpdateBackgroundImage + RefreshSnapshotsAsync + ScheduleSave on UseDefaultBackground change

Background layer rules

  • Every scene has a Background layer at position 0 — undeletable (trash icon hidden, context menu "Remove Layer" hidden, RemoveElement returns early)
  • IsBackground is derived from SourceType.Background via Source.Type setter — impossible to forget
  • All five scenes have default images stored in Asset BLOBs in SQLite
  • First run: pill ON for all five, shipped defaults load
  • Toggle OFF → browse for custom file, FQFN stored
  • On reload: try to load custom file; if missing, fall back to default asset
  • EnsureDefaultBackground re-seeds missing backgrounds on scene switch (covers Starting, BRB, Chat, Ending; Live covered by seed methods)

Current state

  • 0 warnings, 0 errors
  • 210/211 tests pass (1 pre-existing AudioPipeline gain-math failure)
  • Deleted backgrounds re-seed automatically via EnsureDefaultBackground

Build

taskkill.exe /F /IM ytLive.exe  # if running
"/mnt/c/Program Files/dotnet/dotnet.exe" build "C:\Users\gramp\Documents\Code\projects\ytLive\ytLive.csproj"
"/mnt/c/Program Files/dotnet/dotnet.exe" vstest "C:\Users\gramp\Documents\Code\projects\ytLive\ytLive.Tests\bin\Debug\net8.0-windows10.0.19041.0\ytLive.Tests.dll"

Polar.sh resources

Resource ID
Org ID c05fb364-b967-4f6c-adf2-8a144e46d085
Product d105dfa1-497e-423b-8cd4-e0ee2e3abbc0
Price 7c1b6f70-cf8c-46df-9bc8-6703f9fa64d0
Benefit 80f66bc1-d5a3-44a1-b9ea-1709ae508535
Checkout 70e037cd-9bcb-414e-8b26-c82c1d268f65
Checkout URL https://buy.polar.sh/polar_cl_ueMy8AyAClO0o0yo19IroZwKTbD587gzUsjEW3bFapw
Validate endpoint POST https://api.polar.sh/v1/customer-portal/license-keys/validate
Key prefix LCYT-

Next steps

  1. Visual testing — run on Windows display, verify backgrounds show for all 5 scenes
  2. Thumbnail drag-reorder — reorder scenes via drag on thumbnail strip
  3. Real snapshot generation — replace placeholder colors with compositor-rendered thumbnails
  4. Transition dropdown UI — add XAML control to pick transition type + duration

v1 vision

A streaming tool that's intuitive and ready to go out-the-gate with nothing held back. Minimal configuration — they're ready to go live or record. Eliminate the OBS pain-point completely.