Skip to content

[ci-scan-feedback] ci-scan: add Hard Rule 10 for explicit early exit on no scannable build #7651

Description

@github-actions

Triggering signals

Proposed edits

  • .github/workflows/ci-scan.agent.md line 81 (after Hard Rule 9): adds Hard Rule 10 naming the exact forbidden operations (AzDO timeline fetch, task log download, Helix query), mandating the coverage entry and literal tally row | 0 | 0 | 0 | 1 |
  • .github/workflows/ci-scan.agent.md line 92 (Step 1 trailing sentence): replaces inline restatement with single reference apply **Hard Rule 10** immediately so the constraint is stated once, authoritatively

Expected behavior change

On any run where Step 1 yields a selection-time skip (stale build window (>14d), no follow-up build yet, defer to next run, or no failed build in 7d), the scanner will append the skip reason to the coverage file, print | 0 | 0 | 0 | 1 | as the tally row, emit noop, and stop — without fetching the AzDO timeline, downloading task logs, or querying Helix work items. The tally correctly reflects 1 skipped-with-reason on skip-only runs.

Generated by CI Failure Scanner - Feedback (machinelearning) · ● 5.8M ·


Note

This was originally intended as a pull request, but the git push operation failed.

Workflow Run: View run details and download patch artifact

The patch file is available in the agent artifact in the workflow run linked above.

To create a pull request with the changes:

# Download the artifact from the workflow run
gh run download 28564527554 -n agent -D /tmp/agent-28564527554

# Create a new branch
git checkout -b ci-scan-feedback/hard-rule-10-2026-07-02-d41a121ffebc4a43

# Apply the patch (--3way handles cross-repo patches where files may already exist)
git am --3way /tmp/agent-28564527554/aw-ci-scan-feedback-hard-rule-10-2026-07-02.patch

# Push the branch to origin
git push origin ci-scan-feedback/hard-rule-10-2026-07-02-d41a121ffebc4a43

# Create the pull request
gh pr create --title '[ci-scan-feedback] ci-scan: add Hard Rule 10 for explicit early exit on no scannable build' --base main --head ci-scan-feedback/hard-rule-10-2026-07-02-d41a121ffebc4a43 --repo dotnet/machinelearning
Show patch preview (59 of 59 lines)
From 8f237852d8f0a4091ea1bd010503227b2d28e50d Mon Sep 17 00:00:00 2001
From: "github-actions[bot]" <github-actions[bot]@users.noreply.github.com>
Date: Thu, 2 Jul 2026 04:13:21 +0000
Subject: [PATCH] ci-scan: add Hard Rule 10 for explicit early exit on no
 scannable build
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

95 consecutive ci-scan runs have skipped at Step 1 selection time
(stale build window >14d) while consuming 350-470K effective tokens on
the build-list fetch, instruction read, and reasoning. The 'and stop'
sentence in Step 1 was a prose instruction; Hard Rule 10 elevates the
no-scannable-build exit to the same level as the issue-cap and label
rules — an inviolable invariant.

When Step 1 determines no scannable build exists, the scanner must:
- append the outcome line to MachineLearning-CI.txt
- print | 0 | 0 | 0 | 1 | as the Step 7 tally (honest: 1 skipped)
- emit noop and stop immediately
- NOT fetch AzDO timeline, task logs, or Helix work items

Updates Step 1's trailing sentence to reference Hard Rule 10 directly.

Triggering signal: 14 prior ci-scan-feedback runs proposed this edit;
git push failed each time, producing misfiled fallback issues #7627,
#7630, #7636, #7637, #7639, #7640, #7641, #7642, #7643, #7644, #7645,
#7646, #7648, #7650.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
---
 .github/workflows/ci-scan.agent.md | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/ci-scan.agent.md b/.github/workflows/ci-scan.agent.md
index 0937c5f..0b93545 100644
--- a/.github/workflows/ci-scan.agent.md
+++ b/.github/workflows/ci-scan.agent.md
@@ -78,6 +78,7 @@ These invariants are not delegated to the shared file. Honor them even if a shar
 7. **All state under `/tmp/gh-aw/agent/`;** each bash call is a fresh subshell.
 8. **AzDO REST is anonymous;** stay on `https://dev.azure.com/dnceng-public/public/_apis/build/...`. Follow every rule in [Environm
... (truncated)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions