Skip to content

Guard CI fixer against no-op test rooting changes - #130668

Merged
kotlarmilos merged 4 commits into
mainfrom
copilot/ci-scan-feedback-guard-fixer
Jul 15, 2026
Merged

Guard CI fixer against no-op test rooting changes#130668
kotlarmilos merged 4 commits into
mainfrom
copilot/ci-scan-feedback-guard-fixer

Conversation

Copilot AI commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Runtime-missing failures can prompt ineffective rooting changes when the harness or project already roots the test assembly, regardless of runtime mode.

  • Rooting guard
    • Requires the fixer to inspect existing roots before proposing DynamicDependency, descriptor, TrimmerRootAssembly, or app-bundle changes.
  • Fallback
    • Requires a concrete product-side cause or routes the failure to a loop-in comment when the proposed root would be a no-op.

Note

This PR description was generated with GitHub Copilot.

Copilot AI requested review from Copilot and removed request for Copilot July 14, 2026 09:36
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
15 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 requested review from Copilot and removed request for Copilot July 14, 2026 09:47
Copilot AI changed the title [WIP] Add guard to fixer against NativeAOT false-fixes Jul 14, 2026
Copilot AI requested a review from kotlarmilos July 14, 2026 09:49
@kotlarmilos

kotlarmilos commented Jul 14, 2026

Copy link
Copy Markdown
Member

/ci-eval

@kotlarmilos

Copy link
Copy Markdown
Member

/ci-eval

Note

This retry was posted by GitHub Copilot at the user's request after the PAT pool selected an invalid token.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @agocke, @dotnet/ilc-contrib
See info in area-owners.md if you want to be subscribed.

@kotlarmilos

Copy link
Copy Markdown
Member

/ci-feedback eval

Note

This command was posted by GitHub Copilot at the user's request to complete the feedback eval cancelled by a concurrent policy-service comment.

Copilot AI temporarily deployed to copilot-pat-pool July 14, 2026 10:19 Inactive
Copilot AI temporarily deployed to copilot-pat-pool July 14, 2026 10:19 Inactive
Comment thread .github/workflows/ci-failure-fix.md Outdated
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: c88c0b65-971b-4cc4-9674-e6d83c3b8ee3
Copilot AI review requested due to automatic review settings July 14, 2026 14:08
@kotlarmilos
kotlarmilos temporarily deployed to copilot-pat-pool July 14, 2026 14:09 — with GitHub Actions Inactive
@kotlarmilos
kotlarmilos temporarily deployed to copilot-pat-pool July 14, 2026 14:09 — with GitHub Actions Inactive
@kotlarmilos kotlarmilos changed the title Guard CI fixer against NativeAOT no-op rooting changes Jul 14, 2026

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.

Pull request overview

Updates the CI outer-loop fixer workflow guidance to prevent proposing ineffective “rooting” changes for NativeAOT/runtime-missing failures when test assemblies are already effectively rooted by the harness.

Changes:

  • Refines the Mobile (ios/tvos/maccatalyst/android/wasm/wasi) policy row to refer readers to the Step 5.2 “already-rooted” guidance before proposing roots.
  • Adds a new Step 5.2 caution that instructs the fixer to check for existing roots and avoid no-op rooting proposals for already-rooted test assemblies, otherwise routing to a concrete product-side cause or a loop-in comment.
Show a summary per file
File Description
.github/workflows/ci-failure-fix.md Adds/centralizes guidance to guard the fixer against proposing redundant NativeAOT trimming/rooting changes for already-rooted test assemblies.

Copilot's findings

  • Files reviewed: 1/1 changed files
  • Comments generated: 1
Comment thread .github/workflows/ci-failure-fix.md Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings July 14, 2026 14:13
@kotlarmilos
kotlarmilos temporarily deployed to copilot-pat-pool July 14, 2026 14:13 — with GitHub Actions Inactive
@kotlarmilos
kotlarmilos temporarily deployed to copilot-pat-pool July 14, 2026 14:13 — with GitHub Actions Inactive

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's findings

  • Files reviewed: 1/1 changed files
  • Comments generated: 1
Comment thread .github/workflows/ci-failure-fix.md
@kotlarmilos
kotlarmilos marked this pull request as ready for review July 15, 2026 07:19
@kotlarmilos
kotlarmilos requested review from a team and jeffhandley as code owners July 15, 2026 07:19
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
14 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.
@kotlarmilos

Copy link
Copy Markdown
Member

/ci-eval

Note

This eval retry was triggered by GitHub Copilot at the user request and uses the workflow from the latest main.

@github-actions

Copy link
Copy Markdown
Contributor

Note

AI/Copilot-generated eval report (Vally), triggered by a maintainer eval command.

ci-failure-scan

✅ passed

details

Eval Results

Timestamp: 2026-07-15T08:05:27.637Z

Dynamic gate for the CI failure scanner's safe-output, run with the maintainer /ci-scan eval command. It runs the scanner against a live outer-loop failure it discovers itself, then checks the emitted Known Build Error against the static KBE format and that it actually grounded the KBE in a real failing build.

Stimulus Environment Graders Pass Rate Duration Tokens Turns Tool Calls Verdict
live-kbe-safe-output
2 filesFiles: ../ci-failure-scan.md.github/workflows/ci-failure-scan.md, ../shared/create-kbe.instructions.md.github/workflows/shared/create-kbe.instructions.md
✅ file-matches 1/1
✅ file-not-matches 1/1
✅ fetched-real-failing-build 1/1
✅ searched-existing-kbe 1/1
✅ kbe-format-conformant 1/1
1/1 2m 29s 757,565 17
17 callsbash: 10, view: 5, grep: 1, create: 1

Model: claude-opus-4.8 | Judge: claude-opus-4.8 | Executor: copilot-sdk

ci-failure-fix

❌ failed

details

Eval Results

Timestamp: 2026-07-15T08:08:54.303Z

Dynamic behavior gate for the CI failure fixer's safe-output, run with the maintainer /ci-fix eval command. It points the fixer at a real open Known Build Error it discovers itself and checks that it either produced a fix PR or engaged owners, and never muted the failing test.

Stimulus Environment Graders Pass Rate Duration Tokens Turns Tool Calls Verdict
live-fix-or-engage-safe-output
2 filesFiles: ../ci-failure-fix.md.github/workflows/ci-failure-fix.md, ../shared/create-kbe.instructions.md.github/workflows/shared/create-kbe.instructions.md
✅ file-matches 1/1
❌ file-not-matches 0/1
✅ acted-on-real-kbe 1/1
✅ fix-or-engages-owners 1/1
0/1 3m 09s 665,017 15
16 callsbash: 12, view: 3, create: 1
[1]

[1] Failed grader(s): file-not-matches

Model: claude-opus-4.8 | Judge: claude-opus-4.8 | Executor: copilot-sdk

ci-failure-scan-feedback

❌ failed

details

Eval Results

Timestamp: 2026-07-15T08:13:58.499Z

Dynamic constructiveness gate for the CI feedback meta workflow's safe-output, run with the maintainer /ci-feedback eval command. The agent scans real recent scanner issues and fixer PRs itself, then must turn a real signal into constructive, grounded feedback.

Stimulus Environment Graders Pass Rate Duration Tokens Turns Tool Calls Verdict
live-constructive-feedback-safe-output
4 filesFiles: ../ci-failure-scan-feedback.md.github/workflows/ci-failure-scan-feedback.md, ../ci-failure-scan.md.github/workflows/ci-failure-scan.md, ../ci-failure-fix.md.github/workflows/ci-failure-fix.md, ../shared/create-kbe.instructions.md.github/workflows/shared/create-kbe.instructions.md
✅ file-matches 1/1
✅ scanned-scan-issues 1/1
❌ scanned-fix-prs 0/1
✅ is-constructive 1/1
✅ edit-is-grounded 1/1
0/1 4m 07s 1,138,927 24
23 callsbash: 18, view: 4, create: 1
[1]

[1] Failed grader(s): scanned-fix-prs

Model: claude-opus-4.8 | Judge: claude-opus-4.8 | Executor: copilot-sdk

@kotlarmilos
kotlarmilos merged commit 0c648e0 into main Jul 15, 2026
29 of 30 checks passed
@kotlarmilos
kotlarmilos deleted the copilot/ci-scan-feedback-guard-fixer branch July 15, 2026 08:44
@dotnet-milestone-bot dotnet-milestone-bot Bot added this to the 11.0-preview7 milestone Jul 16, 2026
@github-actions github-actions Bot locked and limited conversation to collaborators Aug 16, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.