Fix active .NET and Python CI failures - #2093
Conversation
Select the platform-specific Copilot CLI package deterministically in .NET E2E tests, and pin/format with Ruff 0.16.0 to match CI. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 08458e95-8971-4192-b070-aac26b87ad70
There was a problem hiding this comment.
Pull request overview
Fixes CI instability in .NET E2E CLI resolution and Python formatting.
Changes:
- Selects the platform-, libc-, and architecture-specific Copilot CLI package.
- Pins Ruff 0.16.0 and reformats Python README examples.
Show a summary per file
| File | Description |
|---|---|
dotnet/test/Harness/E2ETestContext.cs |
Resolves the correct platform-specific CLI package. |
python/pyproject.toml |
Pins the Ruff version used by CI. |
python/README.md |
Applies Ruff 0.16.0 formatting to examples. |
Review details
- Files reviewed: 3/3 changed files
- Comments generated: 0
- Review effort level: Medium
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 08458e95-8971-4192-b070-aac26b87ad70
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 08458e95-8971-4192-b070-aac26b87ad70
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Warning
Firewall blocked 1 domain
The following domain was blocked by the firewall during workflow execution:
awmgmcpg
To allow these domains, add them to the
network.allowedlist in your workflow frontmatter:
network:
allowed:
- defaults
- "awmgmcpg"See Network Configuration for more information.
Generated by SDK Consistency Review Agent for #2093 · 38.9 AIC · ⌖ 5.5 AIC · ⊞ 5.2K
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 08458e95-8971-4192-b070-aac26b87ad70
Cross-SDK Consistency ReviewThis PR makes two main changes:
The abort-recovery test fix looks consistent with how other SDKs handle similar scenarios. ✅ Potential Consistency Gap: CLI Platform Package DiscoveryThe .NET harness fix (using platform-specific glob) addresses a real problem: when multiple platform packages are installed under The Go E2E harness has the same broad-glob pattern that was just fixed in .NET: // go/internal/e2e/testharness/context.go, line 37
matches, _ := filepath.Glob(filepath.Join(base, "copilot-*", "index.js"))And similarly in For completeness, it may be worth applying the same platform-aware narrowing to the Go harness — though this is a non-blocking suggestion since the test might work fine in practice if only one platform package is ever installed in CI. Summary
Overall this is a focused, well-scoped fix. The Go harness gap is worth tracking but not a blocker. Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "awmgmcpg"See Network Configuration for more information.
|
Summary
Root causes
copilot-linuxmusl-x64on glibc runners because both optional packages are installed and directory order is unspecified.Validation
uv run ruff format --check .uv run ruff checkdotnet build test/GitHub.Copilot.SDK.Test.csproj --no-restoreGITHUB_ACTIONS=true(2 passed)