[Bug] health_cyborg_check reports healthy while cyborg-agent is down
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- shell
- Domain
- observability
Research direction
Start with health_cyborg_check in core/sdk_sh/modules/sdk_health.sh and compare the compute-node branch with the cyborg-api and cyborg-conductor branches. Check how ERR_CODE and ERR_LOG feed into auto-repair. Done means the check reports code 5 and the node's journal when cyborg-agent is stopped, auto-repair restarts it, and the check reports healthy when all Cyborg services are running.
Written by the indexing model from the issue text.
Description
Description
health_cyborg_check in core/sdk_sh/modules/sdk_health.sh misses a stopped cyborg-agent on a compute node. The compute loop sets a lowercase err_code=5, but the health framework reads ERR_CODE. So the check:
- reports Cyborg healthy (
cluster checkpasses) while an agent is down - never triggers
_health_cyborg_auto_repair, which only runs whenERR_CODEis non-zero, so the agent is never restarted - sets no
ERR_LOG, unlike the cyborg-api and cyborg-conductor branches
for node in "${CUBE_NODE_COMPUTE_HOSTNAMES[@]}" ; do
if ! is_remote_running $node cyborg-agent ; then
ERR_MSG+="cyborg-agent on $node is not running\n"
err_code=5 && break # <- should be ERR_CODE=5 (and set ERR_LOG)
fi
done
Found by reading the code (origin/develop @ ebda9261) while planning the 3.2.0 upgrade checks. Not reproduced on a cluster yet.
How to Reproduce
- On a compute node:
systemctl stop cyborg-agent - On a control node:
hex_cli -c cluster check Compute(orhex_sdk health_cyborg_report) - Cyborg reports healthy
Expected behavior
The check fails with error code 5 and the agent's journal as ERR_LOG. Auto-repair restarts cyborg-agent.
Additional Context (Optional)
GPU VMs that use pGPU passthrough depend on cyborg-agent, so a silently dead agent breaks GPU VM creation with no health signal. Related known-issue: cyborg-boot-race-burns-systemd-start-limit.
QA Verification
| # | Command / steps | Expected outcome |
|---|---|---|
| 1 | Stop cyborg-agent on a compute node, then run hex_sdk health_cyborg_report |
reports an error (code 5) naming the node |
| 2 | Leave it stopped for the auto-repair rounds | cyborg-agent is restarted and a "fixing completed" event is logged |
| 3 | With every Cyborg service running, run hex_sdk health_cyborg_report |
healthy |
- QA Status declared at Done — when this issue reaches
Done, set the board's
QA Statusfield toNot neededorReady to QA. Never leave it empty on a Done
ticket;In QA/Verifiedare QA's own transitions.
Output artifacts (Definition of Done)
Beyond code, docs, and config changes, completing this issue must also deliver:
- Handbook knowledge update — land the durable, team-readable knowledge from this
work into the bigstack-handbook cubecos kb (kb/cubecos/…) via
/bigstack-core:save-to-handbook(Topic / Runbook / Known-issue / ADR as fits).
Diagnosed or fixed a failure? Ship the scenario sidecar (<note>.scenario.yaml)
beside the note.
- Dominant language
- Shell
- Stars
- 161
- Forks
- 19
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 132
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from bigstack-oss/cubecos
-
[Bug] hex_sdk snapshot: snapshot_load_network_undo deletes /etc/appliance/state/configured on a configured node on 3.2.0Possibly taken @arasHi87 claimed this 25 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
bigstack-oss/cubecos#1783 · 1 assignee ·
Maintainers usually reply within 1 day
-
[Bug] COS UI Home > Chart: storage and ranking polls reuse the time window from page load on 3.2.0Possibly taken @arasHi87 claimed this 25 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
bigstack-oss/cubecos#1766 ·
Maintainers usually reply within 1 day
-
[Bug] COS UI Nodes > IPMI Control: Board Mfg Date shows weekday instead of day-of-month ("Sun Jun Su") on 3.2.0Possibly taken @arasHi87 claimed this 25 days ago. Open
Difficulty 1/5 Under an hour Newbie friendliness 88/100
bigstack-oss/cubecos#1764 ·
Maintainers usually reply within 1 day
-
[Bug] Metrics/ipmi_exporter: no IPMI data on hardware because freeipmi is not installed on 3.2.0Possibly taken @arasHi87 claimed this 25 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
bigstack-oss/cubecos#1761 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
bigstack-oss/cubecos#1325 ·
Maintainers usually reply within 1 day
All issues in bigstack-oss/cubecos
Similar issues
-
ai-driven-fuzzing bug claude Minor
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
linagora/open-bastion#425 ·
Maintainers usually reply within 1 day
-
BUG
Difficulty 1/5 1-3 hours Newbie friendliness 90/100
linuxmint/cinnamon-spices-applets#9223 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
leanprover-community/lean4game#589 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
nolabs-ai/nono-packs#65 ·
-
Screensaver ignores mouse movement — cursor stays invisible until keyboard input or lock/unlockOpen
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Maintainers usually reply within 1 day