Rust coordinator service for the symbolic execution stack.
Current slice:
- exposes the public HTTP API from
repos/spec/coordinator - verifies real EIP-712 signatures for reader registration and disclosure
- tracks nonce replay protection and disclosure request state in memory
- proxies reader registration and
to-readeroperations tompc - proxies handle resolution to the coprocessor
- resolves disclosure controllers on-chain with
eth_callagainstrequest.contract
Not implemented yet:
- durable storage for readers, nonces, and disclosures
- production coprocessor integration contract validation
- background polling or retry workers
cargo runEnvironment:
COORDINATOR_BIND_ADDRdefault127.0.0.1:4000COORDINATOR_MPC_URLdefaulthttp://127.0.0.1:3000COORDINATOR_COPROCESSOR_URLdefaulthttp://127.0.0.1:5000COORDINATOR_ETH_RPC_URLdefaulthttp://127.0.0.1:8545COORDINATOR_EIP712_NAMEdefaultCoordinatorCOORDINATOR_EIP712_VERSIONdefault1COORDINATOR_EIP712_SALTdefault0x9999...99
Authorization details:
- calls
disclosureController(bytes32)onrequest.contract - uses JSON-RPC
eth_callwith block tagsafe - treats
address(0)as authorization failure
cargo test