The sequencer
Where signed messages go: votes, proposals, follows, settings.
Everything people sign on Raad goes to the sequencer:
https://seq.raad.vote
It checks each message, then stores it for the hub to serve.
What it receives
| Message | Who signs it |
|---|---|
| Vote | A voter, while the proposal is open. |
| Proposal | An author the space's validation accepts. |
| Follow, unfollow | Anyone. |
| Space settings | The space's admins. |
| Cancel a proposal | Its author, an admin or a moderator. |
| Hide a proposal | An admin or a moderator. |
Each message is EIP-712 typed data signed by the wallet, sent as JSON: the address, the signature and the signed data.
What it checks
- The signature matches the address.
- The space exists and the signer may act: a role, or a validation it passes.
- The timing: a vote inside its window, a proposal within the space's rules.
- The voting power, counted by Raad's score service.
A message that fails a check is refused with the reason, and nothing is stored.
Building a client
Clients that already sign governance messages in this format can send them to seq.raad.vote as they are. Raad's own app signs exactly what it shows in its review before your wallet asks.