Skip to content

[Phase 3.5B] Run Gates: button, trigger, and live gate progress #566

Description

@frankbria

Goal

Add a [Run Gates] button to the PROOF9 page that triggers a gate run and streams live progress back to the browser.

Background

POST /api/v2/proof/run already exists and works. The proof page has no way to call it. The PROVE phase is currently inspection-only — users can see requirements and waive them but cannot produce evidence from the browser.

Scope

  • [Run Gates] button in the PROOF9 page header (enabled when a workspace is selected)
  • Clicking the button calls POST /api/v2/proof/run with { full: true }
  • Loading / streaming state: gate list appears immediately showing each gate as pending; poll GET /api/v2/proof/runs/{run_id} every 2 seconds to update individual gate statuses: pending → running → passed / failed
  • Final state: on run completion show overall pass/fail banner
  • Error state: surface error message with retry button if the request or polling fails
  • Button is disabled while a run is in progress (prevent double-submit)

Out of scope

  • Evidence artifact display (next issue)
  • Run history panel (next issue)
  • Triggering from task detail modal

Acceptance criteria

  • [Run Gates] button renders on the PROOF9 page
  • Clicking triggers a run and each gate transitions through pending → running → passed/failed
  • Overall result banner shown on completion
  • Button disabled during active run
  • npm test and npm run build pass

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestphase-3.5Phase 3.5: Close the interaction gap

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions