Expand description
The node-graph assembly: given a built store (blobs + KV), a configured
Auth, and resolved
ServerOptions, wire the deploy store,
handler runtime, compute reconcile loop, and domain-verify reconcile loop
into a RunningNode ready to hand to a transport (serve_with & friends).
This is the headline extraction of PLAN-node-library: the binary’s
serve::run used to inline this wiring, so no embedder or in-process test
could exercise the same graph the boatramp serve binary runs. run now
resolves the environment (args -> backends -> store, signal handlers,
migration, auth) and calls assemble; the cluster path keeps its own inline
copy until a later step converges it here.
Structs§
- Node
Input - The built store + resolved config handed to
assemble. Owns the blob/KV backends and the auth/options the caller already resolved; borrows the parsed config and data directory. - Running
Node - A fully wired node: the deploy store, handler runtime, auth, and options a
transport consumes, plus the detached reconcile loops kept alive for the
node’s serving life. Destructure it and hold
reconcileacross the serve await so the loops outlive assembly.
Constants§
- COMPUTE_
IDLE_ TIMEOUT - How long a compute workload may be idle before scale-to-zero sleeps it.
- DOMAIN_
VERIFY_ RECONCILE_ TICK - How often the domain-verify reconcile loop re-checks pending challenges.
Functions§
- assemble
- Wire
NodeInputinto aRunningNode: build the handler runtime, the deploy store (materializing the reserveddefaultproject), the compute backends + reconcile loop, and the domain-verify reconcile loop. - compute_
reconcile_ tick - How often the compute reconcile loop converges desired vs actual workloads.
Defaults to 30s; override with
BOATRAMP_COMPUTE_RECONCILE_TICK_MS(milliseconds) so compute-backed tests can converge in a fraction of a second instead of waiting a full tick for the launch/scale reconcile.