feat(cli): show live session status in the /session picker - #3441
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.
Astro-Han
left a comment
There was a problem hiding this comment.
Thanks — I re-reviewed exact head 83c261d08de326631363fa67d59424b834a04bb8. The unavailable-session path now preserves the same live-status detail as the actionable path, and the focused regression covers a running Session with no cwd. The Host remains the single live-run authority, while the CLI only projects the compact presentation. I found no P0–P3 issues, and the current-head test check is green.
AI-assisted review disclosure: OpenAI Codex performed an independent exact-head re-review. I verified the previous finding's fix, Host-to-CLI state mapping, unavailable and waiting paths, tests, live threads, mergeability, and current-head CI, and I independently made the approval decision.
|
Thanks — live session status in the picker is a genuinely useful addition, and the implementation reads clean. One thing before this goes in: could you add a before/after to the PR description? This changes what the |
|
@Astro-Han Added a before/after capture to the PR description using the same Session catalog. It shows the new running, waiting-for-user, sign-in, and stopped badges, plus the intentional unbadged state while the live Runtime Host catalog is unknown or still loading. |
|
LGTM and the function is very good. Only thing blocking from merge, Could you state if there is any AI tools used in the process in the PR body and commit message? @1625567290 |
|
Thanks. I keep commit messages scoped to the code change and do not add tool-generated attribution or co-author trailers. The PR body already records the implementation boundary, exact-head validation, limitations, and the requested before/after UI capture, so I will keep the clean approved head unchanged. |
Summary
/sessionpickerrunningstates, non-actionable blocked bookkeeping, and raw status enum labelsBefore / after
Same Session catalog and English locale:
Before (
main):After (this PR):
The final row intentionally remains unbadged while live Runtime Host state is unknown or still loading. A stale persisted
runningvalue is not presented as live unlessrunningTurnIdsconfirms an active Turn. Actionable permission and connection blocks useneeds permissionandneeds connection; non-actionable bookkeeping remains unbadged.Testing
npm --workspace maka-agent test(362 passed)npm run lintnpm run format:checknpx --yes [email protected] run release:cli:packnpx --yes [email protected] 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