Skip to content

fix(update): honest winget-upgrade narration + unblock the musl release build#519

Merged
githubrobbi merged 2 commits into
mainfrom
fix/update-broker-note-winget-delegated
Jul 3, 2026
Merged

fix(update): honest winget-upgrade narration + unblock the musl release build#519
githubrobbi merged 2 commits into
mainfrom
fix/update-broker-note-winget-delegated

Conversation

@githubrobbi

Copy link
Copy Markdown
Collaborator

Folds four fixes from live-Windows testing of the winget upgrade flow so manual + winget install / uninstall / upgrade all narrate what actually happened. Precursor to shipping 0.6.22 (0.6.21's release build failed on the musl leg below and published nothing — latest stayed 0.6.20).

ci(release) — unblock the static-musl Linux build

cargo zigbuild <args> forwards to the zigbuild subcommand, which rejects --version (unexpected argument). The smoke line failed the musl matrix leg before the real build ran, so create-github-release (needs the whole build matrix) was skipped — no Linux asset. Removed the line; the real cargo zigbuild --release step is the proof and @0.22.3 is pinned.

fix(update) — three narration/behaviour fixes

  • Broker "NOT updated" note suppressed when the broker lives in a WinGet-delegated root: there winget upgrade swaps uffs-broker.exe and cycles the service, so it does reach the new version. The note contradicted the very next Restarting the broker service line. Gated on broker_in_winget_root().
  • Pointless update + UAC when already current: has_missing_core counted uffs-broker as required in every unmanaged root, but it is a once-installed Windows service, legitimately absent from a hand-placed CLI root — so a fully-current install looked "incomplete". Broker excluded from the required set.
  • "failed to restart: [daemon]" demoted to a note in the delegated path: the caller stops those components and its resume relaunches them on the new binary, so a non-elevated apply that can't restart them here left nothing broken.

Tests

root_missing_core broker-exclusion, broker_in_winget_root, winget_delegated_components (forward-slash paths so the component split runs cross-platform). Clippy clean on both crates.

githubrobbi and others added 2 commits July 3, 2026 15:59
… leg

`cargo zigbuild <args>` forwards to the `zigbuild` subcommand, which rejects
`--version` ("unexpected argument"), so the musl matrix leg failed before the
real build ran — and create-github-release (needs the whole build matrix) was
skipped, publishing no Linux asset. Remove the smoke line; the real
`cargo zigbuild --release` step is the proof and @0.22.3 is already pinned.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…update

Three fixes from live-Windows testing of the winget upgrade flow, so manual +
winget install/uninstall/upgrade narrate what actually happened:

- Stop claiming the Access Broker was "NOT updated" when it lives in a
  WinGet-delegated root: there the caller's `winget upgrade` swaps
  uffs-broker.exe and cycles the service, so it DOES reach the new version.
  The note contradicted the very next "Restarting the broker service" line.
  Gate on broker_in_winget_root() (read before drop_broker).

- Don't count the broker as a required core binary in has_missing_core. It is
  a once-installed Windows service, legitimately absent from a hand-placed CLI
  root; requiring it marked a fully-current install "incomplete" and fired a
  pointless update + UAC on every `--update` when the broker sat in the winget
  root.

- Keep WinGet-delegated components out of the alarming "failed to restart"
  warning. The caller stops them up front and its `resume` relaunches them on
  the new binary, so a non-elevated apply that can't restart them here left
  nothing broken — report it as a note, not a fault.

Tests: root_missing_core broker-exclusion, broker_in_winget_root,
winget_delegated_components (forward-slash paths for cross-platform split).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@githubrobbi githubrobbi enabled auto-merge July 3, 2026 23:14
@githubrobbi githubrobbi added this pull request to the merge queue Jul 3, 2026
Merged via the queue into main with commit db8f29f Jul 3, 2026
22 checks passed
@githubrobbi githubrobbi deleted the fix/update-broker-note-winget-delegated branch July 3, 2026 23:30
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