Problem
The retained array and arithmetic optimizations push their direct rows below the comparison harness's 50 ms full-run publication floor. More importantly, the new guarded pure-recurrence tier makes the existing pure fib(24) row measure recurrence recognition/memoization instead of generic recursive function-call throughput.
Publishing that matrix unchanged would be technically reproducible but misleading.
Scope
- Keep both engines on the exact same
bench/comparison.jsbytes and invocation boundary. - Make every Fibonacci recursion observably execute without introducing shared cross-lane state or nondeterministic checksums.
- Prefer lane-local state so zig-js shared-realm rows remain deterministic.
- Increase only workload job counts whose fastest direct median falls below 50 ms.
- Preserve integer checksums and all symmetric runner/mode rules.
- Update benchmark docs/report/README with the revised workload definition and evidence.
Acceptance
- Harness validation passes.
- A quick matrix has stable, cross-engine-equal checksums in every mode/lane.
- One full seven-sample matrix passes the 50 ms floor for every direct row.
- The report clearly distinguishes the pure recurrence optimization from the observable recursive-call workload.