onemessagebus
A typed NDJSON message bus, generic over the vocabulary you declare: one envelope, one filter grammar, payload bounds and redaction, a schema registry with version read-sets, and an emitter and reader over streams.
Nothing here names an agent. Which source words exist, which label keys are
reserved and what each admits, and which top-level dimensions an envelope
carries are a Vocabulary's to declare — Open reserves nothing, and the
onemessagebus-agent crate declares the agent stack's. A vocabulary of your own
is proven the way those are: onemessagebus::conformance::drive runs the one
table every vocabulary is held to.
use ;
use Map;
let emitter = new
.with_labels
.with_filter;
let written = emitter.emit;
assert_eq!;
The wire, the grammar and the registry rules are stated in the repository's
docs/wire.md
and held by
docs/contract.md.