fix(doctor): check that something is actually serving the network #35
No reviewers
Labels
No labels
blocked
blocker:ci-red
blocker:conflict
blocker:drill-pending
blocker:unrequested
bug
claimed
documentation
enhancement
epic
merge-next
needs-triage
ready
release
scope:cli
scope:drill
scope:host
scope:installer
scope:templates
scope:tiers
stale
state:addressing
state:bots-reviewing
state:building
state:needs-human
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: heavy-duty/box#35
Loading…
Reference in a new issue
No description provided.
Delete branch "drill/doctor-dnsmasq"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Two cold mints died in cloud-init with
Temporary failure resolving deb.debian.org, on a hostdoctor.shhad just certified clean.It was not DNS forwarding (#33), not leftover phase-D mutations, and not the drill.
claudenethad no dnsmasq. It never respawned after theSIGKILLthat recovered the wedged daemon back in run 6 — so every box since got no DHCP lease at all: no address, no gateway, no DNS. TheTemporary failure resolvingerrors pointed at Debian's mirrors, and the actual fault was that the box had never been on the network.Incus does not surface this
Bridge up. Config pristine. Nothing serving it. Only the process table knows:
So the doctor now asks the process table, and
--fixrestarts Incus to respawn it (falling back to "teardown and let the drill rebuild" if that doesn't work).The repair, for the record
That brought it back on the live host.
Why this matters beyond the drill
Any claudebox host that survives an unclean Incus death — a wedge (#26), an OOM, a hard reboot mid-operation — can be left in this state. Every subsequent
claudebox newthen fails several minutes deep in cloud-init with an error that blames the internet. Nothing in claudebox notices, and nothing tells the user. It is a five-second check that cost two dead mints and an hour.RUNS.mdgains trap 11: a network Incus calls "Created" may have nothing serving it.🤖 Generated with Claude Code