You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Build single project: dotnet build <path>.csproj -c Debug (after sourcing .dotnet SDK via ./build.sh once)
Unit tests: ./build.sh -test
Full suite incl. acceptance/integration: ./build.sh -pack -test -integrationTest
Targeted test run: dotnet run --project test/UnitTests/<Project> -f net8.0 --no-build -c Debug -- --treenode-filter "/*/*/*/<Class>/*"
Format check: dotnet format whitespace <project>.csproj --verify-no-changes (note: repo has pre-existing CHARSET/BOM lint noise unrelated to any single change — verify before assuming a regression)
Reviewed memory, confirmed 0 open [efficiency-improver] PRs (Task 4 clear) and no new actionable efficiency/performance issues (Task 5).
Scanned src/TestFramework/TestFramework/Assertions/ for opportunities. Found Assert.IsNotEmpty still used .Any()/.Cast<object>().Any() instead of the ICollection/ICollection<T>.Count fast-path already applied to Assert.HasCount/Assert.IsEmpty in Optimize non-generic collection count assertions #10575 — it had simply been missed from that earlier pass.
Implemented the fast-path, measured allocations (GC.GetAllocatedBytesForCurrentThread(), net8.0 Release, 1M iterations): non-generic Cast<object>().Any() path went from 104 B/call to 0 B/call. Generic IEnumerable<T>/List<T> path was already 0 B/call on net8.0, but the change is a defensive win for the repo's netstandard2.0/net462 targets.
Verified build across all 4 TFMs and ran the full TestFramework.UnitTests suite: 1548/1548 passed.
Opened draft PR "Optimize Assert.IsNotEmpty to avoid enumerator allocation" (branch efficiency/isnotempty-collection-count-fastpath).
Month rollover: closed prior August summary issue, opened this tracker.
Scanned src/Analyzers/MSTest.Analyzers.CodeFixes/ and src/Package/MSTest.Sdk for drift — none found (only reformat/doc commits since last review).
Confirmed Microsoft.Testing.Extensions.CodeCoverage does not exist in this OSS checkout (closed-source component) — removed from future scan candidates.
Reviewed ~35 commits since 2026-08-31 — all maintainer/Copilot infra/feature/dependency work, no efficiency regressions spotted.
Pure monitoring pass — no PR created (14th+ consecutive monitoring-only run at that point).> [!WARNING]
Firewall blocked 1 domain
The following domain was blocked by the firewall during workflow execution:
southcentralus0.in.applicationinsights.azure.com
To allow these domains, add them to the network.allowed list in your workflow frontmatter:
Efficiency Improver — Monthly Activity 2026-09
Suggested Actions
None pending.
Energy Efficiency Backlog
Assert.That.cscondition.Compile()per-call overheadAssert.InverseAssertions.csContainsCoreLINQ.Any(predicate)Discovered Commands
./build.shdotnet build <path>.csproj -c Debug(after sourcing.dotnetSDK via./build.shonce)./build.sh -test./build.sh -pack -test -integrationTestdotnet run --project test/UnitTests/<Project> -f net8.0 --no-build -c Debug -- --treenode-filter "/*/*/*/<Class>/*"dotnet format whitespace <project>.csproj --verify-no-changes(note: repo has pre-existing CHARSET/BOM lint noise unrelated to any single change — verify before assuming a regression)Run History
2026-09-02 09:xx UTC - Run
[efficiency-improver]PRs (Task 4 clear) and no new actionable efficiency/performance issues (Task 5).src/TestFramework/TestFramework/Assertions/for opportunities. FoundAssert.IsNotEmptystill used.Any()/.Cast<object>().Any()instead of theICollection/ICollection<T>.Countfast-path already applied toAssert.HasCount/Assert.IsEmptyin Optimize non-generic collection count assertions #10575 — it had simply been missed from that earlier pass.GC.GetAllocatedBytesForCurrentThread(), net8.0 Release, 1M iterations): non-genericCast<object>().Any()path went from 104 B/call to 0 B/call. GenericIEnumerable<T>/List<T>path was already 0 B/call on net8.0, but the change is a defensive win for the repo's netstandard2.0/net462 targets.TestFramework.UnitTestssuite: 1548/1548 passed.efficiency/isnotempty-collection-count-fastpath).2026-09-01 21:49 UTC - Run
src/Analyzers/MSTest.Analyzers.CodeFixes/andsrc/Package/MSTest.Sdkfor drift — none found (only reformat/doc commits since last review).Microsoft.Testing.Extensions.CodeCoveragedoes not exist in this OSS checkout (closed-source component) — removed from future scan candidates.Add this agentic workflow to your repo
To install this agentic workflow, run