Extrema Infra 0.3.1
Extrema Infra 0.3.1
This release adds channel-aware WebSocket decoding for Binance, Gate,
Hyperliquid, and OKX, reducing hot-path decode work while preserving
compatibility for control, error, and unexpected exchange frames.
WebSocket decoding
- Selects a preferred typed decoder from the configured WebSocket channel.
- Decodes normal high-frequency data frames without first traversing the
broader exchange envelope. - Retains the existing full-envelope decoder as the fallback for subscription
responses, control messages, exchange errors, and unexpected frames. - Emits a trace event when preferred decoding falls back.
- Keeps existing
IntoWsDatanormalization, symbol conversion, order-state
mapping, subscription behavior, and downstream event routing unchanged.
Documentation
- Clarifies the HList static-dispatch boundary and startup-bound task routing.
- Separates normalized exchange data handling from static strategy dispatch.
- Simplifies the scheduler-only strategy example.
- Restores the architecture diagram layout under Mermaid 11.16 and labels the
Python model path as PyTorch.
Validation
cargo fmt --all -- --check, locked checks, tests, strict Clippy, rustdoc,
dependency checks, and package dry-run passed in CI.- 147 LOB-client library tests passed with zero failures.
- Fixtures cover data, control, error, and fallback paths across Binance,
Gate, Hyperliquid, and OKX. - Focused release-mode decoder comparisons reduced selected Gate fixture decode
time by 41.2%-45.6% and selected Hyperliquid fixture decode time by
57.2%-60.6%. - Concurrent cross-framework validation completed 84 formal measurements with
zero drops, duplicates, missing routes, delivery loss, broadcast lag, or
ending in-flight work.
Packaging
- Bumps the crate version to
0.3.1. - Publish verification passed with 250 packaged files, about 2.3 MiB unpacked
and 1.5 MiB compressed. cargo publishcompleted successfully forextrema_infra v0.3.1.