docs(chat): point the unwired transcript options at the reason, not a closed issue - #3422
Conversation
… closed issue Three option groups in transcriptRenderers.tsx cited #3332 for why they have no pane consumer, and the drift guard's comment told the next reader to retire it once ChatPage consumed the registry. #3332 is closed not-planned: migrating the single-chat surface is risk without payoff, so that retirement never comes. Repoint appInPanel/onOpenApp at #3300, which is the same activeSlot-keyed dock root cause, and state the precondition inline for the auto-nudge and turn-recovery options rather than inventing issues for them. Record that the drift guard is permanent, and why a guard is sufficient: ChatPage owns the row policy, so drift can only degrade a downstream surface, never that one. Comments only.
GPT 5.6 Review — ✅ no blocking findingsGPT 5.6 completed its review of This comment is updated in place on each push. Review detailsNo findings. False positive or not applicable? A repository writer can comment: |
Opus 4.8 Review — ✅ no blocking findingsReviewed Verdict parsed from the review's SHA-scoped output markers for commit False positive or not applicable? A repository writer can comment: |
UX Review (Fable 5) — ✅ PASSAdvisory UX-level review of UX-Verdict: PASS Comments-only change — no user-facing strings, UI, states, or rendered pixels touched; nothing a user can experience differs. [UX-REVIEWED] c9da574 |
Design Review (Fable 5) — ✅ PASSAdvisory design-level review of Design-Verdict: PASS Comment-only change that replaces dead pointers with inline rationale and pins the drift guard's permanence; proportionate, no behavior or contract touched. [DESIGN-REVIEWED] c9da574 |
bolichen97
left a comment
There was a problem hiding this comment.
Tier 1 auto-approve: small-fix (2 files). Criteria: no conflict, no requested changes, no security surface, AI reviewers green. Category: small-fix — corrects transcript options reference from closed issue to actual reason.
… closed issue (kirodotdev#3422) Three option groups in transcriptRenderers.tsx cited kirodotdev#3332 for why they have no pane consumer, and the drift guard's comment told the next reader to retire it once ChatPage consumed the registry. kirodotdev#3332 is closed not-planned: migrating the single-chat surface is risk without payoff, so that retirement never comes. Repoint appInPanel/onOpenApp at kirodotdev#3300, which is the same activeSlot-keyed dock root cause, and state the precondition inline for the auto-nudge and turn-recovery options rather than inventing issues for them. Record that the drift guard is permanent, and why a guard is sufficient: ChatPage owns the row policy, so drift can only degrade a downstream surface, never that one. Comments only.
1. What is the problem?
Comments in
website/src/pages/chat/transcriptRenderers.tsxand its test point readers at #3332, which is now closed as not-planned. Three option groups say "tracked in #3332" for why they have no pane consumer, and the drift guard's comment tells the next reader to retire it "when ChatPage consumes these entries directly" — the migration that issue proposed and that was rejected.2. Why this issue matters to the user
No runtime effect; this is a maintenance trap. A reader chasing #3332 lands on a closed issue and learns nothing about why the option is unwired, and the guard's comment actively invites someone to delete a check that is now permanent — which would re-open the exact regression #3302 fixed (a pane silently falling behind the single-chat row set).
3. How our fix solves it
Replace the pointers with the reason, so nothing has to be chased:
appInPanel/onOpenApp— repointed to Files are not openable from a split view pane: the dock is activeSlot-keyed but pane focus is not #3300, which is genuinely the same root cause (the dock isactiveSlot-keyed while pane focus is not).activeNudgeLoopId/onOpenNudgeLoopand thecontinuable/interrupted/continuing/onContinuegroup — no issue invented for them; the comment now states the precondition inline (a pane's composer cannot reach the auto-nudge popover;selectContinuable/selectTurnInterruptedread the active slot, so a pane cannot ask whether ITS turn was interrupted).Comments only; no behaviour, no exported API, no test assertions changed.
4. What tests we did
tsc --noEmit0 errors ·eslint0 errors ·vitest src/test/transcriptRenderers.test.tsx18/18 pass. No i18n gates needed — no strings and no JSX touched.5. Any other suggestions on the work
The rejected direction is worth stating once here so it does not get re-proposed: converging the two row sets means editing a 7000-line surface that has no user-visible defect, and the failure mode it would prevent is one-directional and already guarded. Let a second real consumer of the rich row set drive convergence if one ever appears.