Repository navigation
Onboard Build Failure Analysis - #20727
Merged
T-Gro merged 13 commits intoOct 19, 2026
Merged
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Require a successful Copilot CLI run before suppressing repeated commands, validate artifact redirects, and add focused publication and archive extraction regressions. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep Python bytecode generated by the new workflow regressions out of the onboarding branch. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Member
Author
|
Follow-up fixes are pushed in
Validation: 6 tests pass; gh-aw v0.89.21 strict compilation/schema validation reports 2 workflows, 0 warnings; native actionlint passes with the documented gh-aw |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
T-Gro
reviewed
Oct 8, 2026
T-Gro
reviewed
Oct 8, 2026
T-Gro
reviewed
Oct 8, 2026
T-Gro
reviewed
Oct 8, 2026
T-Gro
reviewed
Oct 8, 2026
Use researched FSharp script dependencies, exercise workflow regressions in CI, ground the playbook in real failures, and publish only checked same-repository fixes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Complete CodeCompaction pass 1 with corrected, real-branch-tested invariant compaction. Preserve string-prefix compatibility and per-producer completeness; pin mixed-status retry behavior at three attempts. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Exercise inclusive 2/3 GiB limits using one-byte reads, retain charges across failed attempts, reject writes after overflow, and ensure fetch does not retry InvalidDataException. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use native resource scoping and equivalent tuple collection algebra without new helpers or weakened producer, revision, archive, timeout, or budget boundaries. Real-branch FSI, formatter and all 13 regression methods passed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
T-Gro
reviewed
Oct 9, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
T-Gro
approved these changes
Oct 19, 2026
T-Gro
approved these changes
Oct 19, 2026
This was referenced Oct 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
fsharp-cichecks and the maintainer-only/analyze-build-failurecommand.#r "nuget"dependencies: FsHttp 15.0.3 and FSharp.Data 8.2.0..patchand optional surgical suggestions for a contributor fork. Missing validation blocks code publication; no fork push or new write secret is introduced.build-failure-analystagent.mainpush, every Monday and manual dispatch. CI recompiles both callers and checks generated locks for drift; a trusted failure notifier routes breakage to the PR author and repository owners.Reviewer-requested compaction
Library/API research preceded the rewrite. Both complete CodeCompaction passes followed the repository's NoBloat and logic-rounds instructions: reuse hunt, three diverse proposals, three new cross-model adversarial reviewers, and real-branch survivor prototypes with formatting, compilation and regression sweeps.
be3548a00The final script is approximately 48% smaller by both measures, without minification or weakened guards. Cross-model review also exposed and fixed mixed HTTP-status/body-timeout retry reentry; the regression requires exactly three attempts. The contributor follow-up leaves this fetcher byte-identical.
Local contributors and fork delivery
The agent profile reuses
Microsoft.AITools.BinlogMcp1.0.0 from the existing.config/dotnet-tools.json. After installing the documented SDKs/PowerShell/GitHub CLI/Copilot CLI prerequisites and runningdotnet tool restorein a trusted checkout:The preparer invokes the exact F# collector used in CI, returns a credential-free context JSON, restores the caller's environment and stops on unsuccessful/incomplete evidence.
-BuildIdselects an explicit build. The local method requires a clean worktree at the verified head, preserves the contributor's branch/work, and returns a checked patch and before/after commands rather than pretending local gh-aw safe-output tools exist.For forks, CI attempts and checks the fix without pushing to the fork. The guarded publication job revalidates the current failed build and both PR revisions, checks the complete patch with real Git at the verified head, enforces the 64-KiB / 25-file and protected-file/type boundaries, and uploads a downloadable
.patchretained for 14 days. The PR summary links it with apply instructions and explicitly says it has not been applied to the branch.Surgical changes may additionally have up to three GitHub
suggestionreview comments for one file, each bounded to 20 original/replacement lines and pinned to the verified head. Command retries deduplicate bot-published summaries and reviews by exact request/revision/location.Maintained source, failure ownership and repository guidance
shared/build-failure-analysis-shared.mdis the FSharp-owned golden source, not a vendored Runtime/Roslyn dependency. Its header links the canonical source and regeneration command. Regression CI automatically compiles both callers and checks drift; the existingaw-auto-update.mdautomates toolchain upgrades and regeneration on dispatch. Its scheduled operation is not claimed to be enabled.PR authors are responsible for repairing a reproducible regression before merge, including one introduced by an otherwise unrelated change. @dotnet/fsharp-team-msft, the CODEOWNERS team, owns triage and help with shared tooling/infrastructure; owners repair or revert default-branch breakage rather than disabling the check.
build-failure-analysis-test-failure.ymlruns from the trusted default branch on failed regression runs. It never checks out or downloads failed PR code/artifacts. It updates one author/owner report for a current open PR, or one owner-triaged incident for default-branch failures/missing PR association. Current revision and run-attempt checks suppress stale, closed and superseded/recovered PR notifications. Branch-protection settings were not changed.The playbook is grounded in 139 real failed
fsharp-citimelines exposed for 2026-09-09 through 2026-10-08: bootstrap/resource synchronization, XLF regeneration, Roslyn/MSBuild/.NET Framework binding redirects, offline Source Build pins/cache/native bootstrap and NuGet pruning. The preceding requested month was not exposed by the API. NoNU1605orNU1900-NU1904appeared in the retained issue text, so no downgrade/vulnerable-version example is invented.The fetch job stages the trusted default-branch playbook separately; analyzed PR source does not supply the agent's instructions.
Validation and deployment boundaries
concurrency.queueextension is ignored.binlog_errorsobserved a real generated failing MSBuild diagnostic andbinlog_overviewsucceeded.Skill Validationhas a pre-existing name-conformance failure in the unchangedperformance-celebration-articleagent, also recorded at the previous published head in run 37919814823. The build-failure agent has no reported conformance errors; the unrelated agent is not changed here.main; they have not been exercised from this contributor-fork PR. No test notification issues/comments were created.The binlog MCP runtime retains its required tag-only reference, while
.github/aw/actions-lock.jsonretains the image pin:sha256:ca760fd18bf8e6168d9b304d65c5d2340e4135fc9080c6e2f2eb4800368e3df4This is workflow-only;
azure-pipelines-PR.ymlexcludes.github/*.Note
This pull request was prepared with GitHub Copilot.