Files

15 lines
1.3 KiB
Markdown

# Executed context experiment
All input magnitudes are integer milliseconds. This tiny dialect is not Studio source.
| Variant | Initial lines | Initial bytes | Binding rows | Fixed-all edit removed/added lines | Threshold edit removed/added lines | Initial passing cases | After fixed-all change |
| --- | ---: | ---: | ---: | --- | --- | ---: | ---: |
| B-inline | 106 | 2281 | 62 | 3/3 | 3/3 | 4 | 1 |
| B-factored | 108 | 2781 | 62 | 3/3 | 2/2 | 4 | 1 |
| D-inline | 522 | 13241 | 480 | 21/21 | 21/21 | 4 | 1 |
| D-factored | 524 | 14026 | 480 | 21/21 | 2/2 | 4 | 1 |
Executed assertions: 218. All passed. Every accepted fixture was parsed, validated, rendered and parsed back with exact experiment AST equality. Rejected cases were checked separately.
Negative controls: D changing one repeated fixed input changes only that case; B evaluating inherited formulas against baseline inputs instead of effective case inputs gives 21,750 instead of case20's 23,175. A shallow B case copy is not frozen; factored D also needs its definition environment snapshotted. Clearing a B override restores its named baseline value, including an explicitly missing baseline. A deleted D binding row rejects. Baseline chains, recursive definitions and project captures inside pure functions reject.