Skip to content

Topbar status pill shows orange "working" for open PR and draft sessions, contradicting the board's "In review" description #2345

Description

@aprv10

Summary

A worker session whose status is pr_open or draft is shown as a breathing orange "Working" pill in the session topbar — implying the agent is actively working — while the board files the exact same session under "In review" and the sidebar shows a neutral dot. The three surfaces disagree, and the topbar's reading is the misleading one: a session that has opened a PR and gone idle awaiting review is animated as if it's busy coding.

Expected behavior

For a session with an open or draft PR (agent idle, awaiting review), the topbar status pill should reflect a review/pending state consistent with the board and sidebar — not a breathing "Working".

Actual behavior

  • Board: session sits in the "In review" column with a "PR open" / "Draft PR" badge.
  • Sidebar: neutral/passive dot.
  • Topbar: breathing orange "Working" pill.

The breathing animation specifically signals active agent work, so the topbar tells a story that contradicts the other two views.

Root cause

Two status-mapping functions handle pr_open/draft differently, and the topbar uses the one that has no case for them:

  • attentionZone maps pr_open and draftpending → board "In review":
    frontend/src/renderer/types/workspace.ts:277-280
  • workerDisplayStatus has no case for pr_open or draft, so they fall through to default: return "working":
    frontend/src/renderer/types/workspace.ts:158-159
  • The topbar SessionStatusPill feeds workerDisplayStatus into STATUS_PILL, where working is { label: "Working", tone: var(--orange), breathe: true }:
    frontend/src/renderer/components/ShellTopbar.tsx (STATUS_PILL, SessionStatusPill)

So pr_open/draft collapse into the "working" bucket — the one bucket that is orange and animates.

Steps to reproduce

  1. Spawn a worker and have its agent open a normal PR from the session branch (not failing CI, no review requested/approved → derives to pr_open; a draft PR gives draft).
  2. On the board, confirm the session appears in the "In review" column with a "PR open" badge.
  3. Open that session.
  4. Observe the topbar status pill: it shows a breathing orange "Working", contradicting the board.

Affected files

  • frontend/src/renderer/types/workspace.ts (workerDisplayStatus, ~lines 139-161)
  • frontend/src/renderer/components/ShellTopbar.tsx (STATUS_PILL, SessionStatusPill)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions