996102e0
Korthals protocol-v2 memory-bounded source intake
Scope
This change is an endpoint-blind execution-topology hardening only. It does not change the Korthals protocol-v2 scientific specification, source cohort, author exclusion, blink handling, 50-Hz sampling rule, validation mapping, AOI geometry, matched-cell definition, missingness rule, Monte Carlo settings, or interpretation rule.
Trigger
korthals-source-freeze run 34717445222 was executed on certified main
59350945f4d68fd074f34aca2be59f072e2862bb. Both attempt 1 (job 103617111619)
and attempt 2 (job 103619126663) successfully completed the checksum-verified
112-file OSF transfer and were then terminated by a GitHub-hosted runner shutdown
signal while the endpoint-blind source-intake step was still preprocessing
participants. No source-freeze artifact was uploaded in either attempt, and no
scientific AOI endpoint, Monte Carlo result, effect estimate, sign probability, or
classification was executed or inspected.
The workflow itself already declared timeout-minutes: 180, so the observed shutdown
was not the repository’s configured job timeout. The pre-existing intake retained each
participant’s full-resolution canonical aligned table until every participant had been
preprocessed and only then reduced the combined source to the frozen 50-Hz
representation. That topology creates unnecessary peak memory pressure even though the
protocol-v2 preparation operations are participant-separable.
Hardening
The controlled CLI now uses a memory-bounded companion intake:
- discover and checksum the same complete published source tree;
- process participants in the same deterministic source-manifest order;
- for one participant at a time, run the unchanged companion
Participant+OriginalPreprocessorpath, lexical participant-identity validation, exact target-master alignment, tutorial scoping, raw validation extraction, and the unchanged protocol-v2 preparation; - retain only that participant’s already-frozen 50-Hz prepared rows and validation groups before releasing its full-resolution companion state;
- deterministically combine participant-local prepared objects and reconstruct the same global source identity, participant/trial fingerprints, zero-finite-trial records, and symmetric missing-cell records; and
- validate global endpoint-weight structure without evaluating AOI membership or any scientific endpoint.
A synthetic regression test compares the streamed participant-wise result directly against monolithic protocol-v2 preparation, including the prepared data frame, validation-group frame, and complete source-identity object. The fixture includes a zero-finite trial so the protocol-v2 symmetric matched-cell removal is exercised in the equivalence test.
Scientific boundary
The protocol-v2 fingerprint remains
1cd4150c9341db145b8f6aee544f9634c67c46116e61e7e675ae3c50282d2d55.
No protocol JSON is modified. No missing gaze is recovered or interpolated. No target
scientific outcome has been evaluated or inspected.