diff --git a/docs/selection-risk-plan-performance-20260914.md b/docs/selection-risk-plan-performance-20260914.md index e9f91c4..a400881 100644 --- a/docs/selection-risk-plan-performance-20260914.md +++ b/docs/selection-risk-plan-performance-20260914.md @@ -2,7 +2,8 @@ ## Status -Candidate tested, not deployed. The change removes selection calls that have +Published to Backtest in the combined 665653c/501f6d0 release described below. +The change removes selection calls that have no possible effect under the current frozen policy. It does not disable any configured rule, execution-day check or strategy expression. Engine time falls slightly in the measured cases; this is not the solution to the main remaining @@ -11,9 +12,9 @@ data construction cost and is not a general whole-backtest speedup claim. The independent [intraday-clock counterexample](intraday-clock-causality-20260914.md) was subsequently resolved by business-main work and published in the clock and 81acc54 callback releases. That correction is not attributed to this candidate. -Current published Backtest uses e81bf47/81acc54; the measurements below retain -their earlier c98 baseline. Complete manual-replay integration and publication -of this performance candidate remain open. Source d5b682c6 remains frozen; +Current published Backtest uses 501f6d0/665653c; the measurements below retain +their earlier c98 baseline. Complete manual-replay integration remains open. +Source d5b682c6 remains frozen; research and signal work stay paused. No trading operation was submitted. ## Evidence Leading to the Change @@ -112,9 +113,10 @@ Prioritize direct typed-column reuse during daily snapshot and DataSet construction; approximately five seconds of preparation remain in these warm cases. Do not skip normalization, NULL, adjustment or date/uniqueness checks. Source cold-query and contract-validation latency remain separate tasks under -the Source freeze. The earlier cache-boundary candidate still needs its missing -cold/same-window acceptance, and this combined candidate has no HTTP publication -gate yet. Financial PIT, minute-clock behavior, signal lifecycle and UI factor +the Source freeze. The cache-boundary candidate later passed its conditional +cross-window/full-input gate and the combination passed daily HTTP publication; +neither establishes cold or universal performance. Financial PIT, broader minute +behavior, signal lifecycle and UI factor condition acceptance are not claimed complete. - Candidate engine: d2aa16a2f0064297d0d8c931060646d66422e9d4. @@ -126,3 +128,19 @@ condition acceptance are not claimed complete. - HTTP diagnostic: /srv/fidc/canonical/run/research/http-phase-profile-20260914. [Verified acceptance summary](evidence/selection-risk-plan-20260914/acceptance.json). + +## Combined Release + +After merging engine 665653c, 860 core / 448 runner / 119 API tests and six +additional new-process replays passed. The guarded official workflow deployed +Backtest only, then nine HTTP runs matched their respective canonical/store +baselines. A multi-strategy sequence proved actual immutable DataSet hit counts +0/1/2/3/4 with distinct strategy results and repeatable trend results. Default +90-day cleared-DataSet HTTP mean 13.646 before versus 13.740 seconds after does +not demonstrate a general latency gain. + +The active root /srv/fidc/canonical/build/factor-reserve-20260913 is protected +from reuse/cleanup. Source, paused research, trading services and all execution +permissions remain unchanged. This does not activate the manual-replay module. +Actual identities, timings and evidence are maintained in +`/Users/boris/WorkSpace/fidc-backtest-service/docs/cache-boundary-planning-performance-20260914.md`. diff --git a/docs/series-column-storage-performance-20260914.md b/docs/series-column-storage-performance-20260914.md index e44d927..bdc98cb 100644 --- a/docs/series-column-storage-performance-20260914.md +++ b/docs/series-column-storage-performance-20260914.md @@ -8,9 +8,10 @@ passed 857 core, 448 runner and 119 API tests, six long reference replays and three additional strategy replays; see `/Users/boris/WorkSpace/fidc-backtest-service/docs/arrow-factor-scratch-rejection-20260914.md`. The scratch candidate from that experiment was removed. Series storage is -still not deployed; existing measurements below retain their original versions. +now published to Backtest only in the combined 665653c/501f6d0 release below; +existing measurements retain their original versions. -Candidate not deployed. Twelve real long replays preserve their independent +The original twelve real long replays preserve their independent business baselines and reduce peak RSS by about 9.5%. Construction latency is mixed, including a reversed pair where the control is faster. This is accepted as evidence of a smaller working set, not as a proved general speedup or closure @@ -114,8 +115,9 @@ compact verified summary is stored here to avoid duplicating input inventories. Do not publish this as the main performance fix. Next, target the remaining daily snapshot/factor construction and direct typed-column reuse, avoiding new per-access branches or post-hoc compression passes. Cold-query acceptance, -real minute-mode acceptance and HTTP publication remain outstanding for this -storage candidate. The original clock issue was fixed by subsequent business +real minute-mode acceptance remain outstanding for this storage change. The +combined version subsequently passed daily HTTP publication below. The original +clock issue was fixed by subsequent business work, not this experiment. Signal lifecycle, financial PIT and UI factor conditions remain outside this completed storage experiment. @@ -126,3 +128,20 @@ remain outside this completed storage experiment. - Evidence: /srv/fidc/canonical/run/research/series-column-storage-20260914. [Verified summary](evidence/series-column-storage-20260914/acceptance.json). + +## Combined Release + +Engine 665653c / service 501f6d0 passed 860 core, 448 runner and 119 API tests, +six additional independent-process replays and nine post-publication HTTP runs. +Complete canonical/store results remain equal to each strategy's own baseline. +An adjacent original/new rotation pair measures 15.279/14.579 seconds and +6,923,640/6,369,900 KiB peak RSS, but the default-window HTTP means are essentially +unchanged (13.646/13.740 seconds). Reduced memory and conditional cross-window +reuse are not promoted to a universal latency improvement. + +The official Backtest-only publication preserves Source d5, paused research, +trading services and execution permissions. Its active build root +/srv/fidc/canonical/build/factor-reserve-20260913 must not be overwritten or +reused. Shared DataSet acceptance proves input reuse while distinct strategies +execute independently; no results are cached. Identities and original receipts: +`/Users/boris/WorkSpace/fidc-backtest-service/docs/cache-boundary-planning-performance-20260914.md`.