Is blake3::Hash of the event, we use those IDs to request and reply events and tips (tips being childless events in the graph).
Representation of an event in the Event Graph.
This is either sent when a new event is created, or in response to EventReq.
| Description | Data Type | Comments |
|---|---|---|
| timestamp | u64 |
Timestamp of the event |
| content | Vec<u8> |
Content of the event |
| parents | [blake3::Hash; N_EVENT_PARENTS] |
Parent nodes in the event DAG |
| layer | u64 |
DAG layer index of the event |
Events could have multiple parents, N_EVENT_PARENTS is the maximum
number of parents an event could have.
Receiving an event with missing parents, the node will issue EventReq
requesting the missing parent from a peer.
This message serves as a container of the event being published on the network.
| Description | Data Type | Comments |
|---|---|---|
| EventPut | Event |
Event data. |
Requests event data from a peer.
| Description | Data Type | Comments |
|---|---|---|
| EventReq | EventId |
Request event using its ID. |
Replys back the requested event's data.
| Description | Data Type | Comments |
|---|---|---|
| EventRep | Event |
Reply event data. |
Requests tips from connected peers. We use this message as first step into syncing asking connected peers for their DAG's tips.
Replys back our DAG tips' IDs.
| Description | Data Type | Comments |
|---|---|---|
| TipRep | Vec<EventId> |
Event IDs. |