[ci-scan] Test failure: CompatibleWithTest_TypeLoadException on Apple mobile CoreCLR

オープン
#137,140 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
csharp
領域
testing

調査の方向性

Start with the failing test at Loader/classloader/MethodImpl/CovariantReturns/UnitTest/CompatibleWithTest_TypeLoadException/CompatibleWithTest_TypeLoadException.dll and the linked source console. Trace why the D2 call succeeds on tvOS and iOS simulator despite the invalid covariant override, then compare the affected platform behavior. Done means the test produces its expected TypeLoadException on both affected legs and passes; the issue does not identify the runtime code path responsible.

索引モデルが issue の本文から書いたものです。

説明

agentic-workflows area-VM-coreclr blocking-clean-ci Known Build Error os-ios untriaged

Build Information

Build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1667020
Build error leg or test failing: tvos-arm64 Release AllSubsets_CoreCLR_RuntimeTests-Loader/classloader/MethodImpl/CovariantReturns/UnitTest/CompatibleWithTest_TypeLoadException/CompatibleWithTest_TypeLoadException.dll
Pipeline: runtime-extra-platforms, definition 154, main.
Also affected: iossimulator-arm64 Release AllSubsets_CoreCLR_RuntimeTests.
Queues: osx.15.amd64.appletv.open and osx.26.arm64.open.
First build it occurred (earliest verified observation, not an established introducing build): 1653767, finished 2026-10-29T09:48:20.7818427Z.
Source build finished: 2026-11-06T09:02:57.4679438Z.
Follow-up build: 1668850, finished 2026-11-07T07:22:44.0579218Z; the same ordered failure anchors reproduce on both affected legs.

The failure was verified in nine distinct source-and-prior builds: 1653767, 1655451, 1657310, 1658360, 1659071, 1661087, 1663137, 1665174, and 1667020. Ten prior build inventories were inspected. The two older sampled inventories did not expose affected Loader consoles; this is unknown affected-test coverage, not proof of a passing test. The true origin may predate the earliest verified observation. Multiple legs within one build are counted as one occurrence.

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 D2 case calls a non-overriding method on a type whose base class has an invalid covariant override. It unexpectedly succeeds instead of producing the expected TypeLoadException, and the test returns 101 instead of 100. Other cases print their expected TypeLoadExceptions; those expected exceptions are not the failure signature. No underlying product fix is established by this detection-only scan.

Source console: https://helixr1107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-1d54a7c66c4742b282/Loader/1/console.fec99e9b.log?helixlogtype=result

Run-specific timestamps and application-process prefixes are omitted below. Expected-exception output from the other cases is omitted between the D2 failure and the final assertion:

Running test: Loader/classloader/MethodImpl/CovariantReturns/UnitTest/CompatibleWithTest_TypeLoadException/CompatibleWithTest_TypeLoadException.dll
D2: call non-overriding method MD2 when base class of D2 has invalid covariant override
Unexpectedly succeeded
Test FAILED
Xunit.Sdk.EqualException: Assert.Equal() Failure: Values differ
Expected: 100
Actual:   101
   at Xunit.Assert.Equal[T](T expected, T actual, IEqualityComparer`1 comparer) in /_/src/arcade/src/Microsoft.DotNet.XUnitAssert/src/EqualityAsserts.cs:line 73
   at Program.<>c__DisplayClass0_0.<<Main>$>g__TestExecutor41|42(TestFilter filter, StreamWriter tempLogSw, StreamWriter statsCsvSw)
Failed test: Loader/classloader/MethodImpl/CovariantReturns/UnitTest/CompatibleWithTest_TypeLoadException/CompatibleWithTest_TypeLoadException.dll

Error Message

{
  "ErrorMessage": [
    "D2: call non-overriding method MD2 when base class of D2 has invalid covariant override",
    "Unexpectedly succeeded",
    "Actual:   101",
    "Failed test: Loader/classloader/MethodImpl/CovariantReturns/UnitTest/CompatibleWithTest_TypeLoadException/CompatibleWithTest_TypeLoadException.dll"
  ],
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}
Agentic workflow metadata (ci-failure-scan)

Workflow artifact: ci-failure-scan
Artifact kind: kbe-verification
Verified match count: 1 hits in failure.log

All four literal elements match once, in order, in the saved source Loader console. PASS/SKIP and passed/skipped-test negative checks are empty. The same ordered anchors were verified in both affected source consoles, both follow-up consoles, and 16 consoles from eight distinct prior builds. The D2-specific diagnostic and failed-test marker distinguish this from unrelated assertions in the merged Loader work item.


Filed by ci-failure-scan (detection only). ci-failure-fix walks open [ci-scan] KBEs and either opens a small fix PR or comments here to loop in owners — it never disables the test.

[!NOTE]
Generated by GitHub Copilot.

Generated by CI Outer-Loop Failure Scanner · copilot · gpt61 · ~228 AIC · ⌖ ~14 AIC · ⊞ 33.3K · ◷

Report
Build Repository Test Pull Request
1670305 dotnet/runtime Main.Main
1669782 dotnet/runtime Main.Main
Summary
24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 2 2
主要言語
C#
スター
18.4k
フォーク
5.8k
平均マージ
2日 14時間
マージ済み PR(30日)
585

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

dotnet/runtime のほかの issue

dotnet/runtime の issue をすべて見る

似ている issue

C# の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。