Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
CC @javiercn |
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Row rewrites can break ordinary xUnit theories, and multi-build failures incorrectly fall back to all-platform quarantine.
Review effort: Balanced
Findings: 1
Open (2)
What changed in this PR
Extends test quarantine automation with row-level and OS-scoped quarantines.
Changes:
- Preserves theory-row identities and adds
QuarantinedTestDatahandling. - Adds deterministic OS scopes and safe-output validation.
- Narrows one Kestrel quarantine to its HTTP/3 row.
| File | Description |
|---|---|
Http3RequestTests.cs |
Quarantines only the HTTP/3 row. |
test-quarantine.md |
Updates workflow logic and instructions. |
test-quarantine.lock.yml |
Regenerates the compiled workflow. |
validate_pull_request_outputs.py |
Validates row and OS transformations. |
test_validate_pull_request_outputs.py |
Tests safe-output validation. |
test_collect_case_a_eligibility.py |
Tests row eligibility and OS scopes. |
README.md |
Documents new safety properties. |
collect_case_a_eligibility.py |
Adds row resolution, history, and OS collection. |
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
Restrict inline row targets to ConditionalTheory and retain per-build failure platforms with conservative unknown handling. Cover collector, aggregation, and PR validation boundaries. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Resolve and cache Helix job QueueId for all evidence sources instead of inferring platforms from OS-neutral work-item names. Cover production-shaped payloads, queue failures, and selected Source C jobs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Row matching mishandles common literals and trailing comments, while renamed row history can incorrectly permit automated unquarantine.
Review effort: Balanced
Findings: 1
Open (1)
Resolved since last review (1)
Normalize boolean and integer constants, reject unmatched inline rows instead of broadening quarantine scope, preserve commented attributes, and guard row history across owner renames. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Parse row attributes without counting comment brackets and require exact comment preservation for each data row and diff hunk. Cover new quarantine, re-quarantine, and unquarantine transformations. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The collector treats MsQuicSupported as a potential data provider, preventing the newly scoped Kestrel row from being resolved or later unquarantined.
Review effort: Balanced
Findings: 1
Resolved since last review (1)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Copilot review overview
🔵 Needs a closer look
It changes privileged workflow evidence collection and patch validation across external Azure DevOps and Helix data paths that source inspection cannot fully verify.
Review effort: Balanced
Findings: None


Support scoped attributes in test quarantine workflow
Support scoped quarantine attributes
Description
Updates the test-quarantine workflow for the attribute changes introduced by #69584:
InlineDatarows withQuarantinedTestData.InlineData/QuarantinedTestDatatransformations at the safe-output boundary.QuarantinedTestandQuarantinedTestDataadditions through deterministic, receipt-bound OS scopes, falling back to all supported platforms when the evidence is incomplete.POST_ClientCancellationBidirectional_RequestAbortRaisedto quarantine only its demonstrated failing HTTP/3 row; the HTTP/2 row remains enabled.Validation:
node .github/workflows/scripts/test-quarantine/test_kbe_issue_handler.js— passed.python3 -B .github/workflows/scripts/test-quarantine/test_collect_case_a_eligibility.py— passed.python3 -B .github/workflows/scripts/test-quarantine/test_validate_pull_request_outputs.py— passed.gh aw compile test-quarantine --no-emit --strict— passed with no warnings.gh aw compile test-quarantine— passed and regenerated.github/workflows/test-quarantine.lock.yml.source activate.sh && ./src/Servers/build.sh --projects "$(pwd)/src/Servers/Kestrel/test/Interop.FunctionalTests/Interop.FunctionalTests.csproj" --no-build-native --no-build-nodejs --no-build-java --no-build-installers— passed with 0 warnings and 0 errors.Related to #69584