geth/docs/adr/0013-pipe-and-pubsub.md

23 lines
823 B
Markdown

# ADR 0013: Pipe And Pubsub
## Status
Accepted.
## Decision
Pipe resources will use authorized Iroh streams for stdin/stdout-style byte
streams and forwarding. Pubsub will use lossy gossip for wakeups, presence,
status, and ephemeral notifications.
Pubsub is not authoritative storage. Important facts must live in durable
resources such as kv, document, db, CAS manifests, or future auth logs.
The prototype uses the geth control ALPN as an authorization preflight before a
daemon joins or broadcasts on a deterministic native `iroh-gossip` topic.
## Consequences
The modules can support ad hoc workflow and presence without confusing gossip
with durable state.
Gossip delivery is best-effort. Consumers must tolerate missed, duplicated, and
out-of-order notifications and use durable resources for reconciliation.