Constants

This commit is contained in:
Eitan Seri-Levi
2026-04-30 13:49:26 +02:00
parent 12d31dbfbf
commit 7918dc2a0d
3 changed files with 13 additions and 6 deletions

View File

@@ -49,14 +49,13 @@ impl<T: BeaconChainTypes> GossipVerifiedInclusionList<T> {
.now()
.ok_or(BeaconChainError::UnableToReadSlot)?;
// TODO(focil) move 8192 to config
if signed_il
.message
.transactions
.iter()
.map(|v| v.len())
.sum::<usize>()
> 8192
> chain.spec.max_bytes_per_inclusion_list as usize
{
return Err(GossipInclusionListError::TooManyTransactions);
}
@@ -124,10 +123,9 @@ impl<T: BeaconChainTypes> GossipVerifiedInclusionList<T> {
return Err(GossipInclusionListError::PriorInclusionListKnown);
}
// Compute timeliness: timely if received before INCLUSION_LIST_DUE_BPS into the slot
// INCLUSION_LIST_DUE_BPS = 6667 basis points = 66.67% of slot duration
let slot_duration_ms = chain.spec.get_slot_duration().as_millis() as u64;
let inclusion_list_due_ms = slot_duration_ms * 6667 / 10000;
let inclusion_list_due_ms =
slot_duration_ms * chain.spec.inclusion_list_due_bps / 10000;
let il_delay_ms =
get_slot_delay_ms(timestamp_now(), message_slot, &chain.slot_clock).as_millis() as u64;
let is_timely = il_delay_ms <= inclusion_list_due_ms;

View File

@@ -235,6 +235,9 @@ pub struct ChainSpec {
*/
pub domain_inclusion_list_committee: u32,
pub inclusion_list_committee_size: u64,
pub max_bytes_per_inclusion_list: u64,
pub max_request_inclusion_list: u64,
pub inclusion_list_due_bps: u64,
/*
* Fulu hard fork params
@@ -1292,6 +1295,9 @@ impl ChainSpec {
*/
domain_inclusion_list_committee: 12,
inclusion_list_committee_size: 16,
max_bytes_per_inclusion_list: 8192,
max_request_inclusion_list: 16,
inclusion_list_due_bps: 6667,
/*
* Fulu hard fork params
@@ -1730,6 +1736,9 @@ impl ChainSpec {
*/
domain_inclusion_list_committee: 12,
inclusion_list_committee_size: 16,
max_bytes_per_inclusion_list: 8192,
max_request_inclusion_list: 16,
inclusion_list_due_bps: 6667,
/*
* Fulu hard fork params

View File

@@ -274,7 +274,7 @@ impl<S: ValidatorStore + 'static, T: SlotClock + 'static> InclusionListService<S
for transaction in inclusion_list_transactions.into_iter() {
total_bytes += transaction.len();
if total_bytes <= 8192 {
if total_bytes <= self.chain_spec.max_bytes_per_inclusion_list as usize {
trimmed_il.push(transaction);
}
}