13. The firehose: every change, in order, signed
Each host publishes an event stream: commits with the changed blocks, identity and account events, each with a sequence number for resumption, as binary frames over a WebSocket.

13. The firehose: every change, in order, signed

Each host publishes an event stream: commits with the changed blocks, identity and account events, each with a sequence number for resumption, as binary frames over a WebSocket.

It is how the rest of the network learns anything.

Every host publishes a stream of events. Atproto calls it the firehose.

The main event is a commit: the signed root, and the blocks that changed. Enough to verify it against the version before.

Other events say your identity may have changed, or that an account was deactivated, or taken down.

Every event has a sequence number: a pipe of numbered cards. Disconnect, come back with your last number, the cursor, and you get what you missed.

It is a websocket carrying binary frames. Built for servers, not browsers. Lighter forms come later.

Check yourself. What does a consumer send when it reconnects?

Do you like what you are reading? Subscribe to receive updates.

Unsubscribe anytime

Collaborators