From e9d1a9862cbb993d372335e6b912f085e7e30577 Mon Sep 17 00:00:00 2001 From: Astro-Han Date: Sat, 22 Aug 2026 19:42:22 +0800 Subject: [PATCH] fix(cli): declare the transcript command's mid-turn disposition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #2999 added the /transcript command and the change making midTurn a required field on MakaSlashCommand landed separately. Each was green on its own branch; main broke where they met. 'local' rather than 'refuse': showTranscriptViewer only calls tui.showOverlay, never entering runControl, so it satisfies the local contract — and mid-turn is exactly when reading back the transcript is most useful, so refusing there would remove the command's main value. Generated-by: Claude Opus 5 (Claude Code) --- packages/cli/src/pi-tui-runner.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/cli/src/pi-tui-runner.ts b/packages/cli/src/pi-tui-runner.ts index 516c309d44..9aeefc8bcf 100644 --- a/packages/cli/src/pi-tui-runner.ts +++ b/packages/cli/src/pi-tui-runner.ts @@ -2876,6 +2876,10 @@ export async function runMakaPiTui(input: MakaPiTuiInput): Promise { }, transcript: { description: primaryGuidance.commands.transcript, + // Read-only overlay over the in-memory transcript: showTranscriptViewer + // only calls tui.showOverlay and never enters runControl, so it stays + // usable mid-turn — which is exactly when looking back is most useful. + midTurn: 'local', run: (parts: string[]) => { if (parts.length !== 1) { state.entries.push({