Skip to content

feat(stovepipe): select and submit one repair per build - #935

Merged
mnoah1 merged 1 commit into
mnoah1/stovepipe-fix-submission-statefrom
mnoah1/stovepipe-fix-controller
Oct 26, 2026
Merged

mnoah1 merged 1 commit into
mnoah1/stovepipe-fix-submission-statefrom
mnoah1/stovepipe-fix-controller

Conversation

@mnoah1

@mnoah1 mnoah1 commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Why?

Submit a repair for a newly opened issue while initially limiting recorded repairs to one issue per build.

Once we get this working end to end for the first failure on each build, we can build out additional logic that can introduce multiple parallel fixes for different issues in the same build.

What?

Add a fix controller that scans the build's durable observations, skips builds with a recorded fix ID, and submits one currently open issue first seen in that build. Persist the executor's returned ID with entity CAS, including IDs returned alongside an error. Errors without an ID follow normal queue error handling; concurrent submissions or retries can produce duplicate outbound calls.

Test Plan

Run ./tool/bazel test //stovepipe/controller/fix:go_default_test. Tests cover pagination, existing repair associations, issue recovery, executor errors, and CAS conflicts. Run make lint check-tidy check-gazelle.

Revert Plan

Revert the queue-wiring layer first, then this commit.

Stack

  1. feat(stovepipe): associate build issues with repairs using entity CAS #934
  2. @ feat(stovepipe): select and submit one repair per build #935
  3. feat(stovepipe): publish build repair requests to the fix queue #936

Scan build observations for existing fix IDs, submit an eligible open issue, and associate the returned ID through entity CAS. Return submission errors without an ID for normal queue handling; document caller-owned retry policy.

Test Plan: Run ./tool/bazel test //stovepipe/controller/fix:go_default_test and make lint check-tidy check-gazelle.

Revert Plan: Revert this commit.
@mnoah1
mnoah1 force-pushed the mnoah1/stovepipe-fix-controller branch from 86a421d to fddd6b2 Compare October 26, 2026 15:21
@mnoah1
mnoah1 enabled stacked auto-merge October 26, 2026 15:21
@mnoah1
mnoah1 added this pull request to the merge queue Oct 26, 2026
Merged via the queue into main with commit a67b694 Oct 26, 2026
19 checks passed
@mnoah1
mnoah1 deleted the mnoah1/stovepipe-fix-controller branch October 26, 2026 15:47
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.

2 participants