Files
LlamaCasty/HANDOFF.md
T

57 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# HANDOFF — Session State
## Branch / Commit State
**`main`**, clean tree, **4 local commits NOT pushed** (await user "push"):
- `6799c40` — fix: first-native-launch crash (3 stacked faults) + RoundClip test root-caused → green
- `711ba54` — docs: HANDOFF rewrite + TASK 21 picker spec imported into TASKS.md
- `e1d8b10` — docs: v1 = feature-complete ruling; TASKs 32–36; out-of-product list; map-lie fixes
- `7c6ec3e` — docs: pre-GA posture (visibility lock, flash preview-only + escalation, audit → gold)
## What this session accomplished
1. **Product/PM gap audit** (the creator's "potholes and gone streets" fear): everything un-tasked
surfaced and ruled. Read ai.md → Monetization + TASKS.md → file end ("v1 = the finished product",
"Out of product — permanently", TASKs 32–36) — the rulings are IN the map now, not here.
2. **Fixed the first-startup crash** (user launched post-refactor for the first time — NRE):
SceneGraph ctor-order + window-scope styles the extracted LeftPanel couldn't see (full audit:
exactly 2 offenders). App verified booting + closing clean on the real desktop; real DB intact.
3. **Killed one of the two "known failures":** RoundClip was stale TEST code, not product —
`window.FindName` across namescopes + `VisualTreeHelper.HitTest` (which ignores input semantics
and returned the invisible WebViewHostPanel overlay for every point). `UIElement.InputHitTest`
proved the corner IS grabbable. Test green. Recipes recorded in MyMistakes.md.
## Test suite truth (2026-09-01, verified natively)
- 247 tests, **246 pass**; the SOLE known failure is `AudioPipelineTests.Mix_HonorsProviderGains…`.
The creator's hint: they attribute it to "sound channel declaration/init". Clue spotted tonight:
real launches log "Audio: using system default mic + default output" TWICE (19:16 and 19:30
sessions) — possibly double mixer start or double log call; worth a look when the audio slice is
picked up. Not chased (out of scope, Good Dog).
- Per-class `dotnet.exe vstest` runs RealApp/MainWindow suites fine from WSL (6 classes + RoundClip
green tonight). Full-suite still hangs (WASAPI) — don't run it.
- The RealApp testhost shares `%APPDATA%\ytLlive\startup.log` with the real app — 'test-camera'
failure lines in there are test noise; check DB state by querying, not reading.
## What's next (creator's queue — do not expand)
**TASK 21 UI picker slice** (spec now lives in TASKS.md → TASK 21, imported from the old handoff so
it can't be lost by a rewrite). Then TASK 32 → 33 → 34 → 35 → text source → monetization chain →
MARCOM → TASK 36 gold pass, per "v1 execution order" in TASKS.md.
## Landmines
- 4 unpushed commits — `git log origin/main..main` before assuming remote state.
- Stale `testhost` can lock ytLive.dll (MSB3027) → `taskkill /PID N /F` via cmd.exe.
- WSL cannot spawn Linux ffmpeg from the Windows CLR shim; contract verification recipe + static
ffmpeg live at `/tmp/opencode/` (MyMistakes has the how-to).
- Pre-commit gate: `./scripts/verify.sh "<files>"` — but its full-suite step hangs; tonight's flow
(clean build + per-class vstest + scope-check) is the working substitute from WSL.
- Real-`MainWindow` tests MUST set `MainViewModel.LayoutPathOverride` (temp DB) or shutdown saves
pollute the user's real layout.
## @ User note — no unsolicited roadmap
Work what's queued; report what changed; no forward-looking "what's next" lists unless asked.
Prefers short, spaced-out output over dense text (tired eyes — one idea per line beats a table).