agent-orchestrator/packages
i-trytoohard eb7314b07b
refactor(web): break down SessionDetail.tsx into focused components (#1449)
* refactor(web): break down SessionDetail.tsx into focused components

Split the 1089-line SessionDetail page into smaller, focused modules so
every file stays under the 400-line component cap (CLAUDE.md C-04).

- SessionDetail.tsx: 1089 -> 248 lines, now orchestrates layout only
- SessionDetailHeader.tsx (new): topbar with PR popover + kill/restore
- OrchestratorStatusStrip.tsx (new): orchestrator zone counters
- SessionDetailPRCard.tsx: wired in, with merge-conflict actions and
  reliability check that previously lived inline in SessionDetail
- PRCommentThread.tsx (new): unresolved review comment list
- Reuses session-detail-utils and session-detail-agent-actions, which
  were previously orphaned dead code

Closes #770

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* test(web): unit-test logic in SessionDetail extractions

Cover the pure logic in the modules extracted by #770:

- buildBlockerChips (PR card): 12 cases for CI/review/conflict/draft
  branching, lifecycle hints, and the unenriched/rate-limited
  reliability gate
- buildZoneStats (orchestrator strip): zone filter + canonical order
- buildAgentFixMessage (agent actions): bugbot vs plain bodies and
  truncation against title/description/total budgets

Pure JSX shells (PRCommentThread, header markup) stay covered by the
existing integration tests.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(web): wire lifecyclePrReason into PR popover

Pass session.lifecycle?.prReason to SessionDetailPRCard from the topbar
header so blocker chips derived from lifecycle state (ci_failing,
changes_requested) surface in the popover.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

---------

Co-authored-by: Prateek <karnalprateek@gmail.com>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-25 22:01:21 +05:30
..
ao chore: bump all package versions to 0.2.5 (#1190) 2026-04-13 05:47:08 +05:30
cli Fix orchestrator identity to use one canonical session per project (#1487) 2026-04-25 18:57:31 +05:30
core Fix orchestrator identity to use one canonical session per project (#1487) 2026-04-25 18:57:31 +05:30
integration-tests feat(core): opt-in gh CLI tracer + scm/tracker migration (Phase A1a) (#1238) 2026-04-25 18:57:04 +05:30
plugins feat(core): opt-in gh CLI tracer + scm/tracker migration (Phase A1a) (#1238) 2026-04-25 18:57:04 +05:30
web refactor(web): break down SessionDetail.tsx into focused components (#1449) 2026-04-25 22:01:21 +05:30