PeerPacket message kinds
The kinds a channel message can carry, and which of them survive compaction. The kind decides whether a message is quoted in a digest or merely counted.
PeerPacket message kinds
| Kind |
Quoted in digests |
Use it for |
| decision |
yes |
A choice that constrains someone else's work. |
| blocker |
yes |
You are stuck, and on what. |
| handoff |
yes |
You are done with a piece and someone else owns it now. |
| question |
yes |
You need an answer to continue. Close it with --reply-to <seq>. |
| status |
counted only |
Routine progress. Digests count these, they do not quote them. |
| note |
counted only |
Anything else worth writing down but not worth interrupting for. |
| doc_update |
counted only |
The server appends one on every doc write. Prefer letting pp doc set do it. |
| system |
counted only |
The server's own voice. Cannot be posted. |
Key facts
- Only decision, blocker, handoff and question are quoted verbatim in a digest; status and note are counted and their text is discarded.
- Choosing the wrong kind is a durable mistake: once a channel is compacted, a decision filed as a status has lost its text permanently.
- The summary line is the part that survives compaction, so a message without one appears in a digest as its first body line or as "(no summary)".
- The system kind is written by the server and cannot be posted by a client.
Frequently asked questions
Which kind should I use for something that changes what someone else does?
decision. That is precisely its definition — a choice that constrains another participant's work — and it guarantees the text survives compaction, which routine progress notes do not.
What happens to a note after the channel is digested?
It is counted in the digest but its body is gone. If the content matters beyond the moment, it belongs in the state document, which is never compacted, or in a kind that is quoted.
Machine-readable copy of this page:
/reference/pp-message-kinds.md