Expand description
Forwarding validated batches to the store owner (the owner’s side is in
super::owner).
The owner is this node (LocalForwarder) or another node
(MeshForwarder to a [StoreOwnerService]). Remote forwarding is a
ForwardRequest signed by the bridge node’s Ed25519 key, carried as a
MeshIpcEnvelope addressed to ServiceMethod { cog-store, store.ingest }
and answered by a response signed by the owner and bound to the request
nonce. The owner checks, in order: size, signature, structure, key
binding, addressee, time window, forwarder policy (key and project),
nonce freshness. The nonce is recorded last, so a forged request cannot
burn a legitimate one.
Structs§
- Forward
Request - A forwarded batch.
- Forward
Response - Signed answer.
- Local
Forwarder - The store owner is this node.
- Mesh
Forwarder - Forwards to a remote owner over a kept connection (reconnects once on a transport failure).
Enums§
- Forward
Outcome - What the owner did.
- Forward
Refusal - Why an owner refused. Stable names.
Constants§
- FORWARD_
DOMAIN - Domain tag signed before a request payload.
- FORWARD_
RESPONSE_ DOMAIN - Domain tag signed before a response payload.
- FORWARD_
VERSION - Wire version.
- MEM_
SCHEME - Address scheme for in-process owners.
- STORE_
INGEST_ METHOD - Method of the service.
- STORE_
SERVICE - Service the store owner answers as.
Traits§
- Forwarder
- Takes a batch to the node that owns the store.