Use when implementing/debugging Ctrl+O Expanded Transcript (second view) and thinking persistence in the REPL.
Use this skill when changing Ctrl+O expanded transcript behavior, thinking persistence, or compact / expanded projection boundaries in the REPL.
docs/contracts/transcript-surface-contract.mddocs/contracts/semantics-contract.mddocs/runbooks/repl-surface-debugging.md when the change can affect clear / remount behaviorThese docs are canonical. If stable expanded-transcript behavior changes, update them before or with code.
If the change touches clear / remount ownership directly, also use formax-surface-reset-workflow.
packages/core/src/screens/repl/hotkeys.tspackages/core/src/screens/REPL.tsxpackages/core/src/screens/repl/compactProjection.tspackages/core/src/screens/repl/transcript.tsxpackages/core/src/features/repl/controller/streaming/streaming.tspackages/core/src/screens/repl/panels.tsxpackages/core/src/features/repl/controller/send/send.tspackages/core/src/screens/repl/useSurfaceTransitionManager.tsthinking_delta is the only source of truthStatic hacks for toggles:Static is append-only; if content must disappear, use reset / remount ownership instead of trying to "unrender" itbanner -> summary (expanded only) -> > /compact ... -> compact sublineui.kind remain independent from prompt-history packing and reminder injectionthinking_delta persistence and transcript projection rules before renderer polish.Static workarounds.bun run test -- packages/core/src/screens/repl/compactProjection.test.ts packages/core/src/screens/repl/expandedTranscript.test.tsx packages/core/src/screens/repl/hotkeys.test.tsxbun run test -- packages/core/src/screens/repl/surfaceSmoke.test.tsxbun run test:surface-screen-modelbun run type-checkthinking_delta.Ctrl+O steal input while prompt mode or overlays are active.Static to “fix” duplication; solve ownership and remount boundaries instead.