Add StarkExchangeMigrationV2 to Ethereum deployment script#19
Merged
Conversation
Extends DeployEthContracts to deploy StarkExchangeMigrationV2 as a third implementation contract (implementation-only, no proxy). Adds v2_implementation_address to all eth config files and updates the README. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
ermyas
reviewed
Apr 20, 2026
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Rather than deploying both V1 and V2 implementations, the script now reads stark_exchange_migration.version from the config (1 or 2) and deploys only the selected implementation. Config files updated to add the version field; input configs set to version 2 (V2 not yet deployed), deployed configs set to version 1 (V1 currently deployed). Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
ermyas
reviewed
Apr 20, 2026
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
ermyas
approved these changes
Apr 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
DeployEthContracts.s.solto deployStarkExchangeMigrationV2as a third implementation contract (step 3), following the same idempotent pattern as V1v2_implementation_addressfield tostark_exchange_migrationin all four eth config files (mainnet + sandbox, input + deployed), defaulting to the zero addressscript/README.mdto reflect V2 in the scripts table, config structure, and output field listTest plan
DeployEthContracts.s.solin simulation mode against sandbox (no--broadcast) and confirm V2 implementation address is printed and written to output--broadcastagainst sandbox and confirm V2 is deployed; updatesandbox/eth_deployed.jsonwith the real address🤖 Generated with Claude Code
Note
Medium Risk
Updates the Ethereum deployment flow to select between two migration implementations and introduces a new config field that, if mis-set, could deploy or reference the wrong on-chain implementation for a proxy upgrade.
Overview
Adds versioned deployment support for
StarkExchangeMigrationon Ethereum.DeployEthContracts.s.solnow readsstark_exchange_migration.version, validates it is1or2, and deploys eitherStarkExchangeMigrationorStarkExchangeMigrationV2, with updated logging.Updates deployment configs/docs accordingly. Mainnet and sandbox
eth_config_input.json/eth_deployed.jsongain astark_exchange_migration.versionfield, andscript/README.mddocuments the new version selection behavior.Reviewed by Cursor Bugbot for commit 90ee64e. Bugbot is set up for automated code reviews on this repo. Configure here.