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 Guard CI fixer against NativeAOT no-op rooting changes 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 Guard CI fixer against no-op test 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ci-scan-feedback] Guard fixer against NativeAOT already-rooted false-fixes

5 participants