Files
LanMountainDesktop/.trae/specs/avalonia-12-migration/checklist.md
lincube 93d6d93815 Migrate to Avalonia 12 and Plugin SDK v5
Upgrade project to the Avalonia 12 baseline and Plugin SDK v5: centralize Avalonia packages, remove legacy WebView.Avalonia usage (use NativeWebView/WebView2 EnvironmentRequested), and update Fluent/Material icon/package usages. Bump multiple package/project versions to 5.0.0 and Avalonia 12.0.1, update plugin template and README/docs to SDK v5, and add PLUGIN_SDK_V5_MIGRATION.md.

Also fix runtime/behavior bugs: make DataLocationResolver use a fixed bootstrap launcher data path and avoid recursive ResolveDataRoot; add legacy-state handling and extraction in OobeStateService; and update component settings tests to reflect migrated storage (DB/backup) and reset cache for test reloads. Various csproj, tests, and docs updated to reflect the migration and ensure build/test compatibility.
2026-04-29 10:16:25 +08:00

1.2 KiB

Checklist

  • Directory.Packages.props contains the Avalonia 12 dependency baseline.
  • Main host references Avalonia.Controls.WebView.
  • Source no longer references WebView.Avalonia, AvaloniaWebView, or .UseDesktopWebView().
  • BrowserWidget uses NativeWebView.Source, Navigate, Refresh(), NavigationStarted, and EnvironmentRequested.
  • WebView blanking navigates to about:blank.
  • Plugin SDK package version is 5.0.0.
  • PluginSdkInfo.ApiVersion is 5.0.0.
  • Plugin template package version default is 5.0.0.
  • Plugin template manifest apiVersion is 5.0.0.
  • Launcher data location config resolution cannot recurse through ResolveDataRoot().
  • OobeStateServiceTests pass.
  • dotnet build LanMountainDesktop.slnx -c Debug has 0 errors.
  • dotnet test LanMountainDesktop.slnx -c Debug completes without a test host stack overflow.
  • Windows host smoke test completed.
  • Windows Launcher smoke test completed.
  • Settings window FluentAvalonia 3 smoke test completed.
  • Component editor Material smoke test completed.
  • BrowserWidget navigation/refresh/page activation smoke test completed.
  • WebView2 missing-runtime diagnostic smoke test completed.