Overview
Implement a binary wire protocol feature for order entry (NewOrder, Cancel, CancelReplace, MassCancel) with execution report and market-data (trade, book-update) responses. Protocol is little-endian framed binary (length:u32 | kind:u8 | payload), not serde-JSON. Target for integration with a gateway / networking layer.
Context
- Files: new
src/wire/ submodule or feature-gated src/orderbook/wire.rs
- Worktest requirement: "binary wire protocol... real binary protocol you defined, not serde-JSON over HTTP"
- Integration point:
examples/wire_server.rs listening on TCP localhost:9999
- Non-functional: integer prices/qty only, no floats; explicit schema, no implicit type coercion
Acceptance criteria
Overview
Implement a binary wire protocol feature for order entry (NewOrder, Cancel, CancelReplace, MassCancel) with execution report and market-data (trade, book-update) responses. Protocol is little-endian framed binary (length:u32 | kind:u8 | payload), not serde-JSON. Target for integration with a gateway / networking layer.
Context
src/wire/submodule or feature-gatedsrc/orderbook/wire.rsexamples/wire_server.rslistening on TCP localhost:9999Acceptance criteria
cargo clippy --all-targets --all-features -- -D warningscleancargo fmt --all --checkcleancargo test --all-featurescleancargo build --release --all-featurescleandoc/wire.mdwith example hex dumpstest_wire_neworder_malformedrejects invalid bytes cleanlycargo run --example wire_client --all-featuresconnects, submits order, receives exec report