Skip to content

feat(cli): default chunked-publish large_packages address on Movement - #390

Draft
ganymedio wants to merge 3 commits into
m1from
feat/large-packages-movement-default-address
Draft

feat(cli): default chunked-publish large_packages address on Movement#390
ganymedio wants to merge 3 commits into
m1from
feat/large-packages-movement-default-address

Conversation

@ganymedio

@ganymedio ganymedio commented Jul 2, 2026

Copy link
Copy Markdown

Summary

Point the default large_packages module address for --chunked-publish at the audited Movement deployment, so chunked publishing works out-of-the-box on Movement instead of requiring --large-packages-module-address on every call.

Uses deployment from #303

default_large_packages_module_address gated the prod address on is_mainnet() || is_testnet(), which match chain IDs 1/2 (Aptos). Movement mainnet/testnet are chain IDs 126/250, so publishing there fell through to the localnet/devnet default (0x7), which has no large_packages deployed.

Changes

  • chunked_publish.rs: set LARGE_PACKAGES_PROD_MODULE_ADDRESS to 0x5535c0246b3da2a0632edc13bac62aa352a9829adc2e060ed227955457aa9f06 and gate it on is_movement_mainnet() || is_movement_testnet().
  • crates/aptos/src/common/types.rs: update the --large-packages-module-address flag doc.

Address

0x5535c0246b3da2a0632edc13bac62aa352a9829adc2e060ed227955457aa9f06 — the large_packages module, published to the same account on Movement mainnet and testnet.

Testing

Build the CLI: cargo build -p movement (binary at target/debug/movement).

On Movement testnet, run a chunked publish without --large-packages-module-address and confirm the staging call resolves to 0x5535…::large_packages:

@ganymedio
ganymedio force-pushed the feat/large-packages-movement-default-address branch 2 times, most recently from 3b9dbca to 40f5272 Compare July 2, 2026 14:02
`default_large_packages_module_address` resolved the `large_packages` module address from the chain ID but had no Movement branch, so on Movement mainnet/testnet it fell through to the localnet/devnet default (0x7), which has no such module deployed. Every chunked publish therefore required passing `--large-packages-module-address` by hand.

Add a Movement branch pointing at the audited `large_packages` deployment at 0x5535c0246b3da2a0632edc13bac62aa352a9829adc2e060ed227955457aa9f06, published to the same account on Movement mainnet and testnet so one constant covers both networks. Update the `--large-packages-module-address` flag doc to describe the chain-id-based resolution.
@ganymedio
ganymedio force-pushed the feat/large-packages-movement-default-address branch from 40f5272 to f3d9618 Compare July 2, 2026 14:11
@ganymedio
ganymedio marked this pull request as ready for review July 2, 2026 15:50
apenzk
apenzk previously approved these changes Jul 3, 2026

@apenzk apenzk left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lg2m

@ganymedio

Copy link
Copy Markdown
Author

putting in draft until #391 is resolved

@ganymedio
ganymedio marked this pull request as draft July 6, 2026 11:49
#391 removes is_movement_mainnet()/is_movement_testnet() and repoints
is_mainnet()/is_testnet() at Movement's chain IDs, so the plain
predicates now select the Movement large_packages address.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants