From 87888792986b702bcac127c9e610d5b515bac9b6 Mon Sep 17 00:00:00 2001 From: g11tech Date: Tue, 20 Jun 2023 22:18:41 +0530 Subject: [PATCH 1/3] Update EIP-1: allow multi file commit urls Merged by EIP-Bot. --- EIPS/eip-1.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/EIPS/eip-1.md b/EIPS/eip-1.md index ebec1036d1bf5..e55c0351830a1 100644 --- a/EIPS/eip-1.md +++ b/EIPS/eip-1.md @@ -213,7 +213,7 @@ Which renders to: Permitted Execution Client Specifications URLs must anchor to a specific commit, and so must match this regular expression: ```regex -^(https://github.com/ethereum/execution-specs/blob/[0-9a-f]{40}/.*|https://github.com/ethereum/execution-specs/tree/[0-9a-f]{40}/.*)$ +^(https://github.com/ethereum/execution-specs/(blob|commit)/[0-9a-f]{40}/.*|https://github.com/ethereum/execution-specs/tree/[0-9a-f]{40}/.*)$ ``` ### Consensus Layer Specifications @@ -231,7 +231,7 @@ Which renders to: Permitted Consensus Layer Specifications URLs must anchor to a specific commit, and so must match this regular expression: ```regex -^https://github.com/ethereum/consensus-specs/blob/[0-9a-f]{40}/.*$ +^https://github.com/ethereum/consensus-specs/(blob|commit)/[0-9a-f]{40}/.*$ ``` ### Networking Specifications @@ -249,7 +249,7 @@ Which renders as: Permitted Networking Specifications URLs must anchor to a specific commit, and so must match this regular expression: ```regex -^https://github.com/ethereum/devp2p/blob/[0-9a-f]{40}/.*$ +^https://github.com/ethereum/devp2p/(blob|commit)/[0-9a-f]{40}/.*$ ``` ### World Wide Web Consortium (W3C) From a2ea76c5859528e90190d93bd0d45a20669dab43 Mon Sep 17 00:00:00 2001 From: Danny Ryan Date: Wed, 21 Jun 2023 11:18:27 -0600 Subject: [PATCH 2/3] Update EIP-7045: minor copy and link updates Merged by EIP-Bot. --- EIPS/eip-7045.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/EIPS/eip-7045.md b/EIPS/eip-7045.md index 9f516b163d8ec..e8fdf043988b0 100644 --- a/EIPS/eip-7045.md +++ b/EIPS/eip-7045.md @@ -1,7 +1,7 @@ --- eip: 7045 title: Increase max attestation inclusion slot -description: Increases max attestaton inclusion slot to the last slot in `N+1` where `N` is the epoch containing the attestations slot. +description: Increases max attestaton inclusion slot to the last slot in `N+1` where `N` is the epoch containing the attestation's slot. author: Danny Ryan (@djrtwo) discussions-to: https://ethereum-magicians.org/t/eip-7045-increase-attestation-slot-inclusion-range/14342 status: Draft @@ -22,7 +22,7 @@ Attestations can currently be included after some minimum delay (`1` slot on mai Since this decision, it has become apparent that the alternative design is critical for current LMD-GHOST security proofs as well as a new confirmation rule (which will allow for block confirmations in approximately 3-4 slots in normal mainnet conditions). -This specification, thus increases the max inclusion slot for attestations in accordance with the learned security proof and confirmation rule needs. +This specification thus increases the max inclusion slot for attestations in accordance with the learned security proof and confirmation rule needs. ## Specification @@ -38,12 +38,14 @@ This requires no changes to the Execution Layer. ### Consensus layer +Specification changes are built into the Consensus Specs Deneb upgrade. + The specification makes two minor changes to the state transition function: -* Modify `process_attestation` to not have an upper bound on the slot check and instead just rely on the minimum slot as well as the target epoch being in either current or previous epoch. -* Modify `get_attestation_participation_flag_indices` to set the `TIMELY_TARGET_FLAG` without consideration of `inclusion_delay` to ensure that the extended inclusion attestations have a non-zero reward. +* Modify [`process_attestation`](https://github.com/ethereum/consensus-specs/blob/95f36d99cf4aa59974da06af24ef9a7c12d3c301/specs/deneb/beacon-chain.md#modified-process_attestation) to not have an upper bound on the slot check and instead define the inclusion range via the minimum slot as well as the target epoch being in either current or previous epoch. +* Modify [`get_attestation_participation_flag_indices`](https://github.com/ethereum/consensus-specs/blob/95f36d99cf4aa59974da06af24ef9a7c12d3c301/specs/deneb/beacon-chain.md#modified-get_attestation_participation_flag_indices) to set the `TIMELY_TARGET_FLAG` without consideration of `inclusion_delay` to ensure that the extended inclusion attestations have a non-zero reward. -Additionally, the specification modifies the attestation and aggregate attestation gossip conditions to allow for gossip during this extended range. +Additionally, the specification modifies the [attestation](https://github.com/ethereum/consensus-specs/blob/95f36d99cf4aa59974da06af24ef9a7c12d3c301/specs/deneb/p2p-interface.md#beacon_attestation_subnet_id) and [aggregate attestation](https://github.com/ethereum/consensus-specs/blob/95f36d99cf4aa59974da06af24ef9a7c12d3c301/specs/deneb/p2p-interface.md#beacon_aggregate_and_proof) gossip conditions to allow for gossip during this extended range. ## Rationale @@ -57,6 +59,8 @@ Previously, `get_attestation_participation_flag_indices` would only set the `TIM The `inclusion_delay` consideration for this flag is removed to ensure that whatever the valid inclusion window is for an attestation, it can receive a baseline non-zero reward for correct target. This ensures that clients will still attempt to pack such attestations into blocks which is important for the security analysis. +Note, this was the intended behavior with the previously defined range which was equivalent to the max. + ## Backwards Compatibility This EIP introduces backwards incompatible changes to the block validation rule set on the consensus layer and must be accompanied by a hard fork. From a5f5490cf1779fd654d11ae1e3e9135beb551ac8 Mon Sep 17 00:00:00 2001 From: Manu NALEPA Date: Thu, 22 Jun 2023 03:19:03 +0200 Subject: [PATCH 3/3] Update EIP-3076: Update eip-3076.md Merged by EIP-Bot. --- EIPS/eip-3076.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/EIPS/eip-3076.md b/EIPS/eip-3076.md index 5040150f07b45..47075b8fa6c80 100644 --- a/EIPS/eip-3076.md +++ b/EIPS/eip-3076.md @@ -173,14 +173,15 @@ After importing an interchange file with data field `data`, a signer must respec 2. Refuse to sign any block with `slot <= min(b.slot for b in data.signed_blocks if b.pubkey == proposer_pubkey)`, except if it is a repeat signing as determined by the `signing_root`. 3. Refuse to sign any attestation that is slashable with respect to the attestations contained in `data.signed_attestations`. For details of what constitutes a slashable attestation, see `is_slashable_attestation_data`. + 4. Refuse to sign any attestation with source epoch less than the minimum source epoch present in that signer's attestations (as seen in `data.signed_attestations`). In pseudocode: -```python3 -source.epoch < - min(att.source_epoch - for att in data.signed_attestations - if att.pubkey == attester_pubkey) -``` + ```python3 + source.epoch < + min(att.source_epoch + for att in data.signed_attestations + if att.pubkey == attester_pubkey) + ``` 5. Refuse to sign any attestation with target epoch less than or equal to the minimum target epoch present in that signer's attestations (as seen in `data.signed_attestations`), except if it is a repeat signing as determined by the `signing_root`. In pseudocode: