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

21 lines
1.1 KiB
Markdown

# 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).
```text
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
```
- **list** — `node src/cli.js list`
- **monitor** — `serve` 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 floor** — `fleet.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.