feat(treasury): governance MigrateOwnedContract for CMM-admin CW20s #44

Merged
PlasticDigits merged 3 commits from feat/43-treasury-migrate-owned into master 2026-09-12 07:43:02 +00:00

Summary

  • Add governance-only MigrateOwnedContract so CMM can emit WasmMsg::Migrate for CW20s it wasm-admins (columbus-5 ALPHA 11630 → 11666).
  • Fail-closed unless LCD ContractInfo.admin is this treasury; new_code_id == 0 rejected; omit msg → {}.
  • Bump treasury cw2 to 0.2.2 (crate version pin, not workspace). Wrap / InstantWithdraw unchanged.

Test plan

  • cd contracts && cargo test --package treasury --lib (145 passed)
  • Founder: optimizer store treasury, 2-of-3 migrate CMM, then 2-of-3 execute ALPHA → 11666
  • DEX Refresh after ALPHA LCD is 11666 (cl8y-dex-terraclassic#1250)
## Summary - Add governance-only `MigrateOwnedContract` so CMM can emit `WasmMsg::Migrate` for CW20s it wasm-admins (columbus-5 ALPHA 11630 → 11666). - Fail-closed unless LCD `ContractInfo.admin` is this treasury; `new_code_id == 0` rejected; omit `msg` → `{}`. - Bump treasury cw2 to **0.2.2** (crate version pin, not workspace). Wrap / InstantWithdraw unchanged. ## Test plan - [x] `cd contracts && cargo test --package treasury --lib` (145 passed) - [ ] Founder: optimizer store treasury, 2-of-3 migrate CMM, then 2-of-3 execute ALPHA → 11666 - [ ] DEX Refresh after ALPHA LCD is 11666 ([cl8y-dex-terraclassic#1250](https://git.cl8y.com/code/cl8y-dex-terraclassic/issues/1250))
CMM is ALPHA wasm admin; DEX 2-of-3 cannot MsgMigrateContract the token
until treasury emits WasmMsg::Migrate. Bump treasury cw2 to 0.2.2.
Author
Owner

drain skip: hard-blocked (needs-human / high-risk / human topic); remaining continue

drain skip: hard-blocked (needs-human / high-risk / human topic); remaining continue
Branch protection requires ci/woodpecker/pr/woodpecker. Cargo tests stay local.
ci: fix Woodpecker yaml so the PR gate compiles
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
234983eafa
Commands must be a string; a colon made the compiler treat echo as a map.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
code/ustr-cmm!44
No description provided.