Skip to content

feat(cli): show live session status in the /session picker - #3441

Open
1625567290 wants to merge 2 commits into
apache:mainfrom
1625567290:codex/issue-3384-session-status
Open

feat(cli): show live session status in the /session picker#3441
1625567290 wants to merge 2 commits into
apache:mainfrom
1625567290:codex/issue-3384-session-status

Conversation

@1625567290

Copy link
Copy Markdown
Contributor

Summary

  • forward authoritative live Turn ids from the Runtime Host catalog into CLI Session summaries
  • show localized running, waiting-for-user, actionable blocked, and stopped badges in the /session picker
  • suppress stale persisted running states, non-actionable blocked bookkeeping, and raw status enum labels

Testing

  • npm --workspace maka-agent test (362 passed)
  • npm run lint
  • npm run format:check
  • npx --yes npm@11.19.0 run release:cli:pack
  • npx --yes npm@11.19.0 run release:cli:smoke reaches the installed interactive TUI check, then the Runtime Host stops responding during startup on this macOS machine; the same failure reproduces from a clean origin/main worktree at bd35541b3

Closes #3384

@Astro-Han Astro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread packages/cli/src/pi-tui-runner.ts

@Astro-Han Astro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

@Astro-Han

Copy link
Copy Markdown
Contributor

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 /session picker looks like in normal use, and right now the description explains the mechanism but not the resulting UI. A short asciinema clip or even two plain text captures of the picker (one on main, one on this branch, same sessions) would be enough — reviewers should be able to see the new status column and how it behaves when a session's status is unknown or still loading, without building the branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(cli): show live Session status (running / waiting-for-user / blocked) in the /session picker

2 participants