Summary
Extend oath-adapter-ibkr with the Client Portal API v1 (cpapi) order write path as a pure wire layer — the second IBKR adapter slice, following the read path (#127/#129/#131).
Scope
- Request DTOs (crate's first
Serialize direction): OrderRequest, PlaceOrderRequest, ReplyConfirm.
- Response DTOs:
OrderPlaceReply (the place/reply union, one all-optional struct), CancelResponse, OrderStatus, LiveOrders/LiveOrder.
Endpoint descriptors: place / reply-confirm / cancel / order-status / live-orders (adds Method::Delete).
- Harness: extend
just ibkr-capture to drive the real place → confirm → cancel dance and capture sanitized fixtures.
- Gated
#[ignore] live round-trip test.
Non-goals (pure-wire boundary)
No transport, no auth, no OATH-domain translation, no order-safety semantics — ADR-0022 / ADR-0026 stay untouched (the read-path spec deferred writes over exactly this coupling; the wire subset sidesteps it). Order modify deferred as YAGNI.
Design / plan
- Spec:
docs/superpowers/specs/2026-07-11-ibkr-cpapi-writepath-wire-design.md
- Plan:
docs/superpowers/plans/2026-07-11-ibkr-cpapi-writepath-wire.md
Branch: feat/ibkr-cpapi-writepath.
Summary
Extend
oath-adapter-ibkrwith the Client Portal API v1 (cpapi) order write path as a pure wire layer — the second IBKR adapter slice, following the read path (#127/#129/#131).Scope
Serializedirection):OrderRequest,PlaceOrderRequest,ReplyConfirm.OrderPlaceReply(the place/reply union, one all-optional struct),CancelResponse,OrderStatus,LiveOrders/LiveOrder.Endpointdescriptors: place / reply-confirm / cancel / order-status / live-orders (addsMethod::Delete).just ibkr-captureto drive the real place → confirm → cancel dance and capture sanitized fixtures.#[ignore]live round-trip test.Non-goals (pure-wire boundary)
No transport, no auth, no OATH-domain translation, no order-safety semantics — ADR-0022 / ADR-0026 stay untouched (the read-path spec deferred writes over exactly this coupling; the wire subset sidesteps it). Order modify deferred as YAGNI.
Design / plan
docs/superpowers/specs/2026-07-11-ibkr-cpapi-writepath-wire-design.mddocs/superpowers/plans/2026-07-11-ibkr-cpapi-writepath-wire.mdBranch:
feat/ibkr-cpapi-writepath.