feat(cli): show live session status in the /session picker - #3441
feat(cli): show live session status in the /session picker#34411625567290 wants to merge 1 commit into
Conversation
Astro-Han
left a comment
There was a problem hiding this comment.
Thanks for wiring the live runningTurnIds through the existing Runtime Host catalog seam. This matches the problem in #3384: the picker can now distinguish a genuinely running Session from a stale persisted running status, while the CLI remains a presentation layer and the Host remains the authority for live Turn state.
I found one non-blocking P2 follow-up below. The core implementation and status vocabulary are otherwise aligned with the existing Host and Desktop rules.
AI-assisted review disclosure: OpenAI Codex assisted with the exact-head review of the #3384 problem definition, Runtime Host live-state authority, CLI mapping, picker rendering, and focused tests. I verified the current head, base, CI, review state, the complete diff, and the cited Host-to-CLI and picker code paths before preparing this comment.
| ? ` subagent:${session.subagentRuntime.profile}` | ||
| : ''; | ||
| return { | ||
| value: session.id, |
There was a problem hiding this comment.
[P2] Keep the live-status badge visible when resume availability is false
Reachability: ② reasonable failure/recovery path. If a Session's local working directory has been removed or is otherwise unavailable, getSessionResumeAvailability() returns available: false. Even when the Host has authoritatively returned a live runningTurnIds value, this branch renders only the short id and the availability reason, so the picker hides the fact that a Turn is still running.
Could we build the shared description prefix from shortSessionId + statusDetail and use it in both branches, appending the availability reason only for the unavailable case? That keeps the Host-owned live state visible while still explaining why the Session cannot be resumed locally. Please add one focused picker regression covering an unavailable Session with a live Turn.
This is non-blocking; it only affects status visibility on the recovery path.
Summary
/sessionpickerrunningstates, non-actionable blocked bookkeeping, and raw status enum labelsTesting
npm --workspace maka-agent test(362 passed)npm run lintnpm run format:checknpx --yes npm@11.19.0 run release:cli:packnpx --yes npm@11.19.0 run release:cli:smokereaches the installed interactive TUI check, then the Runtime Host stops responding during startup on this macOS machine; the same failure reproduces from a cleanorigin/mainworktree atbd35541b3Closes #3384