You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Flaky test analysis: Xamarin.Android-PR pipeline, April 27 – May 11 2026 (follow-up to #11203)
Follow-up to #11203 — refreshes the flaky-test picture two weeks later, after the fixes that
landed in between (notably #11249 for PerformanceTest and #11257 removing the WearOS lane).
Scope
Period
2026-04-27 → 2026-05-11 (14 days, ending today)
Pipeline
Xamarin.Android-PR (devdiv definition ID 12278)
Method
Identical to #11203 — see that issue for full methodology
Signal categories are the same as #11203: 🔴 = passed on auto-retry in a failed build (highest-confidence flake), 🟢 = passed on auto-retry in a succeeded build, ⚠️ = still failed on auto-retry.
All entries below are in suite MSBuildDeviceIntegration On Device. The "Action" column
applies the same playbook used by #11249 (soft-skip), #11202 ([Ignore]), #11110
(Inconclusive for emulator/env failure), and #10756 (remove).
#
Test
🔴
🟢
⚠️
Recommended action
Notes
1
TypeAndMemberRemapping(False,MonoVM)
3
0
0
Investigate — possible real regression
New high-confidence flake; only (False,MonoVM) parametrization fails; (True,CoreCLR) shows ⚠️1 only. Was 🟢1 in #11203.
Investigate BuildBasicApplicationAndAotProfileIt — recurring at a steady rate.
NativeAOT lane: leave at "monitor" for one more cycle; if any of CheckResouceIsOverridden(NativeAOT), DotNetRun(...,NativeAOT), GradleFBProj(True,NativeAOT) recur, treat as real bugs and escalate.
Repeat this analysis in ~2 weeks to confirm trend and catch regressions.
Same as #11203: only the last build per PR is sampled; only (Auto-Retry) runs carry test
detail; no error-message content collected; ⚠️1-count tests are weak signals and may be noise.
Methodology
Same script and data path as #11203. See that issue for the full methodology section.
Flaky test analysis: Xamarin.Android-PR pipeline, April 27 – May 11 2026 (follow-up to #11203)
Follow-up to #11203 — refreshes the flaky-test picture two weeks later, after the fixes that
landed in between (notably #11249 for
PerformanceTestand #11257 removing the WearOS lane).Scope
Xamarin.Android-PR(devdiv definition ID 12278)failedbuild result(Auto-Retry)runsSignal categories are the same as #11203: 🔴 = passed on auto-retry in a⚠️ = still failed on auto-retry.
failedbuild (highest-confidence flake), 🟢 = passed on auto-retry in asucceededbuild,Headline observations
PerformanceTestis no longer a red-CI source. The six topBuild_*/Install_*/DesignTimeBuild_*perf tests from Flaky test analysis: Xamarin.Android-PR pipeline, April 10–24 2026 #11203 each produced zero 🔴 events this window.[tests] Skip PerformanceTest on slow CI machines using evaluation time #11249's
Assert.Inconclusiveslow-machine guard is working.disappeared because the WearOS lane was removed in [build] Remove WearOS emulator CI lane #11257.
ApplicationRunsWithDebuggerAndBreaks) remains the largest residualflake family.
TypeAndMemberRemapping(False,MonoVM)— 3 🔴 across 3 different PRs([NativeAOT] Use NativeLinker and invoke lld directly for linking #11256, Split android-reviewer review-rules.md into conditional rule files #11266, LEGO: Pull request from juno/hb_6dddf33b-c6da-43d8-ac04-14d2c339cb00_20260502103235064 to main #11269). Only the
(False,MonoVM)parameterization flakes.Top flaky tests with recommended action
All entries below are in suite
MSBuildDeviceIntegration On Device. The "Action" columnapplies the same playbook used by #11249 (soft-skip), #11202 (
[Ignore]), #11110(
Inconclusivefor emulator/env failure), and #10756 (remove).TypeAndMemberRemapping(False,MonoVM)(False,MonoVM)parametrization fails;(True,CoreCLR)showsApplicationRunsWithDebuggerAndBreaks(False,"guest1","apk",True,MonoVM)Assert.Inconclusivewhen the debugger-attach step times out specifically.BuildBasicApplicationAndAotProfileItApplicationRunsWithDebuggerAndBreaks(False,"guest1","aab",True,MonoVM)ApplicationRunsWithDebuggerAndBreaks(False,null,"aab",True,MonoVM)FastDeployEnvironmentFiles(False,True,MonoVM)AppWithStyleableUsageRuns(True,False,False,MonoVM)CheckResouceIsOverridden(NativeAOT)MonoAndroidExportReferencedAppStarts(False,False,MonoVM)DotNetRunWaitForExitDotNetRun(True,"managed",NativeAOT)GradleFBProj(True,NativeAOT)MonoAndroidExportReferencedAppStarts(False,True,CoreCLR)AdbTargetChangesAppBundleEnsureUncaughtExceptionWorks(MonoVM)Tests with elevated⚠️ (retry-fail) counts
DotNetRunWithDeviceParameter(Other
Tests appearing in #11203 with no 🔴 hits this window
PerformanceTestfamily (Build_*,Install_*,DesignTimeBuild_*) — resolved by [tests] Skip PerformanceTest on slow CI machines using evaluation time #11249.ApplicationRunsWithDebuggerAndBreaksvariants — resolved by [build] Remove WearOS emulator CI lane #11257.SupportDesugaringStaticInterfaceMethods(MonoVM)— no signal this window.Proposed concrete follow-ups
TypeAndMemberRemapping(False,MonoVM)— file a focused issue. Threeindependent 🔴 hits in one window across unrelated PRs ([NativeAOT] Use NativeLinker and invoke lld directly for linking #11256, Split android-reviewer review-rules.md into conditional rule files #11266, LEGO: Pull request from juno/hb_6dddf33b-c6da-43d8-ac04-14d2c339cb00_20260502103235064 to main #11269), one
parametrization only.
ApplicationRunsWithDebuggerAndBreaks— when thedebugger-attach step itself fails (not the assertion under test), call
Assert.Inconclusivethe same way [tests] Skip PerformanceTest on slow CI machines using evaluation time #11249 does for slow-machine perf tests and Use Assert.Inconclusive for emulator acquisition failures #11110 doesfor emulator acquisition.
BuildBasicApplicationAndAotProfileIt— recurring at a steady rate.CheckResouceIsOverridden(NativeAOT),DotNetRun(...,NativeAOT),GradleFBProj(True,NativeAOT)recur, treat as real bugs and escalate.Existing related issues
PerformanceTesttimeouts (largely addressed by [tests] Skip PerformanceTest on slow CI machines using evaluation time #11249)DotNetRunWaitForExitandDotNetRunWithDeviceParameterFigure out WearOS test failures— closed-in-effect by [build] Remove WearOS emulator CI lane #11257 removing the lane[Ignore]pattern for a known-leaking testCaveats
Same as #11203: only the last build per PR is sampled; only⚠️ 1-count tests are weak signals and may be noise.
(Auto-Retry)runs carry testdetail; no error-message content collected;
Methodology
Same script and data path as #11203. See that issue for the full methodology section.