Transaction
293828D73D95A8…6C62DA3ED355
Block 486,402 · index 0 · indexed
Summary
- Hash
- 293828D73D95A85023082B7A55211EB3635243CA84761E1AA8EC6C62DA3ED355
- Block
- 486,402
- Size
- 1920 bytes
- Gas used
- 32,777,438 / 200,000,000
- Fee
- 2000000 ugnot
- Status
- success
Messages
#1MsgRun3 arguments
Arguments · 3
- #1main
- #204-propose-vp1.gno
- #3// Set validator moul to voting power 1 // // The emergency brake, created and pre-voted so it can be executed at a moment's notice. GovDAO has no expiry, so it keeps indefinitely. // // Uses r/sys/validators/v0 DIRECTLY, not the r/gnops/valopers/proposal facade. // The facade hardcodes votingPower = 1 and cannot express any other power. v0's // entry point is non-crossing, so no MsgCall reaches it, but a MsgRun's // ephemeral realm does: this is byte-for-byte the shape aeddi used in // rm_validator.gno, the transaction that executed in onyx block 94971. // // Power > 0 is an UPSERT keyed on the signing address, so this overwrites moul's // current power rather than needing a remove-then-add pair. // // Creates the proposal and casts moul's YES. Does NOT execute: supermajority is // 66.66% of total GovDAO power and the three T1 members hold 3 each, so one YES // is 33.3%. // // Vote uses MustVoteOnProposalSimple: a dao.VoteRequest literal cannot be // allocated in a run realm. Measured 2026-10-01, see 02-propose.gno. package main import ( "gno.land/r/gov/dao" valset "gno.land/r/sys/validators/v0" ) func main(cur realm) { r := valset.NewValidatorProposalRequest( cross(cur), []valset.ValoperChange{ valset.NewValoperChange(address("g1manfred47kzduec920z88wfr64ylksmdcedlf5"), 1), }, "Set validator moul to voting power 1", "Upsert operator g1manfred47kzduec920z88wfr64ylksmdcedlf5 to voting power 1, reducing this validator's weight without removing it.", ) pid := dao.MustCreateProposal(cross(cur), r) dao.MustVoteOnProposalSimple(cross(cur), int64(pid), "YES") println("proposal id:", pid) }
Result log
msg:0,success:true,log:,events:[]