docs: Campaign CH CLOSED USER-ACCEPTED — five gate rounds to acceptance

Round 5 (2026-08-10): 'Good, looks good now.' Carried tail recorded in
the plan header and CLAUDE.md.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-08-10 21:48:16 +02:00
parent bcc34ee301
commit 5f2a7d7898
2 changed files with 16 additions and 77 deletions

View file

@ -150,14 +150,13 @@ retail parity (`docs/plans/2026-08-08-audio-parity-campaign.md`) is
CODE-COMPLETE 2026-08-08** with slices A1A6 landed and listening-gate CODE-COMPLETE 2026-08-08** with slices A1A6 landed and listening-gate
rounds user-driven; open tail: #358 (Ctrl+M mute chord never fires) and rounds user-driven; open tail: #358 (Ctrl+M mute chord never fires) and
the formal plan-status flip. **Campaign CH — chat & interface-text retail the formal plan-status flip. **Campaign CH — chat & interface-text retail
parity (`docs/plans/2026-08-09-chat-parity-campaign.md`) is CODE-COMPLETE parity (`docs/plans/2026-08-09-chat-parity-campaign.md`) is CLOSED
2026-08-09** with slices CH1CH4 (colors, SpewBox interface text, side USER-ACCEPTED 2026-08-10** after five connected gate rounds: retail
channels, command registry) landed and dual-Opus-reviewed, pending the colors, the SpewBox with retail's two-plane glyph outlines, working side
connected user gate (test script: channels, the 152-verb command registry, the CH6 window shell (floating
`docs/research/2026-08-09-campaign-ch-test-script.md`); carried tail windows, all-corner resize, opacity), and verbatim /help. Carried tail:
#359#361 (#358 and #362 closed pre-existing; #363 closed 2026-08-10 — #360/#361, #366, #369, AP-177/190/191, and the round-5 review S1S3
the interface-text seam, see `docs/plans/2026-08-09-chat-parity-campaign.md`'s polish items.
ledger).
**Placement cutover — C4 COMPLETE 2026-08-05, merged to main.** Every **Placement cutover — C4 COMPLETE 2026-08-05, merged to main.** Every
placement route now runs through the canonical residence + continuation- placement route now runs through the canonical residence + continuation-

View file

@ -1,74 +1,14 @@
# Campaign CH — chat & interface-text retail parity # Campaign CH — chat & interface-text retail parity
**Status:** CODE-COMPLETE 2026-08-10 (goal window closed; see the round-4 script) — all four implementation slices **Status:** USER-GATE PASSED — CAMPAIGN CLOSED 2026-08-10. Five connected
landed and dual-Opus-reviewed; pending the connected user gate (test gate rounds (2026-08-09/10) iterated colors, SpewBox, side channels,
script: `docs/research/2026-08-09-campaign-ch-test-script.md`). CH1 commands, the window shell, and the retail text style to user acceptance
complete (implementation `172c6f9a` + review fixes `34d8a3c0`); CH2 (round 5: "Good, looks good now"). Carried tail: #366 (unseen-text
CODE-COMPLETE and CLOSED pending the user gate (`77c8296e`, indicator), #369 (floaty send channel), AP-177 (SpewBox line lifetime),
REJECT-reviewed at `docs/research/2026-08-09-ch2-review-findings.md`, AP-190 (opacity ease), AP-191 (transcript tag colors), and the round-5
reworked `e0e78883`, re-reviewed APPROVE-WITH-FIXES with nits applied at review's S1/S2/S3 follow-ups (per-block outline hoist, non-UiText outline
`233c30d1`) — the sole outstanding item is the in-client user gate paths + register row, reconciliation hex citation) — queued as post-close
(jump-in-air / jump-loaded refusals showing on-screen, not in chat). CH3 polish.
(side channels) CODE-COMPLETE, pending the connected user gate — see the
CH3 row below and `docs/research/2026-08-09-chat-side-channels-vs-ace.md`.
CH4 (command registry completion) CODE-COMPLETE, closed at `5d247d55`
see the CH4 closeout below; 138 of 152 registry verbs now execute
locally, 5 are deliberately deferred (issues #360/#361/#362, register
rows TS-68/TS-69/TS-70), and 9 are retail's own null-handler help-only
nodes. CH5 (this closeout sweep) is COMPLETE — plan/register/ISSUES/
CLAUDE.md/roadmap ledger flip plus the chat memory digest. **User gate
round 1 ran 2026-08-09 and found ten live defects; see "User gate —
round 1" below.** Items AG are fixed in round 1's commit; the three
remaining findings (extra chat windows on 1/2/3/4, resize only working in
one corner, transparency/artifacts) are out of round 1's scope and filed
as a new slice, CH6. **User gate round 2 ran 2026-08-09 and found six
more findings; see "User gate — round 2" below.** Items 2 ("In Portal
Space…" on the wrong surface) and 4+5 (`/help` text fabricated/misaligned)
are fixed in this round's commit; item 3 is confirmed-fixed with no
regression; item 6 is folded into CH6a's existing scope. Item 1
(jump-in-air still silent live) is NOT reproduced and NOT speculatively
fixed — round 1's press-edge logic is provably correct by construction
from source, a live headless repro was attempted and blocked (no
character on the probe account), and two temporary graphical-only probes
are left behind for the next round. **CH6a (main-window layout + 8-grip
resize) landed CODE-COMPLETE the same day** — see its ledger row and the
updated round-1 items H/I and round-2 item 6 dispositions below; CH6b
(floating windows 14) and CH6c (opacity) remain not started. Round 2's
open item 1 (jump-in-air) was root-caused between rounds from live probe
evidence and FIXED at `a5a7eb4f` — a production-controller install path
never wired `OnInterfaceText`. **User gate round 3 ran 2026-08-10 and
found three more findings, all presentation; see "User gate — round 3"
below.** All three are fixed in this round's commit: the SpewBox now
mounts flush to the viewport top and resolves a real (smaller) retail dat
font instead of the unwired 15px debug fallback; bare `/help` and
`/help <verb>` (including `/help death`) now print retail's exact
`DoHelp` shape — two scroll entries in the right order, not one
acdream-invented blob. **CH6b (floating chat windows 1-4) landed
CODE-COMPLETE 2026-08-10** under this session's hard constraints (no
subagents, no client launches) — see its ledger row and Slices bullet.
**CH6c (opacity) landed CODE-COMPLETE 2026-08-10**, same constraints —
see its ledger row and Slices bullet; the full three-sub-slice CH6 window
shell is now CODE-COMPLETE. **User gate round 4 ran 2026-08-10 and found
six findings; see "User gate — round 4" below.** Items 3 (user-visible
`/help` meta-markers leaking into live output, closing #364) and 5 (the
main window's 1/2/3/4 indicator buttons now toggle their floating window
on click, per the user's retail memory) are fixed at `5b54387b`; item 4
passed with no action needed; item 6 is deferred to the settings track.
**Items 1+2 (text-style findings) landed CODE-COMPLETE this commit**, off
the parallel read-only research agent's findings
(`docs/research/2026-08-10-retail-ui-text-style.md`): the retail two-plane
glyph-outline mechanism (background atlas inflated by the font's
border-pixel margin, a bug that made "enable the outline flag" alone a
visual no-op), property 0x21/0x22 import so every authored-outline element
gets it for free, the SpewBox's authored font/size/outline (retired two of
AP-178's four open sub-claims), and the chat transcript's authored
default-fill seed (`ARGB(255,204,204,204)`, wired without touching the
34-entry `LogTextType` color table). Status stays CODE-COMPLETE pending the
next user gate round (still needed for CH6a's own visual confirmation,
CH6b's keybind/mirror/filter behavior, CH6c's focus-driven fade and
Settings slider, round 3's fixes, round 4's item 3+5 fixes, round 4's item
1+2 text-style fixes, and a final in-client visual pass on everything fixed
so far).
**Why now:** first track of the alpha-release program (chat is the most **Why now:** first track of the alpha-release program (chat is the most
visible daily surface for the friend-alpha). User-directed 2026-08-09. visible daily surface for the friend-alpha). User-directed 2026-08-09.