master-zapier-plan-draft/docs/02-architecture/fleet.md
George Lambert dd99ce1c64
Some checks are pending
offline / test (push) Waiting to run
Add fleet control: service configs, replica floors, monitor, pause/restart
Central fleet.json sets min/max copies. Tree-node keepFloor respawns
until three healthy unpaused replicas remain. CLI and loopback UI
pause, resume, stop, and restart instances that fail health checks.
2026-09-11 13:09:55 -04:00

1.1 KiB

Fleet: replica floors, monitor, pause, restart

Runtime copies of middleware workers, WORM archives, and tree nodes are declared in packages/verae-fleet/fleet.json (how many) and packages/verae-fleet/services/*.json (how each one runs).

operator  --HTTP 127.0.0.1:3850-->  fleet control
                                      | spawn workers with /health
          tree-node min=3 keepFloor   |
          archive-worm min=3          |
          paused ≠ available          |
          unhealthy → restart         v
                               replicas on loopback health ports
  • listnode src/cli.js list
  • monitorserve probes /health and reconciles
  • restart — crash or 503 → same instance id respawned
  • pause / off — pause does not count toward min; keepFloor starts another tree-node. stop on a service disables it.
  • tree-node floorfleet.json tree-node.min (default 3). Do not drop this without changing the spec; bulk-summary leaf queries need several bloom-filtered nodes.

Zapier cloud is not spawned. NATS is monitored, not bound publicly.