From 4e0f2b523e402690053881e4310ba765e7af46aa Mon Sep 17 00:00:00 2001 From: Manu NALEPA Date: Thu, 2 May 2024 15:15:44 +0200 Subject: [PATCH 1/2] `get_custody_columns`: Move `node_id` test against `UINT256_MAX` out of the `while` loop. `node_id` is not modified in the loop, and moving the check against ``UINT256_MAX` does not impact specification readability. --- specs/_features/eip7594/das-core.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/specs/_features/eip7594/das-core.md b/specs/_features/eip7594/das-core.md index 40c66cf290..d243ae12b0 100644 --- a/specs/_features/eip7594/das-core.md +++ b/specs/_features/eip7594/das-core.md @@ -105,12 +105,13 @@ class DataColumnSidecar(Container): def get_custody_columns(node_id: NodeID, custody_subnet_count: uint64) -> Sequence[ColumnIndex]: assert custody_subnet_count <= DATA_COLUMN_SIDECAR_SUBNET_COUNT + if node_id == UINT256_MAX: + node_id = NodeID(0) + subnet_ids: List[uint64] = [] i = 0 - while len(subnet_ids) < custody_subnet_count: - if node_id == UINT256_MAX: - node_id = NodeID(0) + while len(subnet_ids) < custody_subnet_count: subnet_id = ( bytes_to_uint64(hash(uint_to_bytes(uint256(node_id + i)))[0:8]) % DATA_COLUMN_SIDECAR_SUBNET_COUNT From eb7e592c2533bf175c485545191444a433387171 Mon Sep 17 00:00:00 2001 From: Hsiao-Wei Wang Date: Sat, 4 May 2024 01:20:31 +0800 Subject: [PATCH 2/2] add comment --- specs/_features/eip7594/das-core.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specs/_features/eip7594/das-core.md b/specs/_features/eip7594/das-core.md index d243ae12b0..7b9d31fb03 100644 --- a/specs/_features/eip7594/das-core.md +++ b/specs/_features/eip7594/das-core.md @@ -105,6 +105,7 @@ class DataColumnSidecar(Container): def get_custody_columns(node_id: NodeID, custody_subnet_count: uint64) -> Sequence[ColumnIndex]: assert custody_subnet_count <= DATA_COLUMN_SIDECAR_SUBNET_COUNT + # Overflow prevention if node_id == UINT256_MAX: node_id = NodeID(0)