Skip to content

[Phase 4A] PR Status: live CI checks, review status, and merge state #570

@frankbria

Description

@frankbria

Goal

Add a PR Status panel to the Review page that polls GitHub for live CI check status, review status, and merge state after a PR is created.

Background

The Review page currently creates a PR via POST /api/v2/pr/create and then shows the PR URL. After that, the user must go to GitHub to track CI and reviews. The SHIP phase ends at PR creation — this extends it to PR merge.

Scope

PR Status panel (shown on the Review page when prUrl state is set):

  • Appears below the existing PR creation success state
  • Polls GET /api/v2/pr/status?workspace=... every 30 seconds while the Review page is active
  • Backend: add GET /api/v2/pr/status endpoint that calls the GitHub API (using stored GitHub token) for the most recently created PR in the workspace — returns { ci_checks: [...], review_status, merge_state, pr_url, pr_number }
  • CI checks section: list each check with name + status badge (pending / running / passed / failed)
  • Review status: single badge — Approved / Changes Requested / Pending Review
  • Merge state: Open / Merged / Closed badge
  • Stop polling when merge_state is Merged or Closed

Acceptance criteria

  • PR Status panel appears after PR creation
  • CI checks list renders with correct statuses
  • Review and merge state badges render
  • Polling stops after PR is merged/closed
  • npm test and uv run pytest pass for the new backend endpoint

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestphase-4Phase 4: Multi-Agent Coordination

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions