ReadonlynodeReadonlyreservationsThe store-backed registry every session on this node screens against. Pass it wherever a
registry is asked for (the worker's orphans job, a lane manager not built from
laneOptions); never build a second one per node.
Throws SESSION_MISROUTED unless this node owns the scope — the gate for a request edge.
Spread into openInstanceEconomies so the manager's lanes share this node's registry and
rotate under the same bound the sweep law was validated against.
Opens the scope's next raw netting epoch: ownership-gated, screened by the shared
registry, session id minted as sess:<scope>:<nonce>-<n>. The caller owes the epoch
discipline — settle within epochMaxAgeMs, then open the next epoch (the lane manager
does both on cadence; see laneOptions).
Optionaloptions: Omit<SessionOptions, "reservations">The scope's owning node per the rendezvous assignment — the same answer on every node.
Whether the assignment routes the scope here; the boolean form of ClusterNode.ownerOf.
Rebuilds a journaled session with the shared registry wired in — the failover path for a session id the sweep reported. The shared counter already holds the crashed node's reservations, and wiring the registry here is what tells recovery not to re-apply them.
One orphan-sweep pass over the shared journal: reports crashed epochs, settles the ones
older than the validated bound when the sweep opt-in is set, and releases their
reservations. Schedule it like any worker sweep; more than one node running it is safe
(settling is idempotent against stored evidence).
Optionalinput: { limit?: number; now?: number }
One node's handle.
ownerOf/owns/assertOwnsanswer the shared rendezvous assignment;openSessionopens ownership-gated epochs;recoverfinishes a crashed node's session;laneOptionsspreads into the lane manager;sweepOrphansruns the shared-journal sweep. Construct through openClusterNode.