Audit EOA governance and plan transfer to DEX 2-of-3 #30

Open
opened 2026-08-15 12:42:57 +00:00 by PlasticDigits · 9 comments
PlasticDigits commented 2026-08-15 12:42:57 +00:00 (Migrated from gitlab.com)

Summary

Audit ust1-window + ust1-oracle (+ UST1 CW20) columbus-5 control still held by cl8y2_admin (terra1xsecn4snv94ezcez0z3vq8an9j4h4kxxcydp8l) and plan transfer of app governance and wasm admin to the DEX 2-of-3 terra1zlmv2xydxcusurtr6rl78wsvytdc6mfex6hep7.

Live state (queried 2026-08-15)

Surface Wasm admin App governance / minter Transfer mechanic Status
ust1-window terra1zxwpz…h3rh2 code 11566 cl8y2_admin governance = cl8y2_admin No timelock. ProposeGovernance { address } then new gov AcceptGovernance {} Not proposed
ust1-oracle terra1fmht0…gch8n code 11568 cl8y2_admin governance = cl8y2_admin; operator terra1hm3ph0…uhqna Same two-step, no delay Not proposed. Keep oracle_operator unless rotating the bot in the same change.
UST1 CW20 terra1f0eqg…fy72 cl8y2_admin primary = cl8y2_admin; extras = DEX multisig + window update_minter + set-contract-admin Keep window as extra minter or mint/redeem breaks

Window/oracle accept is immediate once proposed (no 7-day lock — unlike wrap-mapper / treasury).

Audit checklist

  • Query config + wasm contract_info.admin again before broadcast
  • Propose window + oracle to the multisig, then 2-of-3 AcceptGovernance
  • set-contract-admin both contracts to the multisig
  • UST1: keep window (and any other product minter) on minters[] before/after update_minter
  • Update docs/DEPLOYMENT.md registry; mirror DEX deployments/mainnet-ust1-wrap/REGISTRY.md
  • Wrap-mapper / treasury / USTR tokens: ustr-cmm sister issue
  • Mapper accept (7-day): DEX #525
  • Phase 2 deploy: #19
## Summary Audit ust1-window + ust1-oracle (+ UST1 CW20) columbus-5 control still held by `cl8y2_admin` (`terra1xsecn4snv94ezcez0z3vq8an9j4h4kxxcydp8l`) and plan transfer of **app governance** and **wasm admin** to the DEX 2-of-3 `terra1zlmv2xydxcusurtr6rl78wsvytdc6mfex6hep7`. ## Live state (queried 2026-08-15) | Surface | Wasm admin | App governance / minter | Transfer mechanic | Status | |---------|------------|-------------------------|-------------------|--------| | ust1-window `terra1zxwpz…h3rh2` code 11566 | `cl8y2_admin` | `governance` = `cl8y2_admin` | **No timelock.** `ProposeGovernance { address }` then new gov `AcceptGovernance {}` | Not proposed | | ust1-oracle `terra1fmht0…gch8n` code 11568 | `cl8y2_admin` | `governance` = `cl8y2_admin`; operator `terra1hm3ph0…uhqna` | Same two-step, no delay | Not proposed. **Keep `oracle_operator`** unless rotating the bot in the same change. | | UST1 CW20 `terra1f0eqg…fy72` | `cl8y2_admin` | primary = `cl8y2_admin`; extras = **DEX multisig** + **window** | `update_minter` + `set-contract-admin` | Keep window as extra minter or mint/redeem breaks | Window/oracle accept is immediate once proposed (no 7-day lock — unlike wrap-mapper / treasury). ## Audit checklist - [ ] Query `config` + wasm `contract_info.admin` again before broadcast - [ ] Propose window + oracle to the multisig, then 2-of-3 `AcceptGovernance` - [ ] `set-contract-admin` both contracts to the multisig - [ ] UST1: keep window (and any other product minter) on `minters[]` before/after `update_minter` - [ ] Update `docs/DEPLOYMENT.md` registry; mirror DEX `deployments/mainnet-ust1-wrap/REGISTRY.md` ## Related - Wrap-mapper / treasury / USTR tokens: **ustr-cmm** sister issue - Mapper accept (7-day): [DEX #525](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/work_items/525) - Phase 2 deploy: [#19](https://gitlab.com/PlasticDigits/ust1-window/-/work_items/19)
PlasticDigits commented 2026-08-15 12:43:42 +00:00 (Migrated from gitlab.com)

mentioned in issue cl8y-dex-terraclassic#526

mentioned in issue cl8y-dex-terraclassic#526
PlasticDigits commented 2026-08-15 12:43:46 +00:00 (Migrated from gitlab.com)

mentioned in issue PlasticDigits2/ustr-cmm#15

mentioned in issue PlasticDigits2/ustr-cmm#15
PlasticDigits commented 2026-08-15 12:43:46 +00:00 (Migrated from gitlab.com)
Sister audits: - DEX tracker: https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/work_items/526 - ustr-cmm: https://gitlab.com/PlasticDigits2/ustr-cmm/-/work_items/15 - bridge: https://gitlab.com/PlasticDigits/cl8y-bridge-monorepo/-/work_items/135
PlasticDigits commented 2026-08-15 12:44:01 +00:00 (Migrated from gitlab.com)

mentioned in issue cl8y-bridge-monorepo#135

mentioned in issue cl8y-bridge-monorepo#135
PlasticDigits commented 2026-08-15 12:44:01 +00:00 (Migrated from gitlab.com)

mentioned in issue cl8y-dex-terraclassic#525

mentioned in issue cl8y-dex-terraclassic#525
PlasticDigits commented 2026-08-24 02:57:23 +00:00 (Migrated from gitlab.com)

mentioned in issue #33

mentioned in issue #33
PlasticDigits commented 2026-08-25 05:56:56 +00:00 (Migrated from gitlab.com)

Sister wrap/treasury accepts landed on columbus-5 (DEX 2-of-3, 2026-08-25). Window + oracle are unchanged.

  • Window config.governance still terra1xsecn4snv94ezcez0z3vq8an9j4h4kxxcydp8l (not proposed)
  • Oracle config.governance still the same EOA; operator terra1hm3ph0…uhqna
  • Mapper + CMM treasury app governance is now terra1zlmv2xydxcusurtr6rl78wsvytdc6mfex6hep7

This issue stays open until ProposeGovernance + AcceptGovernance for window/oracle. DEX tracker: PlasticDigits/cl8y-dex-terraclassic#526.

Sister wrap/treasury accepts landed on columbus-5 (DEX 2-of-3, 2026-08-25). Window + oracle are unchanged. - Window config.governance still terra1xsecn4snv94ezcez0z3vq8an9j4h4kxxcydp8l (not proposed) - Oracle config.governance still the same EOA; operator terra1hm3ph0…uhqna - Mapper + CMM treasury app governance is now terra1zlmv2xydxcusurtr6rl78wsvytdc6mfex6hep7 This issue stays open until ProposeGovernance + AcceptGovernance for window/oracle. DEX tracker: PlasticDigits/cl8y-dex-terraclassic#526.
PlasticDigits commented 2026-08-26 02:56:51 +00:00 (Migrated from gitlab.com)

mentioned in issue cl8y-dex-terraclassic#638

mentioned in issue cl8y-dex-terraclassic#638
PlasticDigits commented 2026-08-28 09:24:26 +00:00 (Migrated from gitlab.com)

mentioned in issue cl8y-dex-terraclassic#697

mentioned in issue cl8y-dex-terraclassic#697
Sign in to join this conversation.
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/ust1-window#30
No description provided.