blinklabs-io / blinklabs-io/cardano-node-api
Raw block storage for rollback buffer
- Dominant language
- Go
- Stars
- 16
- Forks
- 0
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 3
Description
The UTxO RPC spec handles rollbacks differently than Ouroboros and will return "undo" blocks on a rollback, so if a rollback rolls back 3 blocks, it will replay those blocks in reverse order as an undo block until it rewinds to the correct point. This allows downstream consumers to be stateless, but it requires us to maintain some kind of persistent buffer to service these requests.
Contributor guide
Research direction
No files, tests, or entry points are named. Start by reviewing the UTxO RPC rollback behavior and its difference from Ouroboros, then define what persistent raw block data the service must retain and how it will produce reverse-order undo blocks; done means rollback requests can be serviced back to the correct point without downstream state.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend, blockchain
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100