Problem
gordon version accepts the global --remote/-r flag but ignores it: it always prints the version baked into the local binary (Version, Commit, BuildDate, Dirty in internal/adapters/in/cli/root.go).
On 2026-10-22, igor ran Gordon 3.5.0 while the workstation CLI was 3.4.1-capabilities-qa:
$ gordon version -r igor
Gordon 3.4.1-capabilities-qa # the local CLI, not igor
This is easy to misread during an upgrade: it looks like the server did not pick up the new binary.
Expected
With --remote (or -r), gordon version reports the remote server's version and shows the local CLI version next to it, with each line labelled, for example:
$ gordon version -r igor
Client Gordon 3.5.0 (8345e76, 2026-10-22T08:36:54Z)
Server Gordon 3.5.0 (8345e76, 2026-10-22T08:36:54Z) igor
Without --remote, the output stays as it is today.
Notes
- The admin API exposes no server version today.
dto.StatusResponse(/admin/status) hasapps,registry_domain,registry_port,server_port,network_isolationandcontainer_status, but no version field. - Option: add
version,commitandbuild_dateto/admin/auth/verify. Any admin-scoped token can read it, which is howpushreadsregistry_domainwithout needingadmin:status:read./admin/statusis the other option. - An older server without these fields should print
Server unknown (server predates version reporting)rather than fail. - When the client and server versions differ, say so in a short notice.