Skip to content

fix: channel-worker health reflects bridge state (not claude --version) - #35

Merged
starhunt merged 1 commit into
mainfrom
fix/channel-worker-health
Jun 14, 2026
Merged

starhunt merged 1 commit into
mainfrom
fix/channel-worker-health

Conversation

@starhunt

Copy link
Copy Markdown
Owner

Problem

In channel-worker mode, claude provider health ran claude --version (CLI existence). The CLI stays healthy even when the bridge — which actually executes jobs — is down. So the dashboard status was driven only by request-level failure accumulation: a few failed test jobs (today's extra_args / report_result / fetch-failed debugging) marked the provider offline even though claude --version was fine.

Fix

checkHealth() now reflects the bridge in channel-worker mode:

  • managed → channelBridgeManager.status() (running && healthy)
  • external → endpoint_url (or 127.0.0.1:bridge_port) /health ping

cli / sdk modes unchanged (claude --version).

Test plan

  • typecheck, build
  • 104 provider/service tests pass (no regressions)
  • manual: stop bridge → claude shows offline; start bridge → online

🤖 Generated with Claude Code

In channel-worker mode the provider health probe ran `claude --version`, which
stays healthy even when the bridge — the actual executor — is down. Status was
then driven only by request-level failure accumulation (a few failed jobs marked
the provider offline). Now health reflects the bridge directly:
- managed: manager status (running && healthy)
- external: endpoint (or bridge_port) /health ping

cli/sdk modes are unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@starhunt
starhunt merged commit 09711bb into main Jun 14, 2026
1 check passed
@starhunt
starhunt deleted the fix/channel-worker-health branch June 14, 2026 09:18
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