Skip to content

Conversation

@qj0r9j0vc2
Copy link
Member

Changes

This PR implements the foundational database abstraction and state management for the execution layer.

Database Module (database.rs)

  • Provider trait for storage backend abstraction
  • InMemoryProvider for testing and development
  • CipherBftDatabase implementing revm::Database trait
  • LRU caching for accounts and bytecode
  • Support for pending changes and batch operations

State Module (state.rs)

  • StateManager for state root computation
  • Periodic state root computation (every 100 blocks)
  • Snapshot management for rollback capability
  • Automatic snapshot pruning
  • State root caching with LRU

Dependencies

  • Uses revm 19 + alloy 0.8 for compatibility
  • Adds lru and dashmap for caching and concurrent access

@qj0r9j0vc2 qj0r9j0vc2 merged commit 75f8132 into feat/execution Dec 29, 2025
@qj0r9j0vc2 qj0r9j0vc2 self-assigned this Dec 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants