Skip to content

[codex] Fix repo manage crash#87

Merged
zhuowcui merged 1 commit into
mainfrom
codex/fix-repo-manage-crash
May 20, 2026
Merged

[codex] Fix repo manage crash#87
zhuowcui merged 1 commit into
mainfrom
codex/fix-repo-manage-crash

Conversation

@Xueyang-Song

Copy link
Copy Markdown
Collaborator

Summary

Fixes the Manage Repository crash reported during Microsoft Store certification.

Root cause

The Manage Repository page materialized selectable repository templates that applied the shared Container style to Grid elements. That style targets Border, so WinUI threw a XAML parse exception when the template loaded after clicking the gear button. In the Store crash report this surfaced as a 0xc000027b fail-fast in Microsoft.UI.Xaml.dll.

Changes

  • Use Border for selectable repository templates that apply the Container style.
  • Move RepoManagePage to the newer DI-backed RepoManagePageViewModel flow.
  • Add guarded load/delete handlers so GitHub/auth/API failures become page status instead of escaping through XAML events.
  • Add a regression test that prevents applying the Container style to non-Border elements.

Validation

  • dotnet build .\JitHub.WinUI\JitHub.WinUI.csproj -c Release -p:PublishAot=false -p:PublishTrimmed=false
  • UI smoke: launched the release app with --page=home, invoked RepoSideBarManage, verified “Manage repositories” appeared and the process stayed alive.
  • dotnet test .\JitHub.WinUI.Tests\JitHub.WinUI.Tests.csproj -c Release passed: 99 tests.
  • powershell -NoProfile -ExecutionPolicy Bypass -File .\eng\Build-JitHubWinUIStorePackage.ps1 -ProjectPath .\JitHub.WinUI\JitHub.WinUI.csproj -OutputDirectory .\artifacts\store-smoke -BundlePlatforms x64 completed and produced the bundled .msixupload.

@zhuowcui zhuowcui marked this pull request as ready for review May 20, 2026 15:19
@zhuowcui zhuowcui merged commit a566ac2 into main May 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants