diff --git a/docs/plans/2026-08-24-character-panel-parity-campaign.md b/docs/plans/2026-08-24-character-panel-parity-campaign.md index 7c3602bc..7310e3bd 100644 --- a/docs/plans/2026-08-24-character-panel-parity-campaign.md +++ b/docs/plans/2026-08-24-character-panel-parity-campaign.md @@ -1,6 +1,6 @@ # Campaign CT — Character-panel retail parity (header identity, Titles page, resize/scrollbar, row alignment) -**Status:** PLANNED 2026-08-24 (owner gate report after the CA5/chat rounds). +**Status:** IMPLEMENTATION COMPLETE 2026-08-25 — CT1-CT6 all review-closed (per-slice Opus dual-lens review + fix round); CT7 connected gate script ready at `docs/research/2026-08-25-campaign-ct-test-script.md`, awaiting the owner's drive. NOT pushed to gitea (owner directive). **Execution model:** Fable plans and coordinates; Sonnet implements each slice; Opus runs the dual-lens review (retail-faithful + architectural) per slice, then a fix round. No pushes to gitea until the owner says so. @@ -381,7 +381,7 @@ attribute/skill rows with the authored row templates from CT1: icon placement, name/value columns, the authored right margin that reserves the scrollbar gutter. -**CT6 — Resize + scrollbar contract.** CT6 research lead (Fable, +**CT6 — Resize + scrollbar contract. REVIEW-CLOSED 2026-08-25: landed `ec50455a`, Opus review (1 blocker: chrome-inclusive host constraints double-counted; S4 default-height ruling = retail's 372px), fix round `996cd736`.** CT6 research lead (Fable, 2026-08-24, follows CT1 correction (a)): `gmPanelUI::ResizeTo @0x004BC6E0` is a bare tailcall to `UIElement::ResizeTo` — no clamp there, so the minimum lives in the generic Resizebar drag path reading