Skip to content

Bump contract migration baseline to 3.13.0 once it is deployed #3758

Description

@barakeinav1

Background

The contract migrate() currently reads a single shadow, v3_12_0_state::MpcContract — i.e. it migrates from 3.12.0. That is correct today: per crates/contract-history (hash-checked against on-chain), current_mainnet()/current_testnet() are both version_3_12_0(), so 3.12.0 is the live baseline on both networks. 3.13.0 is tagged but not yet deployed, and there is no 3.13.0 wasm archived.

Once 3.13.0 is actually deployed, the next state-changing release must migrate from 3.13.0, not 3.12.0 — otherwise it will fail to deserialize the live state and brick the upgrade. This mirrors #3584 (which bumped the baseline 3.11.2 → 3.12.0).

Acceptance Criteria

  • 3.13.0 is confirmed deployed on the target network(s)
  • Archive signer-3_13_0.wasm in crates/contract-history; point current_mainnet()/current_testnet() at version_3_13_0() and update the on-chain-hash assertion
  • Add crates/contract/src/v3_13_0_state.rs shadowing the 3.13.0 layout; drop v3_12_0_state.rs
  • Repoint migrate() (pub mod + try_state_read) to v3_13_0_state
  • upgrade_to_current_contract sandbox test passes against the new baseline

Resources

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions