pathfinder
pathfinder copied to clipboard
A Starknet full node written in Rust
Our current RPC upgrades are painful as specification diffs cannot be trivially traced to impacted methods and DTOs. Create a new version aware serializer which enables this. Implement this for...
We should consider refactoring the internal representation to reflect the latest block header from p2p perspective, which means that at least `state_diff_commitment` and `state_diff_length` should be included in it. Consider...
Extend the [pathfinder RPC API](https://github.com/eqlabs/pathfinder/blob/756907267f30d11e9c00fdbed62809a21ae0b54d/doc/rpc/pathfinder_rpc_api.json) with two new methods for transaction and event proofs. - input for both is a transaction hash - assume caller has access to the block...
We currently use the default clippy settings. I suggest we enable some additional ones. Peruse the `allowed` clippies and consider adding some, some suggestions - [cargo manifest group](https://rust-lang.github.io/rust-clippy/master/index.html#?groups=cargo) - [missing...
To safely sync class definitions we require the class hash information from the state update sync. This means this implementation's source should take a stream of class hashes per block...
Use the tracking stage processing framework to implement a stream for state updates. We can likely re-use the existing [source stream](https://github.com/eqlabs/pathfinder/blob/main/crates/p2p/src/client/peer_agnostic.rs#L281) though I would encourage modelling it after the [EventSource](https://github.com/eqlabs/pathfinder/blob/main/crates/pathfinder/src/sync/track.rs#L150-L153)...
Design a deserialization counter-part to `SerializeForVersion` introduced in #1850. Some additional context can be found in #1814. The version awareness ensures we can more trivially perform and audit RPC specification...
Our trie update logic is currently tied directly to a database write transaction. This means that updating the state trie for a given block can only occur in the same...
These are not meant to be mutually exclusive topics, but rather just starting points. - [ ] #1069 - [ ] #1070 - [x] #1071 - [x] #1326 - [x]...