Skip to content

fix: preserve legacy IBKR cycle results without release receipts - #498

Merged
Pigbibi merged 1 commit into
mainfrom
fix/legacy-execution-receipt-20260908
Sep 8, 2026
Merged

fix: preserve legacy IBKR cycle results without release receipts#498
Pigbibi merged 1 commit into
mainfrom
fix/legacy-execution-receipt-20260908

Conversation

@Pigbibi

@Pigbibi Pigbibi commented Sep 8, 2026

Copy link
Copy Markdown
Collaborator

Legacy IBKR runtime targets have no strategy release identity. After a strategy cycle returned, the unconditional execution-receipt attachment rejected the missing revision, returned HTTP 500, and prevented the execution summary and reconciliation artifact path from being finalized.

Skip the optional receipt only when the runtime report explicitly identifies a legacy, unattested target with no release identity. Preserve the missing-evidence state and the original cycle result, including business failures. Attested invalid revisions and missing attestation still fail validation; broker execution, risk checks, dependency pins, and deployment configuration are unchanged.

Validation:

  • Four real-handler regression cases reproduced HTTP 500 before the fix, covering both affected profiles and successful/blocked results.
  • Focused request/receipt suite: 66 passed.
  • Full repository suite: 633 passed, 5 skipped.
  • Ruff, production startup validation, pinned-dependency consistency, lockfile check, and diff check passed.
  • Read-only deployment preflight passed for the five configured services, with no planned enablement, strategy-profile, dry-run, or force-run changes.

The handler regressions use an offline cycle double while retaining the actual report builder, receipt adapter, and HTTP handler. No live trading endpoint was invoked.

@Pigbibi
Pigbibi merged commit 3a86967 into main Sep 8, 2026
1 check passed
@Pigbibi
Pigbibi deleted the fix/legacy-execution-receipt-20260908 branch September 8, 2026 14:05
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.

1 participant