piker/plans/opencode
Gud Boi 8eb85ad99e Add strict clearing schemas and `OrderState`
Introduce frozen, tagged `msgspec.Struct` payloads alongside the
legacy clearing protocol. Separate startup, request, event and
final result phases, with strict directional Tractor receive sets
and local validation before typed objects enter state or transport.

The pure reducer preserves cancel-before-ack intent, correlates
account/request IDs across edits, deduplicates identified fills and
retains bounded terminal dialogs for late events. Snapshot copies
cannot mutate previously published requests or statuses.

Also,
- require owned accounts, positions and an open-order completion
  barrier before a backend session accepts requests;
- refresh the migration plan against current Piker and Tractor
  branches, preserving the installed dependency pin;
- add 65 offline schema/state/phase tests and eight real actor
  tests for typed traffic, rejection, race handling and bounded
  teardown.
- include AGPL headers and apply the Python style guide across
  protocol code and qualification fixtures.

Ruff and all 73 targeted tests pass on installed Tractor
`5c98ab1f`. Eight IPC tests also pass against local main `5cb600a8`
with its pytest plugin isolated from Piker's duplicate `--ll`
option. Production paper/live adapters and EMS/UI consumers migrate
in subsequent paired changes; no existing endpoint switches here.

(this patch was generated in some part by `codex` using
`gpt-6` (`openai`))
2026-10-05 04:00:45 -04:00
..
chart-local-gap-overlays.md Test gap dialogs through a real `tractor` actor 2026-08-17 19:11:03 -04:00
chart-local-gap-overlays.summary.md Test gap dialogs through a real `tractor` actor 2026-08-17 19:11:03 -04:00
gap-checker-backfiller-repair.md Plan gap-checker and backfiller repairs 2026-07-24 18:33:06 -04:00
known-fqme-backfill-qualification.md Plan known-FQME backfill qualification 2026-07-24 18:33:06 -04:00
pytest-qt-chart-ui-e2e.md Plan `pytest-qt` chart UI audit layers 2026-08-17 19:55:26 -04:00
repo-land-plan.md Plan repository-wide branch landing order 2026-08-18 12:47:30 -04:00
typed-ems-messaging.md Add strict clearing schemas and `OrderState` 2026-10-05 04:00:45 -04:00