You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The single authorized INT03 journey after Development release 31302328826 created bot 0d992b3b-496b-3d8f-9b66-101f538c97aa and automatic run 19d2ce6e-6e99-3810-818b-fac2a05eef54.
The public release-input API advertised and the release endpoint accepted:
execution policy development-official-backtest-2026-q3-v1, whose immutable artifact period is 2016-07-01..2026-07-01
The run row reports evaluation 2024-01-01..2024-02-01 and normalized initial cash 100000.00000000, but the worker schedules the immutable policy period and fails before replay:
CalendarCoverageError: 2016-07-01 is outside the pinned XNYS coverage 2024-01-01..2026-12-31
GET /api/v1/strategy-release-inputs returns independent executionPolicies and datasets arrays, which presents their Cartesian product as selectable even when no runtime can execute a pair. POST /api/v1/strategies/{id}/releases accepted this incompatible pair and committed a bot/run/outbox event.
The Backtest execution contract requires every referenced policy, period, manifest, and feature pin to be locked and mutually compatible before a Run or Outbox event is committed.
Acceptance
Represent or select only compatible release-input combinations; independent arrays must not imply invalid pairs.
Recheck compatibility transactionally on strategy release, including effective evaluation period, manifest period/resolution/schema, execution policy, pinned calendar coverage/version, and required feature-materialization coverage.
An incompatible request fails before bot/run/outbox creation with a stable user-safe error; no work message is published.
Add the exact Development tuple above as a regression.
Publish a versioned Development policy/dataset combination that is actually executable. Do not mutate the meaning of an already locked policy version.
Coordinate with Backtest-engine [A11] 계정 환경설정·동의·정책 버전 #83 so producer and consumer enforce the same window rule.
No second release/run, old-run redrive, DLQ action, worker/ASG change, or direct DB write was performed.
Production observation
The single authorized INT03 journey after Development release 31302328826 created bot
0d992b3b-496b-3d8f-9b66-101f538c97aaand automatic run19d2ce6e-6e99-3810-818b-fac2a05eef54.The public release-input API advertised and the release endpoint accepted:
development-official-backtest-2026-q3-v1, whose immutable artifact period is 2016-07-01..2026-07-017f7113c9-3b02-4098-97ec-0baa07e2b3b0, 2024-01-01..2024-02-01xnys-2024-2026:1.0.0, coverage 2024-01-01..2026-12-31The run row reports evaluation 2024-01-01..2024-02-01 and normalized initial cash
100000.00000000, but the worker schedules the immutable policy period and fails before replay:CalendarCoverageError: 2016-07-01 is outside the pinned XNYS coverage 2024-01-01..2026-12-31All five deliveries failed. Backtest-engine issue #83 records the consumer-side binding and terminal-classification defect:
Idea2Strategy/Idea2Strategy-backtest-engine#83
Producer-side contract gap
GET /api/v1/strategy-release-inputsreturns independentexecutionPoliciesanddatasetsarrays, which presents their Cartesian product as selectable even when no runtime can execute a pair.POST /api/v1/strategies/{id}/releasesaccepted this incompatible pair and committed a bot/run/outbox event.The Backtest execution contract requires every referenced policy, period, manifest, and feature pin to be locked and mutually compatible before a Run or Outbox event is committed.
Acceptance
No second release/run, old-run redrive, DLQ action, worker/ASG change, or direct DB write was performed.