Skip to content

Commit a8bc280

Browse files
tcoratgerclaude
andcommitted
docs(testing): trim the block-builder pool-seeding comment to its load-bearing reason
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent e3f94e8 commit a8bc280

1 file changed

Lines changed: 3 additions & 8 deletions

File tree

packages/testing/src/consensus_testing/test_types/block_spec.py

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -418,14 +418,9 @@ def build_signed_block_with_store(
418418
parent_state, block_registry, key_manager
419419
)
420420

421-
# Seed the aggregator's signature pool directly from the already-signed votes.
422-
# A proposer includes attestations it collected earlier, not fresh gossip.
423-
# The real block-import path never gossip-validates block-carried attestations.
424-
# It verifies their proofs and runs the state transition instead.
425-
# Routing these votes through the gossip admission guard would wrongly reject a
426-
# legitimately-includable vote whose head no longer descends from the finalized block.
427-
# Each vote here was signed by the builder itself, so it is valid by construction.
428-
# Existing pool entries are preserved, mirroring how gossip merges into the pool.
421+
# The real block-import path does not gossip-validate block-carried attestations.
422+
# So seed the signature pool directly instead of routing through the gossip admission guard.
423+
# That guard would wrongly reject a legitimately-includable vote whose head is now stale.
429424
grouped_signatures: dict[AttestationData, set[AttestationSignatureEntry]] = {
430425
existing_data: set(existing_signatures)
431426
for existing_data, existing_signatures in store.attestation_signatures.items()

0 commit comments

Comments
 (0)