You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 400a2ed
Browse filesBrowse the repository at this point in the historyBrowse files
🐛 fix(crux): /v1/health 503 body names the missing tmux through api.Client
api.Client.checkStatus decodes a non-2xx body as api.Error; the tmux 503
body was a plain api.Health with no error key, so StatusError.Error()
fell back to "crux server returned HTTP 503" and the supervisor polled
to ReadyTimeout, then killed and restarted crux serve without ever
logging that tmux was the cause.
- api.Health gains error/code (omitempty) sharing api.Error's wire keys,
so the 503 body decodes as both.
- handleHealth sets error="tmux not found on PATH: ..." and
code=unavailable (new api.CodeUnavailable) on the 503 path; the 200
body is unchanged.
- Tests: serve asserts the 503 body's error/code; api asserts
Client.Health surfaces the message in the StatusError and that
WaitReady keeps polling a 503 until ctx ends.
Hive-Fix-Attempt: 1/6
Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
- Crux `GET /v1/health` now reports a `tmux` field (where tmux resolves on PATH) and answers 503, with the full health body, when tmux is missing: every agent runs in tmux, so a server without it cannot serve traffic and was reporting healthy ([hivecommons/crux#137](https://github.com/hivecommons/crux/issues/137)). Existing fields are unchanged; probes that treated any 200 as healthy now see the failure.
1
+
- Crux `GET /v1/health` now reports a `tmux` field (where tmux resolves on PATH) and answers 503, with the full health body, when tmux is missing (the body also carries `error`/`code`, so `api.Client` callers and the supervisor see "tmux not found on PATH" rather than a bare 503): every agent runs in tmux, so a server without it cannot serve traffic and was reporting healthy ([hivecommons/crux#137](https://github.com/hivecommons/crux/issues/137)). Existing fields are unchanged; probes that treated any 200 as healthy now see the failure.
0 commit comments