Overview
The voting module (contracts/assetsup/src/voting.rs) provides governance over tokenized assets (proposals, token-weighted votes, thresholds). No UI exists.
What to Build
A Governance tab on tokenized assets (and/or a global /governance page listing proposals across assets the connected wallet holds tokens in):
- Proposals list: title/description, proposer, status (active/passed/rejected/executed), deadline, live tally with a threshold progress bar
- Create proposal: form per the contract's proposal entrypoint (wallet-signed, holders only)
- Vote: for/against with the holder's token weight shown before signing; one-vote enforcement surfaced from the contract
- Outcome: passed proposals show their execution state where the contract exposes it
- Share voting/tally components with [SC-05]'s detokenization votes — build them once
References
- Contract:
contracts/assetsup/src/voting.rs
- Blocked by [SC-03], [SC-04]
Acceptance Criteria
Overview
The voting module (
contracts/assetsup/src/voting.rs) provides governance over tokenized assets (proposals, token-weighted votes, thresholds). No UI exists.What to Build
A Governance tab on tokenized assets (and/or a global
/governancepage listing proposals across assets the connected wallet holds tokens in):References
contracts/assetsup/src/voting.rsAcceptance Criteria