open-standards/jcp/jcp-rs/crates/jcp-gateway
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science 950ac778ce
Some checks are pending
repository checks / lockfiles, advisories, tests in CI, workflow hygiene, spec and section references, public text (push) Waiting to run
jcp-gateway --fleet: the binary as one node of a fleet, each record served by its owner and forwarded to it whole
A record is the receipts and the call record under one root grant a trusted
issuer signed; a request with no chain or rooted elsewhere moves no budget
and is served without one, so callers cannot make records. The first call
of a record this node does not hold takes it: restored from the store, its
gateway resumed from the receipts and its call record from the call lines,
both recording to it under the fence. A call for a record a live node owns
is forwarded to the address its lease advertises, method, target, fields and
body, since the caller's signature binds the endpoint and not a node; a
forwarded call reaching a non-owner gets 503 rather than a second hop. A node
that loses a record gives it up; one that cannot renew its lease writes
SELF-FENCE and exits 3.

Two binaries on one store: a call to either is charged against one budget,
a retry to either is answered from the owner's call record, a killed owner's
record is taken at epoch 2 with its spend and its answered calls, and a node
whose lease cannot be renewed fences itself.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-14 09:52:52 -05:00
..
src jcp-gateway --fleet: the binary as one node of a fleet, each record served by its owner and forwarded to it whole 2026-11-14 09:52:52 -05:00
tests jcp-gateway --fleet: the binary as one node of a fleet, each record served by its owner and forwarded to it whole 2026-11-14 09:52:52 -05:00
Cargo.toml jcp-gateway --fleet: the binary as one node of a fleet, each record served by its owner and forwarded to it whole 2026-11-14 09:52:52 -05:00