Repository navigation
[ci-scan] Test failure: Async2ManagedThreadId.TestThreadIdReflectsResumptionThread Assert.Equal under JIT stress #130212
Description
Build Information
Build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1492736
Build error leg or test failing: coreclr Pri1 Runtime Tests Run linux x64 checked - _regression_managed_thread_id::Async2ManagedThreadId.TestThreadIdReflectsResumptionThread
Pipeline: runtime-coreclr jitstress (definition 109, optional rolling stress pipeline), branch main. The failure reproduces across multiple stress-mode legs and persists into follow-up build 1494001.
Error Details
Under JIT stress, Async2ManagedThreadId.TestThreadIdReflectsResumptionThread fails its Assert.Equal check: the managed thread id observed after the async resumption does not match the expected value (the concrete expected/actual thread-id numbers vary from run to run, so they are excluded from the match signature):
Running test: _regression_managed_thread_id::Async2ManagedThreadId.TestThreadIdReflectsResumptionThread()
Xunit.Sdk.EqualException: Assert.Equal() Failure: Values differ
Expected: 1
Actual: 11
at Xunit.Assert.Equal[T](T expected, T actual, IEqualityComparer`1 comparer)
at Async2ManagedThreadId.TestThreadIdReflectsResumptionThreadAsync()
Failed test: _regression_managed_thread_id::Async2ManagedThreadId.TestThreadIdReflectsResumptionThread()
Error Message
{
"ErrorMessage": [
"Assert.Equal() Failure: Values differ",
"at Async2ManagedThreadId.TestThreadIdReflectsResumptionThreadAsync()"
],
"ErrorPattern": "",
"BuildRetry": false,
"ExcludeConsoleLog": false
}First build it occurred
Present in source build 1492736 and confirmed still failing across multiple legs of follow-up build 1494001. The signature is scoped to the async-resumption stack frame, which appears only on failure.
Duplicate search
Searched open and closed Known Build Error issues for Async2ManagedThreadId, TestThreadIdReflectsResumptionThread, and the assertion text: no existing KBE.
Filed by the CI outer-loop failure scanner (detection only). Mitigation — a fix PR or JIT-owner hand-off — is handled by the companion ci-failure-fix workflow, which walks open [ci-scan] KBEs.
Note
This issue was generated with the assistance of GitHub Copilot (AI). Signatures and build references were verified against public AzDO / Helix logs.
Note
🔒 Integrity filter blocked 5 items
The following items were blocked because they don't meet the GitHub integrity level.
- #114222
search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved". - #127541
search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved". - #117370
search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved". - #50848
search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved". - #19341
search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".
To allow these resources, lower min-integrity in your GitHub frontmatter:
tools:
github:
min-integrity: approved # merged | approved | unapproved | noneGenerated by CI Outer-Loop Failure Scanner · ● 12.9M · ◷
Report
Summary
| 24-Hour Hit Count | 7-Day Hit Count | 1-Month Count |
|---|---|---|
| 2 | 14 | 23 |
Activity
VincentBu commentedon Jul 6, 2026
Failed in: runtime-coreclr jitstress-isas-x86 20260704.1
Failed tests:
Error message:
Stack trace:
github-actions commentedon Jul 6, 2026
Workflow artifact: ci-fix
Artifact kind: handoff
Linked KBE: #130212
Root-cause analysis (read-only hand-off)
Under
runtime-coreclr jitstress(AzDO definition 109)_regression_managed_thread_id::Async2ManagedThreadId.TestThreadIdReflectsResumptionThreadfails its assertion:The test verifies that after an async resumption
Environment.CurrentManagedThreadIdreflects the thread the continuation actually resumed on. Under JIT stress the observed id does not match the expected one (the concrete numbers vary run-to-run and across the manyjitstress_isas_*legs, per the failure aggregation on this issue). A managed-thread-id that is correct under the default JIT but wrong under JIT stress points at a runtime-async / JIT stress codegen issue in continuation resumption, not at a test defect.Per this workflow's rules JIT codegen fixes and codegen-stress workarounds are out of bounds for an automated PR, so this is a hand-off.
Evidence
jitstress_isas_*fan-out on linux/windows/osx).runtime-coreclr jitstress(def 109) and thejitstress-isas-x86variants.Suggested reviewers / area contacts
area-CodeGen-coreclr(JIT stress / runtime-async resumption):@JulieLeeMSFT,@dotnet/jit-contribNote
This root-cause hand-off was generated by an AI/Copilot agent (
ci-failure-fix). No code change was produced because the evidence points to JIT-stress / runtime-async codegen that must not be worked around in test code. Please verify before acting.Note
🔒 Integrity filter blocked 6 items
The following items were blocked because they don't meet the GitHub integrity level.
search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".issue_read: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".issue_read: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".To allow these resources, lower
min-integrityin your GitHub frontmatter:dotnet-policy-service commentedon Jul 6, 2026
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.
JulieLeeMSFT commentedon Jul 6, 2026
cc @jakobbotsch, @VSadov.
JIT: Make all static base helpers byref typed in async functions (#13…
JulieLeeMSFT commentedon Jul 10, 2026
@jakobbotsch, it's still failing. 147 tests failed in 6 pipelines.
Failed in (6):
Console Log: Console Log
Source: runtime-coreclr crossgen2-composite gcstress / R2R-CG2 osx arm64 Checked gcstress0xc_disabler2r_jitstress2 @ OSX.26.Arm64.Open / _regression_managed_thread_id::Async2ManagedThreadId.TestThreadIdReflectsResumptionThread()
Failed tests:
VincentBu commentedon Jul 13, 2026
Failed in: runtime-coreclr jitstress-isas-x86 20260711.1
Failed tests:
Error message:
Stack trace:
jakobbotsch commentedon Jul 14, 2026
Fixed by #130536
JIT: Make all static base helpers byref typed in async functions (#13…