refactor(core): move state-fingerprint helpers to block_executor submodule#796
Conversation
…odule
Pure code motion, no behavior change: emit_apply_profile, emit_state_fingerprint, compute_state_fingerprint, StateComponents and state_components move out of the 3390-line block_executor.rs into block_executor/fingerprint.rs (continuing the existing block_executor/{evm,validate} split). These are debug/observability helpers gated behind SENTRIX_STATE_FINGERPRINT / SENTRIX_APPLY_PROFILE — they never feed consensus. state_components + StateComponents stay pub (re-exported, used by the bin's state command); the rest are pub(crate). Also un-scrambles the doc comments that had drifted above the wrong function. cargo check --workspace -D warnings clean; sentrix-core 273 tests pass (unchanged).
|
Warning Review limit reached
More reviews will be available in 8 minutes and 11 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (3)
✨ Finishing Touches🧪 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 |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
First step of breaking up the sentrix-core monolith (16k LOC) for debuggability, lowest-risk first: a pure module-split within the crate — zero crate boundary, so no serialization/API surface where a determinism bug could hide.
What moved
emit_apply_profile,emit_state_fingerprint,compute_state_fingerprint,StateComponents,state_components→block_executor/fingerprint.rs(continuing the existingblock_executor/{evm,validate}submodule pattern). All are debug/observability helpers gated behindSENTRIX_STATE_FINGERPRINT/SENTRIX_APPLY_PROFILE; they never feed consensus.Safety
state_components+StateComponentsstaypub(re-exported at the module path, used by the binstatecommand); the rest arepub(crate).Verification
cargo check --workspace -D warningsclean (bin re-export resolves).cargo test -p sentrix-core: 273 passed, 0 failed (unchanged from before the move).