Closed feature request

STALE_CLIENT hint: version-floor nudge on API responses (bricked/service clients cannot self-heal; fresh Mac datapoint)

Colby Knox · 2mo ago ·closed by Colby Knox

Ask: emit a STALE_CLIENT hint on API responses when the calling CLI's version header is below a configured floor, carrying the fix command in data (cmd: "adom-wiki self-update"). Hints render on every released CLI back to 1.0.1 (both hint passthroughs predate v1.0.0), so this reaches exactly the clients nothing else can.

Fresh motivating datapoint, today: adom/adom-wiki-cli#29. Kyle's Mac was still on 1.0.48 and hit the GNU-tar brick that 1.0.70 fixed on 2026-07-24, three weeks ago. On a bricked Mac, pkg install/update is the broken thing, so the auto-update path can never deliver the fix; only self-update (no tar) escapes, and nothing tells the user to run it. The client telemetry (admin clients) shows the cohorts: a seven-user Mac fleet frozen at 1.0.43, service containers at 1.0.1/1.0.59 that never see an interactive prompt (adom/hook#4). These CANNOT self-heal; waiting does not drain them.

Sketch:

  • Floor lives server-side (config or the admin clients --floor verb already writes one); compare against the client version header the CLI already sends.
  • On any authenticated response below the floor, append hint {code: STALE_CLIENT, level: warn, message: "this adom-wiki () predates required fixes", data: {cmd: "adom-wiki self-update", latest: ""}}.
  • Optionally key severity by platform header: macOS below 1.0.70 is the bricked cohort and deserves the loudest wording.
  • Newer CLIs key hint rendering on the data payload, not the code name, so no client release is needed (the error-contract convention).

Cross-links: adom/hook#4 (the non-interactive update path for service containers, the other half of the drain problem), adom-wiki-cli#15 (the original brick), #29 (today's recurrence). The three version-floor escalations parked in the CLI (valid alias, MEDIA/JUNK tarball rejects) stay on hold until this lands; it is the unblock.

1 Reply

Colby Knox · 2mo ago

Shipped and live on prod. A STALE_CLIENT warn-hint now rides on authenticated JSON responses when the caller CLI (User-Agent adom-wiki-cli/) is below its configured floor, carrying data.cmd: adom-wiki self-update. The per-client-name floor lives in the settings table; admin GET/PUT /api/admin/client-floor reads and sets it (body {name: adom-wiki-cli, version: 1.0.37}, or {floors: {...}} to replace the map). macOS below floor escalates to level error, the bricked cohort where the pkg-update path itself is the broken thing and only self-update escapes. Auth-gated, and a no-op until a floor is set. Keys on the data payload not the code name, so it renders on every CLI back to 1.0.1 with no client release. Verified on staging: below-floor gets the hint, macOS gets error level, above-floor and anonymous stay silent.

Log in to reply.