Repository navigation
test: isolate allocation regressions and bound smoke execution - #60
Merged
Merged
Conversation
AGiorgetti
marked this pull request as ready for review
October 15, 2026 12:59
AGiorgetti
force-pushed
the
feat/codex-allocation-test-isolation
branch
from
October 15, 2026 13:06
2d01eee to
07a7dd2
Compare
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.
Change
Exact allocation regressions can report phantom bytes under .NET 10 background GC accounting (dotnet/runtime#134724, proposed fix dotnet/runtime#134855). Run only allocation-sensitive methods in a bounded test-only child with background GC disabled, effective-configuration verification and failure propagation. Ordinary correctness keeps default GC. Exact allocation assertion bodies are unchanged; there are no retries, tolerances or discarded samples.
The user also approved a scoped follow-up after the Windows benchmark smoke exceeded its old 60-second process limit:
Current head and scope
HEAD
a6faf309edfabd1180cdb28fa8c9aef12e483013includes the reviewed allocation isolation rebased onto developc3ef53ec3762d825c2945cbc6394af310bda1933containing merged symbols PR #59, the approved timeout follow-up, and a Linux fixture ownership correction.Linux fixture ownership uses PID plus the exact kernel start token from procfs field 22. Cross-process
Process.StartTimetimestamps can differ because .NET estimates boot time separately per process (dotnet/runtime#108959). Other platforms retain exact UTC ticks. PID reuse protection and the orphan-alive assertion remain intact; no tolerance was added.Both solution projects and both guide additions are retained. Symbols validator/configuration, product code, allocation isolation and workflow files are unchanged by the timeout follow-up. Independent read-only static review has no remaining material findings.
Current local validation
Prior CI and limits
Run 38739919081 tested prior head
07a7dd2: Linux full suite passed 1,390 cases and all six Roslyn jobs passed 1,091 each. Windows passed generator/runtime/integration and 292 packaging cases; only the existing benchmark smoke exceeded its 60-second liveness limit. This is prior-head evidence, not current CI.Run 38746844875 tested
b9ae890: Windows full suite passed 1,393 cases and all six Roslyn jobs passed 1,091 each. Linux passed 1,392 and failed only the new orphan fixture's timestamp-based ownership assertion. The current head corrects that fixture identity without changing the timeout helper or its assertions.No local timing benchmarks or nested real-build/package-launching cases were run for the timeout follow-up. Current exact-head CI supplies full Windows/Linux, Roslyn, packaging, trimming, required Native AOT and unchanged smoke coverage. The 300-second limit is a provisional liveness budget, not a measured runtime percentile or throughput gate. Historical failures lack detailed progress traces.
Current exact-head CI
Run 38749497578 completed successfully on exact head
a6faf309edfabd1180cdb28fa8c9aef12e483013(attempt 1):PR remains open and ready for human review; no merge, closure, tag, publication or machine/system settings changes. Independent static review has no remaining material findings. Working tree is clean.
Fixes #58