apollo_consensus_orchestrator: send only the commitment-info delta the recorder is missing#14667
apollo_consensus_orchestrator: send only the commitment-info delta the recorder is missing#14667itamar-starkware wants to merge 1 commit into
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
8b9907f to
3c75039
Compare
yoavGrs
left a comment
There was a problem hiding this comment.
@yoavGrs made 1 comment.
Reviewable status: 0 of 4 files reviewed, 1 unresolved discussion (waiting on itamar-starkware).
a discussion (no related file):
Block until we have the Python side.
yoavGrs
left a comment
There was a problem hiding this comment.
@yoavGrs made 1 comment.
Reviewable status: 0 of 4 files reviewed, 2 unresolved discussions (waiting on itamar-starkware).
crates/apollo_consensus_orchestrator/src/sequencer_consensus_context.rs line 706 at r1 (raw file):
); // Send only the delta the recorder hasn't stored yet, bounded above by the fixed window. let fixed_window_lowest_height = height.0.saturating_sub(N_BLOCK_HASHES_BACK_IN_BLOB);
- If
cende_height == lowest_height: validate the batcher has commitment infos for this height. - Do it BEFORE decision_reached in the batcher.
…e recorder is missing Query the recorder's get_last_stored_commitment_height and bound collect_recent_state_commitment_infos' lower end to max(height - N, last_stored + 1), so the blob carries only the commitment infos the recorder has not stored yet instead of the full fixed window. Falls back to the full window when the query fails/returns nothing, so correctness never depends on the optimization. os_input-gated. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3c75039 to
7c7370f
Compare
PR SummaryMedium Risk Overview
Tests cover delta-only collection, single-block when caught up, window cap, query failure fallback, and empty delta when the recorder is already at the current height; default mocks return Reviewed by Cursor Bugbot for commit 7c7370f. Bugbot is set up for automated code reviews on this repo. Configure here. |

Query the recorder's get_last_stored_commitment_height and bound collect_recent_state_commitment_infos' lower end to max(height - N, last_stored + 1), so the blob carries only the commitment infos the recorder has not stored yet instead of the full fixed window. Falls back to the full window when the query fails/returns nothing, so correctness never depends on the optimization. os_input-gated.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com