feat(bench): RFC 0031 §7 — M_L2 unfrozen and asserting per RFC 0033 (run #21) - #528
Conversation
…run #21) The §7 deferral's named condition is met: RFC 0033's v2 compressed template map merged (#522) and comparative run #21 measured every pair warm at 187,904 B acquisition vs the 513,862 B fold (§9.15). M_L2 freezes per channel, derived from the run record: - processed (primary): M_L2 = 10 — measured 32.5–39.3× across §9.13 runs #10–#17, 37.3–45.1× on the post-artifact total. - storage-side: a 1.1× floor, integer-exact as ourios × 11 ≤ loki_storage × 10 (m_l2_storage_floor_tenths = 11). The post-artifact honest total (0 + 2,035,267 + 187,904 = 2,223,171 B) computes to 1.20–1.51× against the recorded Loki storage band; 1.1 sits below the weakest point with margin for Loki's documented chunk-boundary wobble. A parity-plus floor, not a 10× claim — the write-side lever stays recorded, not chased. Harness: frozen_gate_failures() gates the L2 pair on both channels in the existing salvage ordering; scenario RFC0031.3 un-stubs green in the .2/.4 style (boundary math + record-derived evidence, including the pre-artifact total correctly failing the floor). The RFC 0033 §5.6 corpus acquisition gate (warm ≤ fold/2 when a warm pair exists) also asserts in the dispatch run — fold from a cold pair when one exists, one off-timed-path refold in the all-warm steady state, loudly non-evaluable on refold failure. bytes_must_win_tenths carries the sub-integer floor with the lgates honesty guards (zero ⇒ Invalid, overflow fails closed on the correct side), unit-tested at the boundaries. M_L4 and F_L7 deferrals are untouched. Merge is gated on a fresh dispatch (run #23) from this branch proving the new assertions pass. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WQY9wfrfRggqSpMLH8Xj3Y
📝 WalkthroughWalkthroughThe PR adds tenths-based L2 storage gating, freezes the L2 processed and storage-side thresholds, enables RFC0031.3, and integrates RFC0033.6 template-map acquisition validation into comparative runs. ChangesComparative gating
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant ComparativeRun
participant FrozenGates
participant TenthsGate
participant AcquisitionGate
participant GateFailures
ComparativeRun->>FrozenGates: evaluate L2 pair
FrozenGates->>TenthsGate: check storage-side floor
TenthsGate-->>FrozenGates: return outcome
ComparativeRun->>AcquisitionGate: compare warm artifact and cold fold bytes
FrozenGates->>GateFailures: add L2 failures
AcquisitionGate->>GateFailures: add acquisition failure when decisive
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR updates the RFC 0031 comparative-benchmark harness and documentation to reflect that L2 (M_L2) is no longer deferred: it is now frozen and asserted (processed-channel must-win at M_L2 = 10, plus a storage-side parity-plus floor of 1.1× expressed as m_l2_storage_floor_tenths = 11). It also adds an asserting check for the RFC 0033 §5.6 corpus acquisition gate (warm × 2 ≤ fold) when any pair runs warm.
Changes:
- Un-stubs Scenario RFC0031.3 and pins/asserts the new frozen L2 processed + storage-floor gates.
- Adds
bytes_must_win_tenthsand the frozen marginm_l2_storage_floor_tenthsto support integer-exact sub-integer gate math. - Adds a dispatch-run assertion for the RFC0033.6 acquisition condition when warm measurements exist.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| docs/rfcs/0031-comparative-evaluation-loki.md | Documents the M_L2 unfreeze/freeze decision and the new processed + storage-floor frozen values. |
| crates/ourios-bench/tests/rfc0031_comparative.rs | Un-ignores RFC0031.3, adds L2 dual-channel gating, and asserts the RFC0033.6 acquisition gate in the dispatch run. |
| crates/ourios-bench/src/lib.rs | Re-exports the new bytes_must_win_tenths helper. |
| crates/ourios-bench/src/lgates.rs | Introduces m_l2_storage_floor_tenths and bytes_must_win_tenths with unit tests. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
What
RFC 0031 §7:
M_L2unfrozen and asserting, per its named condition — the RFC 0033 cached template map landed (#522) and was measured (run #21: every pair warm at 187,904 B acquisition).Frozen values, derived from the record and set below the weakest measurement (the existing freeze discipline):
M_L2 = 10. Measured 32.5–39.3× across runs feat(miner): add mask() — RFC 0001 §6.2 step 2 #10–feat(miner): add Drain prefix tree skeleton (RFC 0001 §6.2 step 3) #17 pre-artifact; 37.3–45.1× recomputed on the post-artifact totals.ourios × 11 ≤ loki_storage × 10). Post-artifact severity total = 2,223,171 B (0 + 2,035,267 + 187,904) against the recorded Loki storage band computes 1.20–1.51×; 1.1 sits below the weakest point with wobble margin. The amendment says plainly this is a parity-plus floor, not a 10× claim — write-side sizing remains the recorded, un-chased lever.Also asserting from this slice:
print_pair_bytes_gatesrelabels L2 PRIMARY/FROZEN; newbytes_must_win_tenthsinlgates.rswith boundary/overflow/zero unit tests.✅ Measured — run #23 (29353634499), exit 0
First run with every new assertion live, all PASS:
⚠️ HOLD — measure before merge(discharged)Comparative dispatch run #23 from this branch must pass with the new assertions live (the #506/run-#19 precedent). Numbers land here before merge.
Checks run
cargo fmt --all --check; workspacecargo clippy --all-targets --all-features -- -D warnings;cargo nextest run -p ourios-bench(149 passed, RFC0031.3 running green);mdbook buildclean.🤖 Generated with Claude Code
https://claude.ai/code/session_01WQY9wfrfRggqSpMLH8Xj3Y
Summary by CodeRabbit
New Features
Bug Fixes
Documentation