Skip to content

build: pin the corpus regeneration to codegen 1.5.0 (52101f9b) and move the corpus gitlink to e99bbd9 - #377

Merged
luisleo526 merged 2 commits into
mainfrom
ns31-engine
Oct 13, 2026
Merged

luisleo526 merged 2 commits into
mainfrom
ns31-engine

Conversation

@luisleo526

Copy link
Copy Markdown
Collaborator

Two commits. Rebased onto the corpus-gitlink pull request (NS-27) before it is opened for merge; it lands after that one.

  1. build: pin the corpus regeneration to codegen 1.5.0 (52101f9b): CODEGEN_COMMIT in scripts/regen_corpus_cpp.sh and the matching literal and message in scripts/test_regen_corpus_cpp_pin.py move from a4259656 to the codegen v1.5.0 commit 52101f9b7b540fece4493ddc7495451b6d85fc07. Two files, +3/-3. The runtime image pin is unchanged.
  2. corpus: move the gitlink to e99bbd9d (generated.cpp from codegen 1.5.0): the corpus gitlink moves to e99bbd9db257740d9c77db37a8567616627130bf and the # corpus line of scripts/corpus_parity_baseline.txt with it. The 312 baseline digests are unchanged.

The corpus change (2 commits on the NS-27 corpus head)

Evidence (AWS spot boxes)

  • Trades, in the pin round (engine b802cee over corpus b40aa8ec; b802ceec..2dbd72fb changes only tests and CI scripts, and the 312 generated.cpp compiled there at the new pin are byte-identical to the ones in this corpus): a fresh full sweep at the old pin and one at the new pin, same box, runtime, harness and feed, give byte-identical engine trade lists for 312 of 312 validation probes; both verifier headlines read excellent=311 anomaly=1. That round also ran the pin test and the idempotence check (both rc 0) with this exact pin edit.
  • With this engine (2dbd72f): the corpus bytes equal an independent new-pin regeneration of the final tree for 312 of 312 files; VERIFY=1 scripts/regen_corpus_cpp.sh over it reports 312 strategies, 0 drifted, 0 failed to transpile.
  • The engine's own scripts/check_corpus_parity.sh (full sweep) on this branch: corpus_trades_identity: 312 probes at corpus e99bbd9db257740d9c77db37a8567616627130bf — baseline match=312, moved=0, unrecorded=0, missing=0, schema violations=0; Verified 312 strategies — excellent=311, strong=0, moderate=0, weak=0, minimal=0, anomaly=1, engine_only=0, missing=0; "TradingView parity holds".

Landing

Lands after the NS-27 pull request. Together with the registry migration 0074_corpus_bundle_e99bbd9_codegen_52101f9.sql of the workflow repository (must land TOGETHER with this gitlink bump): apply it immediately before this pull request's engine gate run, never in a batch deploy, never early. The corpus branch is the same fast-forward-only branch as NS-27's.

🤖 Generated with Claude Code

luisleo526 and others added 2 commits October 13, 2026 07:00
Move CODEGEN_COMMIT in scripts/regen_corpus_cpp.sh and the matching literal
and message in scripts/test_regen_corpus_cpp_pin.py from codegen a4259656 to
the codegen v1.5.0 commit 52101f9b7b540fece4493ddc7495451b6d85fc07. The
runtime image pin is unchanged.

Measured on one AWS spot box (c5.4xlarge, engine b802cee, corpus b40aa8ec,
docker transpile path, the exact edit of this commit applied by the round):
- the old-pin control regeneration is clean (314 sources, 0 drifted);
- all 314 regenerated generated.cpp change (312 validation probes and the 2
  draft probes), 0 transpile failures;
- fresh sweep of the old pin versus fresh sweep of the new pin on the same
  box: the engine trade lists of 312 of 312 validation probes are
  byte-identical; both headlines read excellent=311 anomaly=1;
- the pin test and the VERIFY=1 idempotence check after regeneration pass.

The regenerated files are in the paired pineforge-corpus change. Every file
gains the same 321 lines, which were introduced by the codegen between the two pins:
the coded run stops (codegen #184), the checked strategy settings and C ABI
exception containment (#159), and the compiled-execution, confirmed-bar and
order-shapes receipts (#167, #173, #178). 6 to 116 further lines per file
are probe-specific.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Move the corpus gitlink from 9245f28a to e99bbd9db257740d9c77db37a8567616627130bf
and record it on the `# corpus` line of scripts/corpus_parity_baseline.txt. The
312 baseline digests do not change: the engine trade lists are byte-identical
(measured, below). Follows the pin commit of the same pull request.

The corpus change (the two commits on top of the removal/headers change) re-emits
all 312 validation generated.cpp with codegen 52101f9b7b540fece4493ddc7495451b6d85fc07
and re-derives the 60 generated_cpp_sha256 values of owned_strategies.json;
validation_run there still records the 2026-09-26 sweep.

Measured on AWS spot boxes:
- trades, in the pin round of the previous commit (engine b802cee, corpus
  b40aa8ec; b802cee..2dbd72f changes only tests and CI scripts, and the 312
  generated.cpp compiled there at the new pin are byte-identical to those in
  e99bbd9d): a fresh full sweep at the old pin and one at the new pin (same box,
  runtime, harness and feed) give byte-identical engine trade lists for 312 of 312
  validation probes; both verifier headlines read excellent=311 anomaly=1;
- with this engine (2dbd72f): the bytes in the corpus equal the new-pin
  regeneration of the final tree on a second box for 312 of 312 files, and
  VERIFY=1 scripts/regen_corpus_cpp.sh over the final tree reports 312 strategies,
  0 drifted, 0 failed to transpile.

Every generated.cpp gains the same 321 lines, which were introduced by the codegen
between the two pins: the coded run stops (codegen #184), the checked strategy settings and
C ABI exception containment (#159), and the compiled-execution, confirmed-bar and
order-shapes receipts (#167, #173, #178); 6 to 116 further lines per file are
probe-specific.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
@luisleo526
luisleo526 marked this pull request as ready for review October 13, 2026 03:11
@luisleo526
luisleo526 merged commit 2608ebd into main Oct 13, 2026
22 checks passed
luisleo526 added a commit that referenced this pull request Oct 14, 2026
* docs: the 1.6.0-rc.1 changelog entry

The changelog section for the first candidate of 1.6.0, tag v1.6.0-rc.1 on
commit 04607c1: the selected-window contract
revision 1.3 and the typed failures behind it (#388), finite trade and summary
doubles in every report writer (#384, #388), the favicon of the API
documentation (#355), the removed CI time limits and command-line options (#378),
and the tests, CI and benchmarks changes since 1.5.0 (#375, #376, #377, #382,
#383, #385, #386, #387).

The entry is inserted above the 1.5.0 section; no existing line changes. The
date is the UTC date of the tag.

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

* README: link the apex pineforge.dev, not the www host

The README header link pointed at https://www.pineforge.dev. The product site
lives at the apex, https://pineforge.dev; the www host is being redirected to
it, and search indexes both forms today. One link changed, nothing else.

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

* CHANGELOG: add the selected-window mode and typed failures to the 1.5.0 notes

Two things that are in the v1.5.0 tag were missing from its notes: the opt-in
selected-window mode with retained pre-roll bars (#363, already in
v1.5.0-rc.1) and the typed failures that docker/run_json.py raises for
exceptions from the selected-window helper modules (_typed_failure).

The new subsection "Additions to the 1.5.0 notes" only states what the code
and the #363 text say, with the same "development-only parity candidate"
limits (contract revision 1.3-parity, no claim of complete value-ownership
coverage, cannot be promoted to stable). It adds lines and changes none.

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

---------

Co-authored-by: Claude Sonnet 5.5 <[email protected]>
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