Skip to content

[ci-scan-feedback] Add fixer freshness/live-leg gate to stop already-fixed & retired-leg PRs - #132318

Draft
kotlarmilos with Copilot wants to merge 2 commits into
mainfrom
copilot/ci-scan-feedback-add-fixer-gate
Draft

[ci-scan-feedback] Add fixer freshness/live-leg gate to stop already-fixed & retired-leg PRs#132318
kotlarmilos with Copilot wants to merge 2 commits into
mainfrom
copilot/ci-scan-feedback-add-fixer-gate

Conversation

Copilot AI commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

The ci-failure-fix workflow keeps opening help-wanted PRs for failures that no longer happen — retired legs (#129653, "Mono mobile doesn't run on CI anymore"), already-merged fixes (#130231), and stale KBEs (#130232). This is the dominant closed-unmerged class over the last several ticks, and prior feedback issues (#131644, #131699) flagged it without a guard ever landing.

Changes

.github/workflows/ci-failure-fix.md only — prompt text, no code:

  • Step 4, new gate before any fix attempt (inserted as item 2; following items renumbered 3/4). Three checks, first trip ends the KBE with a recorded skip — no PR, no loop-in comment:
    • Recent occurrence — signature checked against the newest completed builds of the definition plus Build Analysis occurrence data in the KBE body; nothing in 14d → skipped: no occurrence in last 14d, likely already fixed or retired
    • Live leg — the leg must appear in the newest completed build's timeline and still be defined in eng/pipelines/** at HEAD; retired Mono-mobile/wasm legs, deleted queues, dropped images → skipped: failing leg retired, no longer runs at HEAD
    • Fix already landed — failing source read at HEAD plus git log since KBE creation; faulty path already removed → skipped: fix already present at HEAD; KBE stale
  • Recognized skip reasons list — the three phrasings registered verbatim so the feedback workflow's tally aggregation stays stable.
  • One pre-existing trailing space removed (line 192); markdownlint runs repo-wide on any PR touching .md and MD009 is the sole enabled rule.

Placement is deliberate: after Step 3 dedup, before Step 5's fix attempt, mirroring the existing Step 5.1.1 pipeline-category gate. Recorded skip is already a valid outcome in the Step-summary table, so no downstream change is needed.

Notes

No lock-file regeneration: ci-failure-fix.lock.yml pulls the prompt via {{#runtime-import .github/workflows/ci-failure-fix.md}} and stores no hash of the body — only frontmatter changes require a recompile, and the frontmatter is untouched. No other prompt references Step 4 items by number, so the renumbering is contained.

Verified markdownlint-cli clean on the file. Nothing built or tested — there is no code here.

Copilot AI lite review requested due to automatic review settings August 14, 2026 13:22

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

Co-authored-by: kotlarmilos <11523312+kotlarmilos@users.noreply.github.com>
Copilot AI review requested due to automatic review settings August 14, 2026 13:28
Copilot AI changed the title [WIP] Add fixer freshness/live-leg gate to stop already-fixed and retired-leg PRs [ci-scan-feedback] Add fixer freshness/live-leg gate to stop already-fixed & retired-leg PRs Aug 14, 2026
Copilot AI requested a review from kotlarmilos August 14, 2026 13:29

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review details

  • Files reviewed: 1/1 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

[ci-scan-feedback] Add fixer freshness/live-leg gate to stop already-fixed & retired-leg PRs

3 participants