- Created state handlers for all replication states
- Implemented transitions based on received data
- Added a WAL entry applier with validation
- Implemented connection/reconnection management
- Implemented ACK/NACK tracking and verification
- Created the WAL observer for the primary
- Implements session management and connection tracking
- Implemented the WAL streaming service over gRPC
- Connected WAL retrention to acknowledgements
- WAL package now can notify observers when it writes entries
- WAL can retrieve entries by sequence number
- WAL implements file retention management
- Add replication protocol defined using protobufs
- Implemented compression support for zstd and snappy
- State machine for replication added
- Batch management for streaming from the WAL