[ci-scan] Build break: Mono AOT compile of JIT.Generics_ro fails with recursive/invalid generic instantiation on linux-x64 MiniF [Content truncated due to length]
- Dominant language
- C#
- Stars
- 18.3k
- Forks
- 5.6k
- PR merge metrics
- PR metrics pending
Description
## Build Information
Build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1558665
Build error leg or test failing: linux-x64 Release AllSubsets_Mono_MiniFullAot_RuntimeTests minifullaot - AOT compile CoreCLR tests (JIT.Generics_ro.dll)
KBE authoring guidance (ci-failure-scan)
- `Error Details` is for readers. Paste the full exception, stack trace, or build error excerpt so the failure is understandable without opening the raw log.
- Build Analysis parses only the single JSON block under `Error Message`.
- `ErrorMessage` is a case-sensitive ordinal `String.Contains` substring copied verbatim from the failing log.
- Set `BuildRetry` to `true` only for a clear infrastructure retry case. `ExcludeConsoleLog` disables Helix console-log scanning.
## Error Details
The Mono AOT compile step (`aot-compile.proj`) fails while precompiling `JIT.Generics_ro.dll` on the `linux-x64 Release AllSubsets_Mono_MiniFullAot_RuntimeTests minifullaot` leg of `runtime-extra-platforms` (definition 154). The corerun-driven AOT pass emits over a thousand `Failed to load methodspec` errors rooted in recursive/invalid generic instantiations, then the MSBuild `Exec` reports failure:
```
EXEC : Failed to load methodspec 0x2b0003fa due to Could not find method 'VerifyA0A1A2A3NotInlinedGenericStatic' due to a type load error : Could not set up parent class, due to: Generic Type Definition failed to init, due to: Could not set up parent class, due to: Generic Type Definition failed to init, due to: Recursive type definition detected JitTest_Generics_Coverage_chaos65204782cs.A0A1`1 ... [/__w/1/s/src/mono/msbuild/aot-compile.proj]
/__w/1/s/src/mono/msbuild/aot-compile.proj(19,9): error MSB3077: The command "/__w/1/s/artifacts/tests/coreclr/linux.x64.Release/Tests/Core_Root/corerun /__w/1/s/artifacts/tests/coreclr/linux.x64.Release/JIT/Generics/JIT.Generics_ro/JIT.Generics_ro.dll" exited with return value 0, but errors were detected during execution. ExitCode was set to -1.
1154 Error(s)
Build failed with exit code 1. Check errors above.
```
The failure is persistent: it reproduces across the entire scanned ~25-build window (all builds `failed`) and in the follow-up build 1560207. True origin likely predates the scanned window.
## Error Message
```json
{
"ErrorMessage": "JIT/Generics/JIT.Generics_ro/JIT.Generics_ro.dll\" exited with return value 0, but errors were detected during execution. ExitCode was set to -1.",
"ErrorPattern": "",
"BuildRetry": false,
"ExcludeConsoleLog": false
}
```
Agentic workflow metadata (ci-failure-scan)
Workflow artifact: ci-failure-scan
Artifact kind: kbe-verification
Verified match count: 2 hits in failure.log
---
Filed by [`ci-failure-scan`](https://github.com/dotnet/runtime/blob/main/.github/workflows/ci-failure-scan.md) (detection only). [`ci-failure-fix`](https://github.com/dotnet/runtime/blob/main/.github/workflows/ci-failure-fix.md) walks open `[ci-scan]` KBEs and either opens a small fix PR or comments here to loop in owners — it never disables the test.
> Generated by [CI Outer-Loop Failure Scanner](https://github.com/dotnet/runtime/actions/runs/32370639881) · opus48 · 496.5 AIC · ⌖ 18.1 AIC · ⊞ 20.7K · [◷](https://github.com/search?q=repo%3Adotnet%2Fruntime+is%3Aissue+%22gh-aw-workflow-call-id%3A+dotnet%2Fruntime%2Fci-failure-scan%22&type=issues)
### Report
|Build|Repository|Step Name|Console log|Pull Request|
|---|---|---|---|---|
|[1582624](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1582624)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1582624/logs/89)||
|[1582425](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1582425)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1582425/logs/110)|dotnet/runtime#132744|
|[1582322](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1582322)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1582322/logs/486)||
|[1581950](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1581950)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1581950/logs/110)|dotnet/runtime#130050|
|[1581745](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1581745)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1581745/logs/89)||
|[1580442](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1580442)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1580442/logs/89)||
|[1580178](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1580178)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1580178/logs/380)||
|[1579525](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1579525)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1579525/logs/89)||
|[1579435](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1579435)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1579435/logs/110)|dotnet/runtime#130050|
|[1578220](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1578220)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1578220/logs/89)||
|[1578169](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1578169)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1578169/logs/110)|dotnet/runtime#133011|
|[1578114](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1578114)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1578114/logs/110)|dotnet/runtime#130050|
|[1578024](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1578024)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1578024/logs/469)||
|[1577512](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1577512)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1577512/logs/89)||
|[1576725](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1576725)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1576725/logs/110)|dotnet/runtime#133011|
|[1576204](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1576204)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1576204/logs/89)||
|[1575978](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1575978)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1575978/logs/575)||
|[1575514](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1575514)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1575514/logs/89)||
|[1574641](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1574641)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1574641/logs/89)||
|[1574376](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1574376)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1574376/logs/538)||
|[1574239](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1574239)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1574239/logs/89)||
|[1574096](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1574096)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1574096/logs/89)||
|[1574051](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1574051)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1574051/logs/583)||
|[1573862](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1573862)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1573862/logs/89)||
|[1573602](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1573602)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1573602/logs/95)||
|[1573540](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1573540)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1573540/logs/613)||
|[1573426](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1573426)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1573426/logs/110)|dotnet/runtime#130050|
|[1573117](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1573117)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1573117/logs/89)||
|[1572439](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1572439)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1572439/logs/450)|dotnet/runtime#132887|
|[1572010](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1572010)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1572010/logs/89)||
|[1571812](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1571812)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1571812/logs/574)||
|[1571246](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1571246)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1571246/logs/89)||
|[1569903](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1569903)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1569903/logs/89)||
|[1569716](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1569716)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1569716/logs/562)||
|[1569119](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1569119)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1569119/logs/89)||
|[1567956](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1567956)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1567956/logs/89)||
|[1567845](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1567845)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1567845/logs/550)||
|[1567484](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1567484)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1567484/logs/89)||
|[1566865](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1566865)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1566865/logs/110)|dotnet/runtime#132744|
|[1566331](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1566331)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1566331/logs/89)||
|[1566157](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1566157)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1566157/logs/556)||
|[1565612](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1565612)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1565612/logs/89)||
|[1564499](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1564499)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1564499/logs/89)||
|[1564198](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1564198)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1564198/logs/548)||
|[1564078](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1564078)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1564078/logs/89)||
|[1563879](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1563879)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1563879/logs/89)||
|[1563837](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1563837)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1563837/logs/576)||
|[1563727](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1563727)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1563727/logs/89)||
|[1563501](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1563501)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1563501/logs/89)||
|[1563399](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1563399)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1563399/logs/576)||
|[1563009](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1563009)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1563009/logs/89)||
|[1562158](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1562158)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1562158/logs/742)|dotnet/runtime#132608|
|[1562481](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1562481)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1562481/logs/455)|dotnet/runtime#132489|
|[1561887](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1561887)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1561887/logs/95)||
|[1561700](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1561700)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1561700/logs/546)||
|[1561263](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1561263)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1561263/logs/95)||
|[1560409](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1560409)|dotnet/runtime|AOT compile CoreCLR tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1560409/logs/95)||
#### Summary
|24-Hour Hit Count|7-Day Hit Count|1-Month Count|
|---|---|---|
|0|0|57|
Contributor guide
Research direction
Start with the linked Azure DevOps logs and src/mono/msbuild/aot-compile.proj, focusing on the linux-x64 minifullaot failure for JIT.Generics_ro/JIT.Generics_ro.dll. Trace the recursive generic-instantiation and Failed to load methodspec errors in the AOT compile step, then reproduce the failure; done means the affected AOT build completes without these errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, linux
- Domain
- ci-cd, compilers, testing
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100