- Added `with_production_oracle` and `with_oracle` methods to `EconomicsManager` for custom oracle setups.
- Introduced `record_compute_with_gpu` method in `MeteringService` to handle GPU-specific pricing.
- Enhanced `CircuitBreakerManager` to streamline price recording and state checking.
- Expanded `CrossChainOracle` with a builder pattern for easier configuration and added methods for managing pending packets.
- Introduced `PriceOracleBuilder` and `OracleFactory` for creating price oracles with various feeds.
- Added volume discount functionalities in `PricingEngine` for better pricing strategies.
- Improved `ContentResolver` with configuration management and health check features.
- Enhanced `ProverConfig` accessibility in `ProofSubmitter` and `Verifier` for better integration.
- Added utility methods in `SmtContext` for managing SMT-LIB scripts and assertions.
- Fix health check to use RPC call instead of GET /health
- Update API endpoints to use correct RPC method names:
- synor_getInfo, synor_getMiningInfo, synor_getTips
- synor_getBlockCount, synor_getBlueScore, synor_getBlocksByBlueScore
- Fix response format handling (synor_getTips returns {tips: [...]})
- Add WebSocket endpoint at /ws for real-time updates:
- stats_update events (every second)
- new_block events on block detection
- tip_update events on DAG changes
- Add ws feature to axum and tokio-tungstenite dependency
Fix all Rust clippy warnings that were causing CI failures when built
with RUSTFLAGS=-Dwarnings. Changes include:
- Replace derivable_impls with derive macros for BlockBody, Network, etc.
- Use div_ceil() instead of manual implementation
- Fix should_implement_trait by renaming from_str to parse
- Add type aliases for type_complexity warnings
- Use or_default(), is_some_and(), is_multiple_of() where appropriate
- Remove needless borrows and redundant closures
- Fix manual_strip with strip_prefix()
- Add allow attributes for intentional patterns (too_many_arguments,
needless_range_loop in cryptographic code, assertions_on_constants)
- Remove unused imports, mut bindings, and dead code in tests
A complete blockchain implementation featuring:
- synord: Full node with GHOSTDAG consensus
- explorer-web: Modern React blockchain explorer with 3D DAG visualization
- CLI wallet and tools
- Smart contract SDK and example contracts (DEX, NFT, token)
- WASM crypto library for browser/mobile