Skip to content

fix: preserve calendar intent through model feed handoffs - #62

Merged
stefan-jansen merged 6 commits into
mainfrom
codex/fix-calendar-feed-handoff
Oct 18, 2026
Merged

stefan-jansen merged 6 commits into
mainfrom
codex/fix-calendar-feed-handoff

Conversation

@stefan-jansen

@stefan-jansen stefan-jansen commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Preserve calendar declarations from model predictions through forecast, signal, weight and context feed handoffs. Omitting calendar inherits the available declaration; explicit calendar=None disables it. Retain version-2 temporal fields and historical version-1 null-as-inheritance behavior, including the optional-dependency-free fallback.

Closes #61.

Require published Specs 0.2.0 for the integration extra and supported-minimum audit. Calendar selection remains separate from the portfolio model's explicit observation-based annualization factor. The integration guide describes the downstream compatibility requirement: a Backtest consumer supporting the version-2 temporal contract is required.

Verification:

  • Against the actual dependency-repaired main implementation with published Specs 0.2.0, the candidate integration regressions produce 18 failures and 28 passing controls. All 46 pass on the repaired implementation.
  • The combined candidate passes 466 source tests and 426 installed-wheel tests outside the source checkout, including a NumPy-only environment without Torch or Specs. Ruff, format, source and CI-script ty, coverage, strict MkDocs, package build, Twine and actionlint pass.
  • Forty actual Backtest DataFeed iteration cases pass with the earlier calendar wheel at 513e2db, published Specs 0.2.0 and the compatible Backtest candidate at 391cc8adac4461d8aeda70cfe166cbe4fe9094cf. They include a trained linear portfolio producer, declaration modes, weight/context handoffs, overnight timestamps, asset identities and every emitted value. This evidence covers the consumer boundary; it does not qualify a full Backtest engine or older releases.
  • Actual LSTM fit/predict workflows retain observation-scale Sharpe and weights across regular, weekend-spanning and irregular dates at annualization 252 and 365. Handoffs preserve their timestamps and explicit calendar disable.

At ab48eeb against merged main 3b7969c, all 33 applicable hosted checks pass, including source and installed-wheel platform matrices, dependency audit, strict documentation, Python 3.15 prerelease and MPS qualification. Two jobs skip under configured conditions, including the main-only CUDA/performance job. The complete source tree matches the locally qualified combined candidate.

AI assistance: Codex prepared, reviewed and verified the repair. No release or deployment is performed by this PR.

Base automatically changed from dependabot/uv/urllib3-2.8.0 to main October 18, 2026 01:11
@stefan-jansen
stefan-jansen marked this pull request as ready for review October 18, 2026 01:18
Copilot AI balanced review requested due to automatic review settings October 18, 2026 01:18

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@stefan-jansen
stefan-jansen merged commit 8814b25 into main Oct 18, 2026
35 checks passed
@stefan-jansen
stefan-jansen deleted the codex/fix-calendar-feed-handoff branch October 18, 2026 03:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Preserve calendar declaration intent through model-to-feed handoffs

2 participants