Skip to content

attesting duties - #283

Open
ninaiiad wants to merge 1 commit into
ng/proposer-dutiesfrom
ng/att-duties
Open

ninaiiad wants to merge 1 commit into
ng/proposer-dutiesfrom
ng/att-duties

Conversation

@ninaiiad

Copy link
Copy Markdown
Collaborator

Stack created with GitHub Stacks CLIGive Feedback 💬

@ninaiiad
ninaiiad added this pull request to stack #285 September 18, 2026 13:20
/// block's inline `ensure_window` becomes a cache hit and every block's
/// `collect_sigs` gets the aggregate-subtract path.
pub(super) fn precompute_next_epoch_shuffling(&mut self, block_epoch: Epoch) {
pub(super) fn precompute_next_epoch_shuffling(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure that precompute is good place for passing producer as we call it also on replay during sync and there is no need to publish anything during that period. Can we move to a different place?

let head_epoch = self.slot_state_at(self.last_applied).slot / SLOTS_PER_EPOCH;
let producer = &mut self.events_producer;
self.shuffling_cache.post_fresh(head_epoch, |epoch, shuffling| {
shuffling.post(epoch, producer, |event| producers.produce(event))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we have less callbacks? From my understanding we can use producer as function argument, if there will be borrow check issues you can do let Self {producer, cache, ..} = self; cache.post(epoch, producer, producers)

/// Spec `compute_committee` over an epoch's shuffled active set: committee
/// `committee_index` of `slot` is a proportional slice, so sizes differ by at
/// most one and the committees of the epoch partition the set exactly.
pub fn committee_range(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like it used only in pub fn committee(&self, slot: Slot, committee_index: usize) might be we can keep it where it was before?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants