piker/ai/prompt-io/codex/20260924T165757Z_1da9b760_p...

2.0 KiB

Prompt

Document and test the existing null-segment repair, including its flat-bar fallback, while distinguishing packed timestamp gaps.

Response summary

Documented SHM-only repair, provider placement assumptions, fallback fields, notifications, and concurrency limits. Added boundary and no-history coverage and fixed epoch-dependent comparison tolerance which could synthesize a duplicate timestamp at the right margin.

Files changed

  • piker/tsp/_history.py: helper contract and absolute tolerance.
  • tests/test_history_backfill.py: four additional parameter/case runs.

Human edits

The human identified cancellation as a source of stored gaps, correctly described packed indexes and insertion costs, pointed to maybe_fill_null_segments(), and requested immediate documentation and tests. No direct source edits observed during this change; the patch remains uncommitted for review.

Close-copy factoring follow-up

The human requested stronger internal types, a reusable close-copy helper, searchable comments for copying close and synthesizing stamps, and research into historical venue closure queries. Extracted _copy_close_to_null_rows(), preserving non-OHLC fields and rejecting occupied slots before mutation. Added explicit callback, array, segment-index and date annotations. Preserved the existing provenance TODO and suggested avoiding volume sentinels. Four helper cases cover successful fill and unchanged rejected inputs. Backfill suite: 19 passed in 2.01s; Ruff and diff check pass.

IB documents historical SCHEDULE requests separately from contract hours. The installed ib_async exposes reqHistoricalScheduleAsync. No live schedule request or venue behavior change was performed. Source: https://interactivebrokers.github.io/tws-api/historical_bars.html