Transaction
DDC8B55C4DF31D…7EBAE5CFF4CF
Block 486,374 · index 0 · indexed
Summary
- Hash
- DDC8B55C4DF31D0CB214001F7E1F058EE7024BD2BF8309841C087EBAE5CFF4CF
- Block
- 486,374
- Size
- 1851 bytes
- Gas used
- 32,672,758 / 200,000,000
- Fee
- 2000000 ugnot
- Status
- success
Messages
#1MsgRun3 arguments
Arguments · 3
- #1main
- #203-propose-vp60.gno
- #3// Set validator moul to voting power 60 // // The normal operating state: the same power the other four validators carry. // // 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"), 60), }, "Set validator moul to voting power 60", "Upsert operator g1manfred47kzduec920z88wfr64ylksmdcedlf5 to voting power 60, matching the other members of the set.", ) 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:[]