docs.rs failed to build polyc-state-connect-2026.9.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
The State plane's transport adapter.
One crate sits between the wire and the kernel, and nothing else in the
workspace touches a generated State type (INV-24). A Container composes
this crate's server glue; a caller uses its clients; both speak only the
vocabulary polyc_state defines — commands, receipts, cursors, bounded
pages, and typed outcomes.
What lives here
- [
wire] maps the kernel's types onto their encoding and back, one explicit conversion per type, every field named. - [
error] carries a typed outcome across the wire as a Connect error detail, so the variant a module refused with is the variant its caller reads — never one inferred from a status code. - [
admission] holds the checks the transport boundary makes before a call reaches a module: version, audience, the caller's proven identity, transport budget, and the listener's own lifecycle. Each is a pure function returning the kernel's typed outcome, so a handler branches on nothing itself. It also names the plane's audience once ([STATE_AUDIENCE]), for both the caller that declares it and the listener that serves it. - [
trace] carries one trace across the hop, so a commit and the decision that caused it land in the same trace tree. - [
journal] is the partition journal's client and server glue — the first authority surface this plane serves. - [
feed] is the durable commit feed's, including the resumable server stream a projector tails a partition through. - [
conformance] serves and dials the conformance kit's synthetic family, the test surface the authenticated shell proves itself against.
What does not live here
Policy. Every decision belongs to polyc_state or to an
[admission] function whose whole body is one comparison; a handler that
reached its own conclusion would be a State module hiding inside a
transport. Durability, too: a receipt is minted by the module that
committed, and this crate only carries it (INV-22).
See "Inter-plane protocol and transport",
docs/proposals/separated-planes.md.