Skip to content

Regression workflow: add failure promotion modal#338

Merged
Atharva-Kanherkar merged 6 commits into
mainfrom
codex/issue-324-promote-failure-dialog
Apr 19, 2026
Merged

Regression workflow: add failure promotion modal#338
Atharva-Kanherkar merged 6 commits into
mainfrom
codex/issue-324-promote-failure-dialog

Conversation

@Atharva-Kanherkar
Copy link
Copy Markdown
Collaborator

@Atharva-Kanherkar Atharva-Kanherkar commented Apr 19, 2026

Summary

  • add regression promotion API helpers and a deep link that pre-opens the create-suite modal for the source pack
  • add a Promote action on run failure rows with a promotion modal, advanced validator override controls, and idempotent "Already promoted - open case" handling
  • add focused component coverage for the promote dialog's new/idempotent/error branches and empty-state deep link
  • remove the issue-324 review-checkpoint contract from the repo and ignore that transient file path so it does not reappear in the PR
  • clear a pre-existing unused-type lint warning so pnpm lint is clean on this branch

Validation

  • pnpm lint
  • pnpm exec tsc --noEmit
  • pnpm test

Manual curl verification

  • Brought up the local stack against local Postgres/Redis + Temporal + API + worker.
  • Seeded the deterministic local fixture with ./scripts/dev/seed-local-run-fixture.sh.
  • Seeded a completed local run/failure-review fixture directly in Postgres to exercise the promote endpoint over HTTP.
  • GET /v1/workspaces/22222222-2222-2222-2222-222222222222/runs/12121212-1212-1212-1212-121212121212/failures returned a promotable failure for challenge 66666666-6666-6666-6666-666666666666.
  • POST /v1/workspaces/22222222-2222-2222-2222-222222222222/regression-suites returned 201 and created suite 0b23d391-afff-432c-8ca2-ac541bee401b.
  • First POST /v1/workspaces/22222222-2222-2222-2222-222222222222/runs/12121212-1212-1212-1212-121212121212/failures/66666666-6666-6666-6666-666666666666/promote returned 201 and created case 49ca72c1-5f0c-4e06-adff-ec2061ca4e7c.
  • Second identical promote request returned 200 with the same case id 49ca72c1-5f0c-4e06-adff-ec2061ca4e7c, confirming the idempotent repost path.
  • GET /v1/workspaces/22222222-2222-2222-2222-222222222222/regression-suites/0b23d391-afff-432c-8ca2-ac541bee401b/cases shows the promoted case persisted in the target suite.

Notes

  • This intentionally excludes the create-run regression-suite selector because backend support for regression_suite_ids[] / regression_case_ids[] is not on main yet.
  • Local POST /v1/runs still deadlocked once on this machine during manual stack work (load runnable challenge pack version: ... deadlock detected), so the promotion curl verification used a direct local DB seed for the completed run/failure-review fixture while still exercising the real HTTP suite/failures/promote endpoints end-to-end.

Closes #324

Checkpoint: adds regression API helpers, status-aware promotion plumbing, and suite creation deep links. Reviewed against testing/codex-issue-324-promote-failure-dialog.md sections Unit Tests and Functional Behavior.
Checkpoint: wires promote actions on failure rows and adds the promotion modal UI. Reviewed against testing/codex-issue-324-promote-failure-dialog.md sections Functional Behavior, Smoke Tests, and Manual / cURL Tests.
Checkpoint: removes an unused type alias so pnpm lint runs clean on this branch. Reviewed against testing/codex-issue-324-promote-failure-dialog.md Integration / Functional Tests.
@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 19, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
agentclash Ready Ready Preview, Comment Apr 19, 2026 10:46am

Checkpoint: removes the durable test-contract artifact, adds dialog coverage for new/idempotent/error paths, and tightens failure-row/dialog UX semantics. Reviewed against the reviewer punch list and rerun with pnpm lint, pnpm exec tsc --noEmit, and pnpm test.
@Atharva-Kanherkar Atharva-Kanherkar merged commit 4fa3605 into main Apr 19, 2026
4 checks passed
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.

Regression workflow — F: frontend promote modal + run composition

1 participant