Skip to main content

holger_fleet/
lib.rs

1//! # holger-fleet — the estate side of the ONE monetize's pull channel, for Holger
2//!
3//! Monetize never calls into an estate (G1-pull, G16: no estate runs a monetize of
4//! its own). Every Holger box calls the ONE monetize instead. Since P4a (2026-10-25) the pump
5//! itself is SHARED — monetize-estate-side's [`monetize_estate_side::pump`], which Gunnar's
6//! boxes take in T16 — and this crate holds only what is Holger's:
7//!
8//! | call | where |
9//! |---|---|
10//! | the box's own Ed25519 key, `<data>/fleet/box.ed25519` | [`key::BoxKey`] (shared) |
11//! | `Fleet.Report` / `Fleet.Orders` / `Fleet.Ask`, verify, ack | [`puller::Puller`] (shared) |
12//! | the wire, the jera round | [`grpc`], [`duty`] (shared) |
13//! | Holger's order kinds and their refusals | [`order`] |
14//! | the executor over holger's own verbs | [`exec::execute`] over [`exec::HolgerBox`] |
15//! | a Holger box as the shared pump runs it | [`pumped::Pumped`] |
16//! | joining the ONE monetize (`POST /attach/enrol`) | [`enrol`] |
17//!
18//! Every signed form is monetize-embed's own ([`monetize_embed::fleet`]), never a copy.
19
20/// The shared pump's modules, under the names Holger's callers already use.
21pub use monetize_estate_side::pump::{config, duty, grpc, key, puller};
22
23pub mod enrol;
24pub mod exec;
25pub mod order;
26pub mod pumped;
27/// The sign-in-again link (P4c, A28 M11): the shared crate's.
28pub use monetize_estate_side::sign_in;
29
30pub use config::FleetConfig;
31pub use exec::{execute, Applied, GrowSet, GrowState, HolgerBox, RechargeAsk};
32pub use key::BoxKey;
33pub use monetize_estate_side::{hex, key32, now_unix_ms};
34pub use order::{accept, Addressee, Order, Verdict};
35pub use puller::{Asked, Fault, Link, Pull, Pulled, Puller, Signed};
36pub use pumped::Pumped;
37
38/// This product's name on the wire.
39pub const PRODUCT: &str = "holger";