diff --git a/specs/phase1/beacon-chain.md b/specs/phase1/beacon-chain.md index b64c31a57..6f40e5081 100644 --- a/specs/phase1/beacon-chain.md +++ b/specs/phase1/beacon-chain.md @@ -867,9 +867,10 @@ def apply_shard_transition(state: BeaconState, shard: Shard, transition: ShardTr # Verify combined proposer signature assert optional_aggregate_verify(pubkeys, signing_roots, transition.proposer_signature_aggregate) - # Save updated state - state.shard_states[shard] = transition.shard_states[len(transition.shard_states) - 1] - state.shard_states[shard].slot = compute_previous_slot(state.slot) + # Copy and save updated shard state + shard_state = copy(transition.shard_states[len(transition.shard_states) - 1]) + shard_state.slot = compute_previous_slot(state.slot) + state.shard_states[shard] = shard_state ``` ###### `process_crosslink_for_shard`