cuprate-hinto-janai/consensus
hinto-janai 9923d8d69d
Some checks failed
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
cuprated: internal signatures required for RPC (#297)
* add request methods

* add p2p messages

* add txpool msgs

* add blockchain_context msgs

* add blockchain msgs

* fmt

* blockchain_manager msgs

* blockchain manager msg types

* add DB fn signatures

* add statics module

* p2p msg changes, docs

* txpool docs/types

* blockchain docs/types

* `AlternateChains`, docs

* fixes

* remove blockchain write handle, fix docs

* remove `BlockchainReadRequest::Difficulty`

* remove `BlockchainReadRequest::MinerData`

* fix p2p ban types

* `CurrentRxVm` -> `CurrentRxVms`

* storage: remove `Clone` off write handle

* Update p2p/p2p-core/src/ban.rs

Co-authored-by: Boog900 <boog900@tutanota.com>

* fix merge

---------

Co-authored-by: Boog900 <boog900@tutanota.com>
2024-10-08 22:57:09 +01:00
..
fast-sync cuprated: internal signatures required for RPC (#297) 2024-10-08 22:57:09 +01:00
rules Add constants/ crate (#280) 2024-10-02 18:51:58 +01:00
src cuprated: internal signatures required for RPC (#297) 2024-10-08 22:57:09 +01:00
tests consensus: enable workspace lints (#295) 2024-09-21 01:32:03 +01:00
Cargo.toml consensus: enable workspace lints (#295) 2024-09-21 01:32:03 +01:00
README.md Cleanup & Document consensus (#65) 2024-05-31 01:52:12 +01:00

Consensus Rules

This folder contains 2 crates:

  • cuprate-consensus-rules (rules/ directory)
  • cuprate-consensus

cuprate-consensus-rules contains the raw-rules and is built to be a more flexible library which requires the user to give the correct data and do minimal calculations.

cuprate-consensus on the other hand contains multiple tower::Services that handle transaction/block verification as a whole with a context service that keeps track of blockchain state. cuprate-consensus uses cuprate-consensus-rules internally.

If you are looking to use Monero consensus rules it's recommended you try to integrate cuprate-consensus and fall back to cuprate-consensus-rules if you need more flexibility.