Commit Graph
2 Commits
Author SHA1 Message Date
Claude b1dc98d7c0 feat(cluster): server:enrol — enrol an existing LB in the cluster API over SSH
Reruns provisionCluster on a serving node. Trust on first use is refused:
the host key must match --expect-hostkey or the one stored at install. The
node must already run this release. A failure never marks the live node
failed, and a re-enrolment stops its running agent before replacing the
node's identity (generation + 1).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Es8UhyPS8MNjuYTagqfGWi
2026-09-25 11:40:10 +00:00
Claude d110d6fb47 feat(cluster): enrol new LBs in the cluster API at install, over SSH
provisionCluster pushes the agent, runs keygen on the node (keys never
leave it), has the node verify MAIN's signed health before any token is
minted, then installs epoch 1 and starts the agent, which completes with
enrol_complete. The API off, no extension or no agent binary leaves the
node legacy; only an extension refusal or an unreachable API fails the
install. A keepalive in service boot and the root cron runs the agent on
enrolled nodes, and stops for good when MAIN has stopped the node.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Es8UhyPS8MNjuYTagqfGWi
2026-09-25 11:35:34 +00:00