Guard the two pinned dependencies, and let small-suite readers self-select out - #11
Merged
Merged
Conversation
Both arrived on Dependabot's first run and both broke the build, for reasons the comments beside them in Directory.Packages.props already predicted. Microsoft.Testing.Extensions.TrxReport 1.9.1 -> 2.3.3 restored and compiled with zero warnings, then failed at run time: TypeLoadException loading IDataConsumer from Microsoft.Testing.Platform 2.3.3, because xunit.v3 3.2.2 is built against 1.9.x. Zero tests ran and no TRX was written - which the mutation harness reports as inconclusive rather than as a failure, so this is the shape of breakage that would have been easiest to merge and hardest to notice. Microsoft.Build.Framework 17.11.48 -> 18.8.2 fails earlier and louder: 18.x pulls in Microsoft.NET.StringTools, and Build.Locator's own guard stops the build with MSBL001 until that carries ExcludeAssets="runtime" too. That one is fixable, but the package is referenced only so it can carry ExcludeAssets in the first place - MSBuildLocator resolves the real MSBuild from the installed SDK - so a newer version buys nothing and costs a load-bearing arrangement. Excluding the fixture solutions was not enough, because the root manifest carries TrxReport as well. Encoding the constraint as an ignore rule is what stops both coming back next Monday. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Reported in #6 by someone who evaluated tia for a 556-test suite that runs in about 12 seconds, correctly decided against it, and only got there after reading most of the page. The break-even arithmetic was already here - at the bottom, under a heading that reads like marketing. Someone whose suite is too fast should not have to work for that answer, and a reader who self-selects out at 12 seconds was never going to become a happy user. The same report found two things buried that change a reader's mind rather than confirming it. The framing around .NET 10 and Microsoft.Testing.Platform reads as though MTP is a requirement, and the reporter nearly wrote the tool off on that basis before reaching the support table; xUnit v2 on VSTest has always worked. And shadow mode - the one feature that lets a reader verify the accuracy claims against their own history instead of trusting a benchmark on someone else's code - was a bullet point nine sections down. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The ruleset went up without them because Actions was down, and a required check that cannot report does not fail a pull request - it blocks it indefinitely with no way through but removing the rule. Actions is operational again and three pull requests have now reported, so the checks are on and the file says what they are rather than how to add them. Keeping the note about why the order was protect-first-then-require: it is the right sequence if the situation recurs. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
Handles the three things left open after #7: the two red Dependabot PRs, and issue #6.
Dependabot guards
#9 and #10 both broke the build on their first run, for reasons the comments already sitting beside those packages in
Directory.Packages.propspredicted. Both are now closed with the evidence, and this addsignorerules for major bumps so they do not come back next Monday.Microsoft.Testing.Extensions.TrxReport1.9.1 → 2.3.3 is the one worth reading about. It restored and compiled with zero warnings, then failed at run time:xunit.v33.2.2 is built against MTP 1.9.x, and NuGet unified the platform upward with no downgrade warning. Reproduced on Windows locally and on Linux in CI: baseline 177 passed with a TRX written, bump zero tests run and no TRX. No TRX is what the mutation harness reports as inconclusive rather than as a failure — the shape of breakage easiest to wave through and hardest to notice later.docs/usage.mdalready stated the constraint. It just was not written anywhere Dependabot could read it, and excluding the fixture solutions was not enough because the root manifest carries TrxReport too.Microsoft.Build.Framework17.11.48 → 18.8.2 fails louder —MSBL001, because 18.x pulls inMicrosoft.NET.StringToolswithoutExcludeAssets="runtime". Fixable, but not worth fixing: the package is referenced only so it can carry that attribute, since MSBuildLocator resolves the real MSBuild from the SDK. A newer version buys nothing and risks the one subsystem where a mistake shows up as a workspace that fails to load.README (closes #6)
The break-even arithmetic was already on the page — at the bottom, under a heading that reads like marketing. The reporter measured a 12-second suite, correctly decided against adopting, and only got there after reading most of the README. A new section near the top gives the rule of thumb (more than about a minute) and points at the threshold every run already prints.
The same report found two things buried that change a reader's mind rather than confirming it: the .NET 10 / MTP framing reads as though MTP is required (xUnit v2 on VSTest has always worked), and
shadowmode — the only feature that lets a reader verify the accuracy claims against their own history — was a bullet nine sections down. Both are now surfaced up top.Safety
Not applicable. Configuration and documentation only; nothing touches selection, the graph, a widening, the cache key or a filter dialect.
Checklist
dotnet build --configuration Releaseclean locally (.NET 10.0.302)dotnet test tests/Tia.Core.Tests— 177 passed, TRX written, on the unbumped baselinedocs/maintaining.mdnow records the required status checks as live rather than pending, since Actions is operational again🤖 Generated with Claude Code