Skip to content

v0.7.3 — UX pass, GUI/CLI polish, and bulk driver export

Choose a tag to compare

@spilloid spilloid released this 19 Sep 01:23
· 77 commits to main since this release
11f1c6a

v0.7.3 — UX pass, GUI/CLI polish, and bulk driver export

Astra (Codex gpt-6-astra, adversarial review) ran a UX pass over SpoolSmith's
CLI and desktop GUI, primed with the operator's own product-scope record so its
recommendations stayed inside what's actually authorized. Ten findings, all
fixed:

  • Command-level help was broken: add --help was an unknown-flag error,
    inspect --help was treated as the inspect target, and help copy printed
    the entire command catalog instead of just copy's own syntax. Every
    command now has its own scoped help, and a usage mistake shows only the
    relevant command instead of the full listing.
  • A driver chosen for one printer could silently carry over to the next one
    set up in the same session — closed for both ways it could happen:
    selecting a different printer, and retyping the IP field directly.
  • The Intune wizard's preview built its JSON text with raw line endings
    instead of the app's own CRLF helper — the same class of rendering bug this
    project's dev log had already recorded once before.
  • Stale README claims (a leftover "v0.6.0" headline, "Intune packaging
    remains outside the shipped surface" long after it shipped, "a single
    spoolsmith.exe" when the release ships two binaries) are corrected.
  • Saved-setup dialog wording no longer lets "Remove" (a Windows mutation) and
    "Save changes" (a local file edit) read as the same kind of action; empty
    states now say when something couldn't be read instead of claiming there's
    nothing there; and three recovery messages now match what actually failed
    (a save location vs. a missing driver vs. an unreachable printer) instead
    of giving one generic printer-connectivity nudge for all of them.

Two more were found by using the app, not reading it: the review screen's
confirm button read "Add printer..." — a trailing ellipsis is Windows
convention for "this opens another dialog," backwards for a button that
performs the reviewed action immediately — so the suffix is gone. And
"offline mode" had two different names in the GUI; it's now Offline
setup
everywhere, defined once in the README.

Bulk driver export: spoolsmith copy --all [<output-dir>] bundles every
copyable queue on the machine in one run, skipping and explaining any queue
it can't reproduce rather than aborting the batch. GUI parity for this is
intentionally not in this release — see docs/gui-parity.md.

Everything here is copy, help text, and CLI ergonomics — the confirmation
gate, --yes/--plan-hash, and the driver-payload trust model are untouched.

Astra reviewed the diff itself for correctness in a second pass and found four
real issues before anything merged — an incomplete driver-clearing guard, a
factually wrong claim in the reworded Intune offline label, two stale test
strings, and a bulk-export test too weak to catch a real loop bug — all fixed
and reproduced against source, not accepted on the report alone. Verified for
real: go build/go vet/go test clean on Linux; both binaries cross-compile
for Windows; copy --all run against a real Brother HL-L2315D on the kubert
Windows 11 box, producing and verifying a real bundle; and all 30
SpoolSmithGui.Tests FlaUI tests passing against the actual rendered GUI on
that same box. Full record in
docs/dev-process.md.