Skip to content

feat(research): persist trial outcomes and daily ledger - #636

Merged
Pigbibi merged 1 commit into
mainfrom
qsl/trial-ledger-contract-20260924
Sep 24, 2026
Merged

Pigbibi merged 1 commit into
mainfrom
qsl/trial-ledger-contract-20260924

Conversation

@Pigbibi

@Pigbibi Pigbibi commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

Scope

Implements the next research foundation from the system review (§9.15.66–68, T09/U01–U03) and architecture (§5, B.2, B.4, B.8): independent trial outcome records and a daily cash/holdings/fees/NAV ledger. Failed, rejected, and aborted trials remain separate from ordinary performance results. A successful trial links to an existing BacktestResult by exact run and version identity.

The store uses create-only writes for trial start, terminal outcome, and ledger records. Cloud storage is authoritative when configured; local storage is used only without a cloud bucket. Existing performance result and promotion keys are unchanged.

Verification

  • Targeted synthetic/local regression: 81 passed, 33 subtests passed.
  • Ruff on the three changed files: passed.
  • git diff --check and staged diff check: passed.
  • Independent contract review issues were addressed before submission.

Boundary

This PR establishes the shared storage contract only. It does not update the UES consumer or its pinned QPK dependency. The checks use synthetic and fake local/cloud adapters; they do not prove real cloud persistence, optimized live strategy identity, point-in-time plugin data, real trading costs, or portfolio performance. No promotion, paper/live activation, deployment, configuration change, or trading is included. Keep this PR in draft until the contract is reviewed.

Co-Authored-By: Codex <noreply@openai.com>
@Pigbibi
Pigbibi marked this pull request as ready for review September 24, 2026 02:02
@Pigbibi
Pigbibi merged commit c3dcf47 into main Sep 24, 2026
1 check passed
@Pigbibi
Pigbibi deleted the qsl/trial-ledger-contract-20260924 branch September 24, 2026 02:03
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