Skip to content

fix(update): calm narration when WinGet lacks the new version yet (0x8a15002b)#524

Merged
githubrobbi merged 1 commit into
mainfrom
fix/update-winget-not-published-narration
Jul 4, 2026
Merged

fix(update): calm narration when WinGet lacks the new version yet (0x8a15002b)#524
githubrobbi merged 1 commit into
mainfrom
fix/update-winget-not-published-narration

Conversation

@githubrobbi

Copy link
Copy Markdown
Collaborator

The last loose end from the dual-install uffs --update session.

Right after a release the WinGet manifest publishes a bit later than the GitHub release, so uffs --update's winget step hits winget's "no applicable upgrade" exit code 0x8a15002b and printed a scary winget upgrade did not complete. That code just means "nothing newer available yet" — not a failure.

  • run_winget_upgrade now returns Updated / NotAvailableYet. The NotAvailableYet case is narrated as a plain note ("WinGet doesn't have vX.Y.Z yet — the winget copy catches up on the next uffs --update").
  • Any genuine winget failure now also names the likely publish-lag cause instead of only a raw code.

Verified

Windows-only (windows_impl) — validated locally with cargo xwin check + clippy for x86_64-pc-windows-msvc (0 warnings). Unit test covers the exit-code classifier. [Unreleased] changelog entry added (per-PR habit).

Note the exit-code value (0x8a15002b) is taken from the live run you captured; if it ever proves to mean something else, only that exact code is special-cased, so a real failure is never silently swallowed.

…8a15002b)

Right after a release the WinGet manifest publishes a bit later than the GitHub
release, so `uffs --update`'s winget step hit winget's "no applicable upgrade"
exit code (0x8a15002b) and printed a scary "winget upgrade did not complete".
That code just means "nothing newer available yet" — not a failure.

run_winget_upgrade now returns Updated / NotAvailableYet: the NotAvailableYet
case is narrated as a plain note ("WinGet doesn't have vX.Y.Z yet — the winget
copy catches up on the next `uffs --update`"), and any genuine winget failure
now also names the likely publish-lag cause instead of only a raw code.

Windows-only (windows_impl); verified with `cargo xwin check`/`clippy` for
x86_64-pc-windows-msvc. Unit test covers the exit-code classifier.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@githubrobbi githubrobbi enabled auto-merge July 4, 2026 13:48
@githubrobbi githubrobbi added this pull request to the merge queue Jul 4, 2026
Merged via the queue into main with commit c8637ff Jul 4, 2026
21 checks passed
@githubrobbi githubrobbi deleted the fix/update-winget-not-published-narration branch July 4, 2026 14:05
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.

1 participant