diff --git a/.taken/current.org b/.taken/current.org index b791743d..8ac56ea2 100644 --- a/.taken/current.org +++ b/.taken/current.org @@ -424,3 +424,46 @@ refresh under the selected cadence, including gaps, replay and cancellation. +** TODO migrate clearing to strict typed messaging +:PROPERTIES: +:ID: piker-typed-clearing-migration +:CREATED: [2026-10-06] +:CARRIED: 0 +:REPO: /home/goodboy/repos/piker +:AI_HARNESS: codex +:AI_WORKTREE: /home/goodboy/repos/piker/wkts/typed_clearing_protocol +:AI_BRANCH: wkt/typed_clearing_protocol +:END: +[[file:/home/goodboy/repos/piker/wkts/typed_clearing_protocol/plans/opencode/typed-ems-messaging.md::823][Migration plan and commit boundaries]] + +Foundation evidence: plan commit 1793b47c and implementation commit +7fee9b86; human reports both pushed. Strict schemas, validation, +directional stream helpers and the pure OrderState reducer are +implemented. Prior qualification: 65 offline tests and eight IPC +tests passed. Production endpoints still use the legacy protocol. + +- [ ] Port paper and its paired EMS consumer together. + * [ ] Typed startup, requests, events and open-order completion. + * [ ] Deterministic synthetic ticks and distinct execution IDs. +- [ ] Port Binance, Kraken and IB individually with paired EMS handling. + * [ ] Shared offline conformance and provider translation fixtures. + * [ ] Preserve execution identity, signed positions and account mapping. +- [ ] Integrate OrderState into EMS routing and broker-event handling. + * [ ] Bound pre-ack buffering by age in its asynchronous owner. + * [ ] Preserve cancel intent, fill deduplication and late-event handling. +- [ ] Migrate client/EMS startup, local queues and UI consumers together. + * [ ] Replace wire snapshot mutation and dictionary reconstruction. +- [ ] Enforce each migrated endpoint pair with Tractor payload specs. + * [ ] Narrow receive sets; validate startup, RPC arguments and results. + * [ ] Reject malformed, wrong-direction and wrong-phase messages. +- [ ] Qualify real adapter and actor behavior offline. + * [ ] Cancel-before-ack; early, duplicate and late fills. + * [ ] Empty/populated startup snapshots and two-client order isolation. + * [ ] Abrupt transport EOF, cancellation and bounded failure teardown. + * [ ] Repeated lifecycle tests under supported spawn methods. +- [ ] Resolve the duplicate pytest --ll option before a Tractor pin upgrade. +- [ ] Document the position-broadcast isolation limitation and policy. +- [ ] Remove legacy IPC paths after all paired migrations qualify. +- [ ] Propose a reviewable commit plan for each qualified implementation. + +