commit for AI code base refactor - checkpoint commit
This commit is contained in:
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
No feature branches pre-1.0: all work lands on `main` per work unit.
|
No feature branches pre-1.0: all work lands on `main` per work unit.
|
||||||
|
|
||||||
**Latest commit:** uncommitted (3 modified + 1 untracked: TASKS.md, ai.md, HANDOFF.md, Distribution.md).
|
**Latest commit:** `6826786` — docs: add Distribution.md (IP protection plan with Polar.sh backbone).
|
||||||
|
|
||||||
## What's In Flight
|
## What's In Flight
|
||||||
|
|
||||||
|
|||||||
@@ -981,10 +981,10 @@ The tasks below are ordered by dependency and risk. Each task builds on the prev
|
|||||||
2. ✅ **TASK 3.18** — Chat box source — renders chat ON the stream. Depends on TASK 9.4 (same message parsing).
|
2. ✅ **TASK 3.18** — Chat box source — renders chat ON the stream. Depends on TASK 9.4 (same message parsing).
|
||||||
3. ✅ **TASK 10** — Polar billing — license key entry + watermark toggle + Velopack auto-updates (steps 1-7 shipped; Velopack update URL pending).
|
3. ✅ **TASK 10** — Polar billing — license key entry + watermark toggle + Velopack auto-updates (steps 1-7 shipped; Velopack update URL pending).
|
||||||
4. ✅ **TASK 19/23** — Control Surface UX — director's control room: thumbnails above central monitor, transitions (Cut/Fade/Move), edit mode offline only, left panel two-state (layers/props ↔ chat), right panel eliminated. Verified shipped 2026-08-24.
|
4. ✅ **TASK 19/23** — Control Surface UX — director's control room: thumbnails above central monitor, transitions (Cut/Fade/Move), edit mode offline only, left panel two-state (layers/props ↔ chat), right panel eliminated. Verified shipped 2026-08-24.
|
||||||
5. **TASK 20** — Hotkeys — global keyboard shortcuts. Steps 1-2 shipped 2026-08-26: F1-F9 defaults + config UI with modifier chords, persistence, conflict detection, unbinding.
|
5. ✅ **TASK 20** — Hotkeys — global keyboard shortcuts. Shipped 2026-08-26: F1-F9 defaults + config UI with modifier chords, persistence, conflict detection, unbinding.
|
||||||
5b. ✅ **Broadcast metadata pull-out + launch geometry** — shipped 2026-08-24 (row 29 above). Live-screen "Text" tab → broadcast form, persistence + remote update; window default/minimums bumped (1920×1040 / 1366×768) with size+position restore.
|
5b. ✅ **Broadcast metadata pull-out + launch geometry** — shipped 2026-08-24 (row 29 above). Live-screen "Text" tab → broadcast form, persistence + remote update; window default/minimums bumped (1920×1040 / 1366×768) with size+position restore.
|
||||||
6. **TASK 17** — Web source (WebView2) — enables alert ecosystem.
|
6. ✅ **TASK 17** — Web source (WebView2) — shipped 2026-08-28; enables alert ecosystem.
|
||||||
7. **TASK 18** — Local recording — independent, but pairs with stream.
|
7. ✅ **TASK 18** — Local recording — shipped 2026-08-29 (running-app verification pending in handoff).
|
||||||
8. **TASK 21** — Media source — video file playback for non-Live scenes.
|
8. **TASK 21** — Media source — video file playback for non-Live scenes.
|
||||||
9. **TASK 22** — Audio sync offset — small, quality-of-life.
|
9. **TASK 22** — Audio sync offset — small, quality-of-life.
|
||||||
10. ✅ **TASK 15** — Stock bg images — all 5 scenes seeded (Starting, BRB, Live, Chat, Ending). `EnsureDefaultBackdrop()` runs on every scene switch.
|
10. ✅ **TASK 15** — Stock bg images — all 5 scenes seeded (Starting, BRB, Live, Chat, Ending). `EnsureDefaultBackdrop()` runs on every scene switch.
|
||||||
@@ -1010,7 +1010,7 @@ The tasks below are ordered by dependency and risk. Each task builds on the prev
|
|||||||
|
|
||||||
**Goal:** keyboard shortcuts for scene switching and common actions — the single biggest UX gap.
|
**Goal:** keyboard shortcuts for scene switching and common actions — the single biggest UX gap.
|
||||||
|
|
||||||
### Status: ◐ In progress — step 2 shipped 2026-08-26
|
### Status: ✅ Done — shipped 2026-08-26 (steps 1-2; all 9 checklist items complete; handoff flags it shipped)
|
||||||
|
|
||||||
1. ✅ `GlobalHotkeyManager` service — `Services/GlobalHotkeys.cs`: registers OS-level hotkeys on the window HWND via `RegisterHotKey`/`WM_HOTKEY` (`IHotkeyRegistrar` seam for tests; `RegistrarOverride` mirrors `LayoutPathOverride`). Wired in `MainWindow.OnSourceInitialized`.
|
1. ✅ `GlobalHotkeyManager` service — `Services/GlobalHotkeys.cs`: registers OS-level hotkeys on the window HWND via `RegisterHotKey`/`WM_HOTKEY` (`IHotkeyRegistrar` seam for tests; `RegistrarOverride` mirrors `LayoutPathOverride`). Wired in `MainWindow.OnSourceInitialized`.
|
||||||
2. ✅ Scene switching hotkeys — F1-F5 stage/transition the five canonical scenes.
|
2. ✅ Scene switching hotkeys — F1-F5 stage/transition the five canonical scenes.
|
||||||
|
|||||||
@@ -118,17 +118,17 @@ frame pump + failure handling (fakes for the WinRT seams), real-`MainWindow` rou
|
|||||||
interaction test, LayoutStore delete roundtrip, LayoutStore pre-round-rect-dims roundtrip,
|
interaction test, LayoutStore delete roundtrip, LayoutStore pre-round-rect-dims roundtrip,
|
||||||
LayoutStore background roundtrip, LayoutStore HasBackground roundtrip + v5→v6 non-Live backfill,
|
LayoutStore background roundtrip, LayoutStore HasBackground roundtrip + v5→v6 non-Live backfill,
|
||||||
ScreenCaptureManager refcount + shared-bitmap + coalescing
|
ScreenCaptureManager refcount + shared-bitmap + coalescing
|
||||||
(fake `IScreenCaptureSource` + a real background-STA `Dispatcher`), BackgroundTests (EnsureBackground
|
(fake `IScreenCaptureSource` + a real background-STA `Dispatcher`), BackgroundTests, SceneCatalogTests,
|
||||||
insert/idempotent/heal + HasBackground gate, IsLiveCapture, DisplaySource, INPC), SceneCatalogTests
|
the TASK 25 dirty-layout heal (BackgroundHealIntegrationTests), WebcamSafeguardTests,
|
||||||
(the five canonical scenes; NormalizeBackgrounds heal-to-locked-model + non-canonical strip;
|
SceneCompositorTests (full-scene composite + vertical tier), StretchMathTests, FfmpegLocatorTests,
|
||||||
EnsureBackground per-scene flavor), the TASK 25 dirty-layout heal integration test
|
FfmpegEncoderTests, FramePumpTests, the TASK 8/11/12 audio chain (AudioPipelineTests + MasterLimiter),
|
||||||
(RealApp + seeded temp DB: dedupe/flavor/rename/index-0 + orphaned settings purge), WebcamSafeguardTests
|
the Socials fediverse-heal roundtrip, AboutHubTests, NotificationAreaIntegrationTests (TASK 24),
|
||||||
(the per-scene size clamp incl. the Chat half-screen-area cap), SceneCompositorTests (the full-scene
|
GlobalHotkeyTests + HotkeyConfigTests (TASK 20), WebcamMenuGateTests (TASK 26), ChatLayerGateTests
|
||||||
composite integration test: background + round webcam + mirrored/bordered images + flash; the vertical
|
(TASK 27), BroadcastPullOutTests (TASK 29), DefaultRecordFolder fallback (TASK 30), WebView2ManagerTests
|
||||||
tier 1080×1920 crop/scale), StretchMathTests (UniformToFill cover-crop + bilinear), FfmpegLocatorTests
|
(TASK 17), RecordingFileTests + OnAirSignTests (TASK 18) —
|
||||||
(the PATH → cache → download decision ladder with a fake downloader serving a real in-memory zip; shared
|
**247 total (245 pass — the 2 pre-existing known failures
|
||||||
build DLL extraction) —
|
`AudioPipelineTests.Mix_HonorsProviderGains…` + `RoundClipInteractionTests.Round_Clip_Corner_Is_Grabbable…`
|
||||||
78 passing.
|
are NOT regressions; see HANDOFF.md. Run test classes individually — the full-suite vstest run hangs.)**
|
||||||
|
|
||||||
### Real-MainWindow tests MUST be hermetic (DB pollution bug)
|
### Real-MainWindow tests MUST be hermetic (DB pollution bug)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user