v0.3.0-beta — the beta hardening release
Pre-release
Pre-release
First beta of the Open Exchange stack (match + oms + admin-gateway + trading-ui, one coordinated version). The theme: correctness and durability first, then security, observability, and a frozen wire contract.
Highlights
- Exact money math:
FixedPoint.multiply/divideare exact and throw on true overflow; overflowing orders are rejected at admission withOVERFLOWinstead of silently truncating (#52).FixedPoint.parsegives an exact decimal-string round-trip for the money-as-strings API contract (#63). - Egress you can trust: an egress ordering primitive plus open-order membership resnapshot: order status can no longer be reordered or silently dropped across leader switchovers; the OMS reconciles from an authoritative snapshot. Divergence under storm testing (load + repeated leader kills): 14.05% before, 0.00% after (#53, #44).
- Durability hardened: fail-fast on the archive-replay error hot-loop (#55); ClusterBackup watchdog + heartbeat with a power-loss drill validating RPO ≈ 0 (#57); OS tuning persisted across reboots (#56).
- Observability: hot-path-safe node metrics, gateway
/metrics, Grafana starter kit, alert rules, and engine diagnostic counters (#61, #62, #42). - Transport: external media-driver mode with per-profile tuning; verified 800k orders/sec @ 100% on the prod profile (#38, perf baseline in
docs/perf/). - Gateway: per-client WebSocket backpressure with conflation and resync (#40).
- Docs & release: umbrella stack docs: architecture + scope boundary, full configuration reference, fresh-clone quick start (
docs/ARCHITECTURE.md,docs/CONFIGURATION.md,docs/QUICKSTART.md); OSS hygiene (SECURITY/CONTRIBUTING/CODE_OF_CONDUCT/CHANGELOG, SPDX headers); squash-only release flow documented. - CI: Trivy dependency and secret scanning (#43).
Full details in CHANGELOG.md. Beta / prerelease: no external security audit yet; not recommended for production deployments holding real funds.