diff --git a/specs/phase1/shard-transition.md b/specs/phase1/shard-transition.md index ce6d289bd..e6221a980 100644 --- a/specs/phase1/shard-transition.md +++ b/specs/phase1/shard-transition.md @@ -71,22 +71,23 @@ def verify_shard_block_signature(beacon_state: BeaconState, def shard_state_transition(beacon_state: BeaconState, shard_state: ShardState, block: ShardBlock) -> None: - # Update shard state + """ + Update ``shard_state`` with shard ``block`` and ``beacon_state`. + """ + shard_state.slot = block.slot prev_gasprice = shard_state.gasprice + shard_state.gasprice = compute_updated_gasprice(prev_gasprice, len(block.body)) if len(block.body) == 0: latest_block_root = shard_state.latest_block_root else: latest_block_root = hash_tree_root(block) - + shard_state.latest_block_root = latest_block_root shard_state.transition_digest = compute_shard_transition_digest( beacon_state, shard_state, block.beacon_parent_root, hash_tree_root(block.body), ) - shard_state.gasprice = compute_updated_gasprice(prev_gasprice, len(block.body)) - shard_state.slot = block.slot - shard_state.latest_block_root = latest_block_root ``` We have a pure function `get_post_shard_state` for describing the fraud proof verification and honest validator behavior.