Docs: record the zoom box as TASK 52 and fix the task-numbering drift (Unit: zoom docs)

The zoom feature shipped without a task record while its index rows carried the
"TASK 51" label — which belongs to the webcam background effects (Remove + Blur).
For an honest catalogue and handoff:

- TASKS/task-52-zoom-box.md: feature provenance (creator-requested), the three
  2026-10-08 corrections (loupe -> anchored capture over the full composite drawn
  last -> never show the dim shading), shapes, implementation map, tests, DONE.
- TASKS.md: row 52 added (shipped); row 51 reworded — unblocked now that the
  zoom build shipped.
- TASK 51 -> TASK 52 in Models/index.md, ViewModels/index.md, and the two code
  comments that pointed at the zoom as "TASK 51".
- HANDOFF.md: pre-push readiness notes (5 commits ahead, push-safe).
This commit is contained in:
2026-10-08 08:52:36 -07:00
parent 948dd08214
commit fe80e8c994
7 changed files with 67 additions and 7 deletions
+12 -1
View File
@@ -1,8 +1,16 @@
# HANDOFF — 2026-10-08 (zoom rework + dims-shading fix)
# HANDOFF — 2026-10-08 (zoom box shipped, READY FOR PUSH)
## Branch
- main (no feature branch)
## Push readiness
- **5 commits ahead of origin/main, clean to push** (fetch confirmed origin has not moved):
`966e718` zoom box visuals → `4b3d82f` zoom as layered + TASK 51 booking → `6bff21b`
anchored-capture rework → `948dd08` dims-shading fix → (docs unit: TASK 52 record +
numbering fixes + this HANDOFF).
- The pinned-chat work unit below is **uncommitted on purpose** — `git push` sends only
commits, so pushing is safe; the dirty files stay local.
## Dirty files (NOT mine — the in-flight "pinned chat" work unit; do NOT commit or co-edit)
- `Models/YouTube.cs`
- `ViewModels/MainViewModel.Chat.cs`
@@ -25,6 +33,9 @@ is dimmed". Structural invariant added to `ZoomBoxInteractionTests`: `DimRectsLa
child of `PreviewCanvas`, not inside `CanvasGrid`, and renders below the `ZoomBox`.
## Zoom feature state
- **TASK 52 (zoom box) is now a first-class record** — see [`TASKS/task-52-zoom-box.md`](TASKS/task-52-zoom-box.md):
feature provenance + the three creator corrections, shapes, implementation map, tests.
TASK 51 (webcam background Remove + Blur) is unblocked for the next unit.
- Models: `ZoomState.cs`, `ZoomShape.cs` (Circle/VerticalRectangle/HorizontalRectangle), `ZoomSceneElement.cs`.
- ViewModel (`MainViewModel.Zoom.cs`): `ActivateZoom`/`ToggleZoom`/`DismissZoom`/`StartZoomMove`/`UpdateZoomMove`/`EndZoomMove` + `RebuildDimRectsForZoom`; transient element healed/mirrored by `HealZoomLayers`/`EnsureZoomLayer`.
- Output: box composited last via `BlitZoom`/`ZoomMagnifier`; output crop = tier (box never the crop).