Files
serai/coordinator
Luke Parker 2f833dec77 Add job to competently check MSRVs
The prior workflow (now deleted) required manually specifying the packages to
check and only checked the package could compile under the stated MSRV. It
didn't verify it was actually the _minimum_ supported Rust version. The new
version finds the MSRV from scratch to check if the stated MSRV aligns.

Updates stated MSRVs accordingly.

Also removes many explicit dependencies from secq256k1 for their re-exports via
k256. Not directly relevant, just part of tidying up all the `toml`s.
2025-08-26 14:13:00 -04:00
..
2025-08-26 14:13:00 -04:00
2025-08-26 14:13:00 -04:00
2025-08-25 09:17:29 -04:00
2025-08-26 14:13:00 -04:00
2025-01-11 05:13:43 -05:00

Coordinator

  • tendermint is an implementation of the Tendermint BFT algorithm.

  • tributary-sdk is a micro-blockchain framework. Instead of a producing a blockchain daemon like the Polkadot SDK or Cosmos SDK intend to, tributary is solely intended to be an embedded asynchronous task within an application.

    The Serai coordinator spawns a tributary for each validator set it's coordinating. This allows the participating validators to communicate in a byzantine-fault-tolerant manner (relying on Tendermint for consensus).

  • cosign contains a library to decide which Substrate blocks should be cosigned and to evaluate cosigns.

  • substrate contains a library to index the Substrate blockchain and handle its events.

  • tributary is our instantiation of the Tributary SDK for the Serai processor. It includes the Transaction definition and deferred execution logic.

  • p2p is our abstract P2P API to service the Coordinator.

  • libp2p is our libp2p-backed implementation of the P2P API.

  • src contains the source code for the Coordinator binary itself.