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
PR #34498 ("Add Microsoft.Maui.Client tool for cross-platform device and SDK management") introduced a new Microsoft.Maui.Client.UnitTests test project. These tests are failing with exit code 1 on Windows Helix in both Debug and Release configurations. Additionally, the macOS Release build fails compiling Maui.Controls.Sample.csproj for the net10.0-ios target framework.
The PR adds src/Tools/tests/Microsoft.Maui.Client.UnitTests/ and registers it in eng/helix.proj:
(XUnitProject Include="$(RepoRoot)src/Tools/tests/Microsoft.Maui.Client.UnitTests/Microsoft.Maui.Client.UnitTests.csproj" /)
```
**Likely root causes (most probable first):**
1. **`DoctorService` calls live processes** — `DoctorServiceTests.RunAllChecksAsync_IncludesDotNetChecks()` creates a real `DoctorService` that calls `dotnet workload list` and `dotnet --version`. On Helix Windows agents, `dotnet workload list` could fail or produce output that triggers assertion failures (`CheckStatus.Error` propagation).
2. **`AndroidCommandsTests` `Assert.Empty(parseResult.Errors)`** — Tests like `InstallCommand_ParsesCommaSeparatedPackages` use `System.CommandLine 2.0.5` (newly added). Semicolons in package strings like `build-tools;35.0.0` may be parsed differently or trigger parse errors with this version.
3. **`ServiceConfigurationTests.Program_Services_CanBeOverridden`** — Calls `Program.Services = testProvider` and `Program.ResetServices()`. If `Program` has side effects at startup on Windows Helix, this could fail.
**Blob log (requires auth):**
```
(helixr1107v0xdeko0k025g8.blob.core.windows.net/redacted)
```
---
### Failure 3 — Build macOS (Release)
**Log:** Job log 159 in build [#1353764](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1353764)
The macOS Release build fails compiling `Maui.Controls.Sample.csproj` for `TargetFramework=net10.0-ios`:
```
Platforms/Android/MainActivity.cs(1,7): error CS0246: The type or namespace name 'Android' could not be found [net10.0-ios]
Platforms/MacCatalyst/AppDelegate.cs(14,15): error CS0101: The namespace already contains a definition for 'AppDelegate' [net10.0-ios]
Platforms/MacCatalyst/Main.cs(6,15): error CS0101: The namespace already contains a definition for 'Application' [net10.0-ios]
Pages/Core/DragAndDropBetweenLayouts.xaml.cs(31,27): error CS0115: 'OnAppearing()': no suitable method found to override [net10.0-ios]
Pages/Core/FlyoutPageGallery.xaml.cs(26,27): error CS0115: 'OnNavigatedTo(NavigatedToEventArgs)': no suitable method found to override [net10.0-ios]
Android platform files (Platforms/Android/) are being compiled in the net10.0-ios TFM context
MacCatalyst files (Platforms/MacCatalyst/) cause duplicate class definitions for the iOS TFM
⚠️Note: The macOS Debug build succeeds. The main branch also has recent Helix failures (different tests). This macOS Release failure may be pre-existing — not specific to this PR — since the PR does not modify Controls.Sample.
Identify which tests fail — Download the Helix console log from the blob URL above or trigger a new run with --no-restore verbose to see exact failure messages
Mock dotnet process calls in DoctorServiceTests — RunAllChecksAsync_IncludesDotNetChecks calls real processes; use dependency injection / mock ProcessRunner or guard with [SkippableFact] / environment check
Verify System.CommandLine 2.0.5 parsing behavior — The semicolon-containing package strings in AndroidCommandsTests may behave differently; run tests locally against the actual System.CommandLine version
Confirm macOS Release failure is pre-existing — Check if the same errors appear in main-branch builds before this PR was created; if pre-existing, track separately
Integrity filtering activated and filtered the following items during workflow execution.
This happens when a tool call accesses a resource that does not meet the required integrity or secrecy level of the workflow.
issue:#0 (search_issues: Resource 'issue:#0' has lower integrity than agent requires. Agent would need to drop integrity tags [unapproved:all approved:all] to trust this resource.)
issue:#0 (search_issues: Resource 'issue:#0' has lower integrity than agent requires. Agent would need to drop integrity tags [approved:all unapproved:all] to trust this resource.)
Summary
PR #34498 ("Add Microsoft.Maui.Client tool for cross-platform device and SDK management") introduced a new
Microsoft.Maui.Client.UnitTeststest project. These tests are failing with exit code 1 on Windows Helix in both Debug and Release configurations. Additionally, the macOS Release build fails compilingMaui.Controls.Sample.csprojfor thenet10.0-iostarget framework.Build Details
maui-pr(Definition 302)refs/pull/34498/merge3172ea61cdae8365d8fbd17c4d2885d34c0c1795@rmarinhoFailed Jobs
Microsoft.Maui.Client.UnitTests.dllexit code 1Microsoft.Maui.Client.UnitTests.dllexit code 1CS0246/CS0101/CS0115inMaui.Controls.Samplefornet10.0-iosError Details
Failure 1 & 2 — Windows Helix Unit Tests (Debug + Release)
Helix Job IDs:
b7f27aa0-8338-41de-8277-6c94d15bd6ccande28ec8b6-cf95-4028-a015-38a245715dfabdc02c81-f17a-4b77-9848-1b2f807d7c46and7b3c5204-734d-4a05-90bc-f96d81f7f7f3Queue:
Windows.10.Amd64.OpenExit code:
1(test failure)The PR adds
src/Tools/tests/Microsoft.Maui.Client.UnitTests/and registers it ineng/helix.proj:Platforms/Android/) are being compiled in thenet10.0-iosTFM contextPlatforms/MacCatalyst/) cause duplicate class definitions for the iOS TFMOnAppearing,OnNavigatedTo, etc.) report "no suitable method found"Controls.Sample.Root Cause Assessment
Microsoft.Maui.Client.UnitTestsHelixControls.SampleCS errorsRecommended Actions
For PR #34498 author (
@rmarinho):--no-restoreverbose to see exact failure messagesdotnetprocess calls inDoctorServiceTests—RunAllChecksAsync_IncludesDotNetCheckscalls real processes; use dependency injection / mockProcessRunneror guard with[SkippableFact]/ environment checkSystem.CommandLine 2.0.5parsing behavior — The semicolon-containing package strings inAndroidCommandsTestsmay behave differently; run tests locally against the actual System.CommandLine versionRelated
Warning
The following domain was blocked by the firewall during workflow execution:
helixr1107v0xdeko0k025g8.blob.core.windows.netTo allow these domains, add them to the
network.allowedlist in your workflow frontmatter:See Network Configuration for more information.
Note
🔒 Integrity filtering filtered 3 items
Integrity filtering activated and filtered the following items during workflow execution.
This happens when a tool call accesses a resource that does not meet the required integrity or secrecy level of the workflow.
pull_request_read: Resource 'pr:Add Microsoft.Maui.Client tool for cross-platform device and SDK management #34498' has lower integrity than agent requires. Agent would need to drop integrity tags [unapproved:all approved:all] to trust this resource.)search_issues: Resource 'issue:#0' has lower integrity than agent requires. Agent would need to drop integrity tags [unapproved:all approved:all] to trust this resource.)search_issues: Resource 'issue:#0' has lower integrity than agent requires. Agent would need to drop integrity tags [approved:all unapproved:all] to trust this resource.)