jackwener/maka-agent
refactor(cli): extract the shell-run hydration state machine from pi-tui-runner.ts
已关闭
#1,412 创建于 2026年7月23日
enhancementgood first issue
仓库指标
- 星标
- (1 个星标)
- PR 合并指标
- (30 天内没有已合并 PR)
描述
Part of #1084 (second-pass sink-file and boundary governance). The underlying buffer primitives (ShellRunUpdateBuffer, mergeShellRunUpdate, projectShellRunUpdateForSession) and shell-run-elapsed-ticker.ts are already extracted; the runner-local state machine is not. Scope re-verified against current main (pi-tui-runner.ts, 2642 lines).
Scope
Move the hydration controller (~L456–543) into shell-run-hydration.ts:
- local state:
shellRunOwnerMappings,hydratingShellRunsFor,shellRunHydrationEpoch,shellRunHydrationRetryTimer,pendingShellRunUpdates - closures:
applyShellRunViewUpdate,replayPendingShellRunUpdates,resetShellRunSessionState,hydrateShellRuns, and the update subscription
Expose a controller that takes driver/applyToTranscript deps; the runner keeps only wiring.
Invariants
Same as #1084: behavior-neutral; stable exports; no reverse imports; flat PR off main.
Verification
Typecheck/build + the existing behavior-driven runner tests.