Skip to content

docs/design: report channel contract - #613

Closed
luisleo526 wants to merge 1 commit into
mainfrom
docs/report-channel-contract
Closed

luisleo526 wants to merge 1 commit into
mainfrom
docs/report-channel-contract

Conversation

@luisleo526

Copy link
Copy Markdown
Collaborator

Docs only. Adds docs/design/report-channel.md, the contract for the dedicated report channel: how the billed report is kept separate from strategy stdout/stderr, with requirements R01-R26, the tests that prove each, and the cited source lines.

Replaces #602 as one commit, with citations by file and symbol (no line numbers).

🤖 Generated with Claude Code

Design contract for a dedicated report channel, a bounded diagnostic channel
and a trusted terminal status at the hosting boundary: byte budgets and their
zero semantics, failure modes, outside-in acceptance tests, host and engine
conformance checklists, and implementation notes. Docs only; no behaviour
change.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
@luisleo526

Copy link
Copy Markdown
Collaborator Author

Folded into #632, the combined 1.8.0 batch-2 pull request. The branch is kept.

@luisleo526 luisleo526 closed this Oct 29, 2026
luisleo526 added a commit that referenced this pull request Oct 29, 2026
…ion, metrics-only mode (#632)

Combined second batch for 1.8.0. Each member was reviewed and proven on its own branch; this branch merges them onto main and is verified as one tree.

## Members (merged in this order)

- Keep a reversal's newly credited opening when its entry id had opposite-side history (fixes wrong positions, uncapped pyramiding and missing closed-trade rows after a reversal on a reused entry id; affected releases v1.1.0 through v1.7.0).
- Window buffers for technical-analysis series kept on main.
- Report channel contract and hosting jail budget contract (docs; #613, #614).
- Annualization diagnostic uses the engine's initial capital on every report path.
- Opt-in report replay companion (#607).
- Metrics-only run mode (#630).
- Comment-only rewording of shipped source comments.
- Source clones skip the in-repo `.ccache` directory, so a whole-tree copy no longer races a running compile.
- In-process iteration of the default-path report columns: `report["trades"]` and `report["equity_curve"]` iterate lazily from the report spool again, report their length and support integer indexing; iteration must happen before the report's resources close.
- CHANGELOG entries for the above, and re-pointed source-line citations in two documentation pages (line numbers only).
- The report-sink trade-identity test reference is re-recorded: the reversal fix changes the per-bar state hash input (open-position bookkeeping), while no trade or equity row changes; the CHANGELOG says so.

## Not in this batch

The live runner's report checkpoints (#598) and report accumulator (#617) move to the next minor release: testing showed a timing case that can leave a delivered order unacknowledged and a crash for modules whose handle is not an engine. Their pull requests stay open as drafts.

## Verification

- Native live suite (all native shards, thread and address sanitizer legs) on this tree's code.
- Full verify and the corpus parity sweep on this exact head.
- Every member was reviewed independently before it was merged here.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
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