diff --git a/README.md b/README.md index f6a401c..51fa1d0 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,19 @@ This repository provides a production-ready skeleton for ExoRoute, a cross-venue - Minimal EnergiBridge mapping layer to a canonical Graph-of-Contracts IR - Packaging scaffolding for a robust build and distribution (pyproject.toml) +Enhanced Overview +- Deterministic offline replay: store and replay deltas with provenance for auditability. +- Privacy-first signals: per-signal budgets and secure aggregation; raw data stays local. +- Lite Graph-of-Contracts registry to map adapters to data contracts and engines. +- End-to-end MVP: 2 starter adapters (FIX/WebSocket price feed and simulated venue) over TLS. +- EnergiBridge-like interoperability layer to enable cross-domain reuse and conformance testing. + +MVP Plan (8–12 weeks) +- Phase 0: Protocol skeleton + 2 starter adapters over TLS; lightweight ADMM-lite local solver; end-to-end delta-sync with deterministic replay. +- Phase 1: Governance ledger and identity management; secure aggregation defaults for SharedVariables. +- Phase 2: Cross-venue demo with a toy two-asset setup; EnergiBridge SDK integration and toy adapters. +- Phase 3: SDKs, conformance tests, and lightweight audit dashboards. + Usage - Run tests: ./test.sh - Build package: python -m build diff --git a/tests/test_toy_schemes_basic.py b/tests/test_toy_schemes_basic.py new file mode 100644 index 0000000..c3f2364 --- /dev/null +++ b/tests/test_toy_schemes_basic.py @@ -0,0 +1,8 @@ +from exoroute.toy_schemes import sample_local_problem +from exoroute.primitives import LocalProblem + + +def test_toy_scheme_local_problem_instance(): + lp = sample_local_problem() + assert isinstance(lp, LocalProblem) + assert lp.domain == "equities"