Skip to content

refactor(mission): fold Needs review into Done — three-column board#435

Merged
imran31415 merged 1 commit into
mainfrom
mission-control-completed-to-done
Jul 24, 2026
Merged

refactor(mission): fold Needs review into Done — three-column board#435
imran31415 merged 1 commit into
mainfrom
mission-control-completed-to-done

Conversation

@umi-appcoder

@umi-appcoder umi-appcoder Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

What & why

Folds Mission Control's "Needs review" state into Done, taking the board from four columns to three (Waiting on you → Running → Done). The separate review parking spot added little over the ✓/✗ outcome badge each finished card already carries, and the fourth column cramped the desktop Mission strip (#434) and the mobile swimlanes.

  • Server (server.py): completed tasks now map to done alongside error/killed; the 48h recency window is unchanged. The pulse drops its review counter — done_today already counted both buckets, so its meaning is unchanged.
  • Web SPA: MissionState/MissionPulse narrowed, board column + pulse row + CSS dot removed, desktop Mission strip label map updated.
  • Mobile: MissionCardState/MissionPulse narrowed, swimlane removed, and the custom StatePill deleted — it only existed because review fell outside the canonical status set, so finished cards now ride the shared StatusPill.

Testing

Full local preflight (mirrors CI):

  • helm lint/template/unittest — 106 passed
  • server.py tests — 1265 passed (incl. updated missioncontrol_test.py)
  • dashboard SPA tsc + vite build + vitest — 449 passed
  • controller SPA build + vitest — 21 passed
  • mobile tsc --noEmit + vitest — 40 passed
  • bash -n start.sh — OK

🤖 Generated with Claude Code

Completed builds no longer park in a separate "Needs review" column;
all terminals (completed, failed, killed) from the recent window plus
idle chats now settle in Done. The review state added little over the
outcome badge already on each card, and the four-column board cramped
the desktop strip and mobile swimlanes.

- server.py: completed → done; pulse drops the review counter
  (done_today already counted both); sort order is waiting → running
  → done
- web: MissionState/MissionPulse types, board columns, pulse row,
  desktop Mission strip label map
- mobile: MissionCardState/MissionPulse types, swimlanes, and the
  custom review StatePill (only existed because review was outside
  the canonical status set) are gone

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@imran31415
imran31415 merged commit 9a510dc into main Jul 24, 2026
9 checks passed
umi-appcoder Bot added a commit that referenced this pull request Jul 24, 2026
…inks (#425)

A finished card now carries proof of what happened without opening the
session: deterministic regex extraction over the same bounded output
tail the headline reads — no LLM pass. Chips cover vitest/jest/pytest/
unittest tallies (last occurrence per runner wins, so a red run re-run
green reports green), tsc error counts, and up to two PR links.

- server.py: _mc_evidence_from_log + evidence field on queue/drawer
  cards (always present; empty for live cards and chats). The tail is
  now read once per card and shared with the headline.
- web: EvidenceChips component on board card + drawer, chip styles
- mobile: chips on the MissionControlScreen card row
- shoot-mission fixtures: retired the leftover 'review' states from
  #435 and added evidence to the mocked cards

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
imran31415 pushed a commit that referenced this pull request Jul 24, 2026
…inks (#425) (#437)

A finished card now carries proof of what happened without opening the
session: deterministic regex extraction over the same bounded output
tail the headline reads — no LLM pass. Chips cover vitest/jest/pytest/
unittest tallies (last occurrence per runner wins, so a red run re-run
green reports green), tsc error counts, and up to two PR links.

- server.py: _mc_evidence_from_log + evidence field on queue/drawer
  cards (always present; empty for live cards and chats). The tail is
  now read once per card and shared with the headline.
- web: EvidenceChips component on board card + drawer, chip styles
- mobile: chips on the MissionControlScreen card row
- shoot-mission fixtures: retired the leftover 'review' states from
  #435 and added evidence to the mocked cards

Co-authored-by: umi-appcoder[bot] <umi-appcoder[bot]@users.noreply.github.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
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.

1 participant