Governance Hardening V3 is an additive path on top of the existing DAO program. It does not remove or reinterpret legacy governance objects.
- DAO-level governance policy companion account
- Proposal-level governance policy snapshot
- Token-supply participation quorum mode
- Dedicated reveal rebate vault PDA
reveal_vote_v3finalize_proposal_v3finalize_zk_enforced_proposal_v3
Two governance behaviors remained intentionally unchanged in legacy mode:
- quorum was based on
reveal_count / commit_count - reveal rebates could be paid from proposal lamports
Those semantics are still preserved for old objects and legacy flows. V3 adds a stricter path for new flows without breaking old PDA derivations, account layouts, or instruction interfaces.
V3 can snapshot the governance mint supply at proposal time and require participation against that snapshot instead of only against revealed voters.
V3 moves reveal rebates into a dedicated DAO-bound vault PDA so proposal accounts are no longer used as an implicit rebate source.
V3 snapshots proposal governance policy at proposal scope so future DAO-level policy changes do not silently reinterpret existing proposals.
- Legacy instructions remain callable.
- Existing proposals remain readable and executable under their original semantics.
- V3 strictness applies only when the operator explicitly uses the V3 path.
Implemented, locally verified, and backed by a dedicated Devnet proof packet:
- Rust compile and unit test pass
- TypeScript typecheck passes
- portable core checks pass
- preserved Devnet proof exists in
docs/test-wallet-live-proof-v3.generated.md
Operational note:
- the local portable suite in this environment does not run the full AVX2-dependent Anchor validator path
Governance Hardening V3is no longer local-only; it has a dedicated Devnet execution proof packet in addition to compile and regression coverage- that proof packet is still a test-wallet Devnet artifact, not a production-custody or mainnet claim