Repository navigation
Conversation
wtgodbe
requested review from
BrennanConroy,
JamesNK and
halter73
as code owners
October 8, 2026 20:38
Contributor
|
Hi @wtgodbe. If this is not a tell-mode PR, please make sure to follow the instructions laid out in the servicing process document. |
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
The quarantine scope and shared discovery changes are consistent with the documented backport and preserve unaffected coverage.
0 open findings
What changed in this PR
Backports Linux-specific quarantine support for recurring Kestrel QUIC TLS failures without suppressing healthy platform or HTTP/2 coverage.
Changes:
- Adds OS-scoped quarantine traits.
- Supports quarantining individual
ConditionalTheoryrows. - Quarantines the affected Linux Kestrel HTTP/3 and QUIC tests.
| File | Description |
|---|---|
src/Testing/test/QuarantinedTestAttributeTest.cs |
Tests OS-scoped quarantine behavior. |
src/Testing/test/ConditionalTheoryTest.cs |
Tests per-row quarantine discovery. |
src/Testing/src/xunit/QuarantinedTestTraitDiscoverer.cs |
Applies quarantine traits by OS. |
src/Testing/src/xunit/QuarantinedTestDataAttribute.cs |
Defines quarantined theory-row data. |
src/Testing/src/xunit/QuarantinedTestAttribute.cs |
Adds OS selection to quarantines. |
src/Testing/src/xunit/ConditionalTheoryDiscoverer.cs |
Applies traits to selected rows. |
src/Servers/Kestrel/Transport.Quic/test/WebHostTests.cs |
Quarantines affected Linux hosting tests. |
src/Servers/Kestrel/Transport.Quic/test/QuicStreamContextTests.cs |
Quarantines affected stream tests. |
src/Servers/Kestrel/Transport.Quic/test/QuicConnectionListenerTests.cs |
Quarantines affected listener tests. |
src/Servers/Kestrel/Transport.Quic/test/QuicConnectionContextTests.cs |
Quarantines affected connection tests. |
src/Servers/Kestrel/test/Interop.FunctionalTests/Http3/Http3TlsTests.cs |
Quarantines affected TLS tests. |
src/Servers/Kestrel/test/Interop.FunctionalTests/Http3/Http3RequestTests.cs |
Quarantines affected HTTP/3 rows and facts. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
Member
Author
|
Closing since this will be fixed by dotnet/runtime#133158 |
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.
[release/9.0] Quarantine Linux Kestrel QUIC TLS failures
Backport the Linux QUIC TLS test quarantine
Description
Backports #69584 to
release/9.0to quarantine the recurring Linux Kestrel HTTP/3 and QUIC failures that terminate during the MsQuic TLS handshake withQUIC_STATUS_TLS_ERROR.The backport includes OS-scoped quarantine support and per-row quarantine support for
ConditionalTheory, preserving healthy Windows, macOS, and HTTP/2 coverage. Two tests from the original PR do not exist onrelease/9.0and are therefore not included. An existing all-platform quarantine forStreamPool_ManyConcurrentStreams_StreamPoolFullis preserved.Related to #69582
Customer Impact
The failure currently blocks unrelated
release/9.0servicing PRs and reproduces on the target branch. Quarantining the affected Linux-only test cases restores useful servicing validation while the underlying runtime fix is unavailable on this branch.Regression?
This is a branch-wide runtime/test-environment failure rather than a product regression introduced by the affected PRs.
Risk
This changes test discovery metadata and shared test infrastructure only. Product binaries and behavior are unchanged, and the quarantine remains scoped to Linux and the affected HTTP/3/QUIC rows.
Verification
Confirmed the backport changes exactly the same 12 files as #69584, excluding only the two tests absent from
release/9.0, and preserves the existing #56517 quarantine.Passed with 0 warnings and 0 errors:
./src/Testing/build.sh --projects "$PWD/src/Testing/test/Microsoft.AspNetCore.InternalTesting.Tests.csproj" -test --no-build-native --no-build-nodejs --no-build-java --no-build-installers -p:TestRunnerAdditionalArguments='-class Microsoft.AspNetCore.InternalTesting.ConditionalTheoryTest -class Microsoft.AspNetCore.InternalTesting.Tests.QuarantinedTestAttributeTest'./src/Servers/build.sh --projects "$PWD/src/Servers/Kestrel/Transport.Quic/test/Microsoft.AspNetCore.Server.Kestrel.Transport.Quic.Tests.csproj" --no-test --no-build-native --no-build-nodejs --no-build-java --no-build-installers./src/Servers/build.sh --projects "$PWD/src/Servers/Kestrel/test/Interop.FunctionalTests/Interop.FunctionalTests.csproj" --no-test --no-build-native --no-build-nodejs --no-build-java --no-build-installersAn unfiltered InternalTesting run was also attempted, but unrelated
LoggedTestinitialization tests failed under the local targeted-build invocation. The two changed test classes pass when selected directly.The affected QUIC tests require Linux MsQuic and were not run on macOS; CI will validate their discovery and quarantine behavior on Linux.
Packaging changes reviewed?
When servicing release/2.1