All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Added randomized exponential backoff when fetching the latest block fails, preventing tight RPC retry loops and improving recovery.
- Documented Gas Network scoring in
EVALUATION.mdand linked the reference from the README. - Added a canonical signing round-trip test to enforce the v1 payload schema.
- Breaking: Adopted the latest signing spec — agent payloads now include
schema_version, hash canonical JSON, encodepriceas a wei-denominated decimal string viaPriceUnit, and drop the legacykind/FeeUnitfields. - Updated publishing and oracle conversion to emit wei strings from agents and safely parse them when building
OraclePayloadV2records. - Refreshed tooling: Docker builds now use
cargo-chef, CI caching switches toSwatinem/rust-cache, and dependencies bump (tracing-subscriber0.3.20,slab0.4.11) withalloyserde support enabled.
- Dropped the Homebrew installer target from
cargo-distconfiguration.
- Initial release of Blocknative Gas Agent
- Real-time gas price estimation for the Gas Network
- EIP-1559 transaction handling and gas estimation
- Block polling based on exact block timing
- Parallel processing of model payloads
- Gas Network signature generation
- Prometheus metrics integration with OpenTelemetry
- RESTful API endpoints for gas price queries
- Improved error handling by replacing anyhow with concrete ModelError types
- Enhanced pending floor settlement changed to Fast settlement
- Optimized network requests by reusing single Reqwest client
- Updated model functions to return FromBlock values
- Fixed clippy warnings and code quality issues
- Resolved EIP-1559 handling edge cases
- Improved model prediction error handling
- Built with Rust and async/await patterns using Tokio
- Supports multiple blockchain networks and gas estimation models
- Comprehensive testing suite with unit and integration tests
- Production-ready with optimized release profile settings