You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Follow-up from the review of #2243. Test-only decomposition; no behavioural change. Filed rather than taken in that PR, for the reasons below.
What
packages/storage/test/system-record-next-state-v1.test.ts grew from 939 lines at the integration base to 1695 across the D5b stack. It now holds active derivation tests, terminal derivation tests, fork-resolution fixtures, replay helpers and long explanatory comments in one file.
Suggested direction, recorded from the review: split the terminal/quarantine derivation specs into focused test files and move the fork/quarantine construction helpers into packages/storage/test/helpers, keeping the same assertions and fixtures.
Context worth having before anyone acts on this
The growth is real and the numbers above are measured. But the "1k-line boundary" is a heuristic rather than a convention this package currently holds — six of the 70 storage test files exceed 1000 lines, and the largest, system-record-materializer-lifecycle-v1.test.ts at 3031 lines, is nearly double this one and predates this stack:
So applying a per-file limit to whichever file a PR happened to touch is arbitrary. If we want the boundary, it should be set once as a package-wide standard with the other five in scope; if we do not, this file is the second-largest of a set where large is currently normal. That decision is the actual work here, and it is larger than one file.
It is test-only, with zero behavioural effect, in a fourteen-commit stack at convergence with a full green CI run. Re-earning that for a file reorganisation with no behaviour change is a poor trade.
Unlike #2244, the evidence-chain argument is weak here and should not be used to justify the deferral: the source comments that cite tests do so by test name, and names survive a file move. This is a scheduling and standard-setting decision, not a risk one.
Follow-up from the review of #2243. Test-only decomposition; no behavioural change. Filed rather than taken in that PR, for the reasons below.
What
packages/storage/test/system-record-next-state-v1.test.tsgrew from 939 lines at the integration base to 1695 across the D5b stack. It now holds active derivation tests, terminal derivation tests, fork-resolution fixtures, replay helpers and long explanatory comments in one file.Suggested direction, recorded from the review: split the terminal/quarantine derivation specs into focused test files and move the fork/quarantine construction helpers into
packages/storage/test/helpers, keeping the same assertions and fixtures.Context worth having before anyone acts on this
The growth is real and the numbers above are measured. But the "1k-line boundary" is a heuristic rather than a convention this package currently holds — six of the 70 storage test files exceed 1000 lines, and the largest,
system-record-materializer-lifecycle-v1.test.tsat 3031 lines, is nearly double this one and predates this stack:So applying a per-file limit to whichever file a PR happened to touch is arbitrary. If we want the boundary, it should be set once as a package-wide standard with the other five in scope; if we do not, this file is the second-largest of a set where large is currently normal. That decision is the actual work here, and it is larger than one file.
Why it is not in #2243
Unlike #2244, the evidence-chain argument is weak here and should not be used to justify the deferral: the source comments that cite tests do so by test name, and names survive a file move. This is a scheduling and standard-setting decision, not a risk one.
Related: #2052 (umbrella), #2243, #2244.