Skip to content

feat(broker): add --version/-V so the self-update probe shows its version#458

Merged
githubrobbi merged 1 commit into
mainfrom
feat/uffs-broker-version-flag
Jun 18, 2026
Merged

feat(broker): add --version/-V so the self-update probe shows its version#458
githubrobbi merged 1 commit into
mainfrom
feat/uffs-broker-version-flag

Conversation

@githubrobbi

Copy link
Copy Markdown
Collaborator

Problem

In uffs --update, every binary resolves a version except the broker:

- uffs-broker  ?

uffs-broker had no --version arm — any unrecognised flag falls through to the SCM service dispatch, which (run interactively) prints usage text. The self-update snapshot probes each binary with <bin> --version and parses a semver token from the output, so the broker came back as ?: the only binary without a resolvable version, leaving version-skew detection blind to it.

Fix

  • Add a cross-platform --version / -V arm in main(), handled before the Windows-only service dispatch, printing uffs-broker <version> to stdout in the same shape as every other UFFS binary (uffs <version>). Works on every platform, exits 0.
  • List --version in the usage help.
  • Add a parse_version regression test for the hyphenated uffs-broker 0.6.9 line (the name's hyphen must not be mistaken for part of the version token).

Verification

$ uffs-broker --version   →  uffs-broker 0.6.9   (exit 0)
$ uffs-broker -V          →  uffs-broker 0.6.9   (exit 0)

Parser extracts 0.6.9; all 7 binaries::tests pass. Result: the uffs-broker ? line in uffs --update becomes uffs-broker 0.6.9.

🤖 Generated with Claude Code

…sion

`uffs-broker` had no --version arm: any unrecognised flag fell through to
the SCM service dispatch, which (run interactively) prints usage text. The
self-update snapshot probes each binary with `<bin> --version` and parses a
semver token from the output, so the broker came back as `?` in `uffs
--update` — the only binary without a resolvable version, leaving skew
detection blind to it.

Add a cross-platform --version/-V arm in main(), handled before the
Windows-only service dispatch, printing `uffs-broker <version>` to stdout in
the same shape as every other UFFS binary (`uffs <version>`). Works on every
platform and exits 0.

Also: list --version in the usage help, and add a parse_version regression
test for the hyphenated `uffs-broker 0.6.9` line (the name's hyphen must not
be mistaken for part of the version token).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@githubrobbi githubrobbi enabled auto-merge (squash) June 18, 2026 14:47
@githubrobbi githubrobbi merged commit 4f697cd into main Jun 18, 2026
21 checks passed
@githubrobbi githubrobbi deleted the feat/uffs-broker-version-flag branch June 18, 2026 15:01
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