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
fix: check download result and abort IPC/launch on pipeline failure
Two related fixes that prevent a cyclic update loop when download or
patch application fails:
1. ClientStrategy.ExecuteDownloadAsync: return Task<DownloadReport>
instead of Task so the caller can inspect per-asset results.
DownloadAndApplyAsync now checks FailedCount and throws on
failure, giving the CVP fallback a chance to retry.
2. Both scenario in ClientStrategy: check AllPackagesSucceeded after
ApplyUpgradePackagesAsync. If upgrade packages failed to apply,
do NOT send ProcessContract via IPC or launch the upgrade
process — doing so would forward a stale/missing TempPath and
cause undefined behavior.
3. UpdateStrategy: gate client launch on AllPackagesSucceeded.
When MainApp packages fail, skip StartAppAsync to avoid
restarting the old client, which would immediately re-detect
the update and loop.
Co-Authored-By: Claude <noreply@anthropic.com>
0 commit comments