* chore: Ensure voter-weight-addin is built for tests
fix: build addin during test run
fix: build voter weight addin for tests using the addin only
chore: use mutex to build addin only once
chore: move build guard to separate file
chore: update governance version for chat
* chore: create tools crate for common utility functions in governance ecosystem
* chore: add test-sdk and tools readme
* chore: rename reserved addins to specific names
* chore: remove todo comment
* chore: remove unnecessary var drop
* chore: move all account tools to shared crate
* chore: fix chat compilation
* chore: move program_id to first position
* feat: setup and configure voter weight addin
feat: add use_voter_weight_add_in flag to realm config
chore: use spl-governance 1.1.1 version
chore: make clippy happy
chore: add test to deserialise v1 CreateRealm instruction from v2
feat: add voter-weight-addin skeleton project
chore: build voter-weight-addin before governance
fix: temp workaround to make spl_governance_voter_weight_addin available in CI
chore: add tests with voter-weight-addin
feat: implement deposit instruction for voter weight addin
feat: add voter_weight_expiry
fix: set voter_weight_expiry
chore: restore positive execute tests
chore: restore ignored tests
wip: pass voter weight accounts to create_account_governance2
wip: read voter weight account
chore: make clippy happy
wip: add realm and validation to voter_weight deposit
fix: update addin
chore: make clippy happy
chore: fix voter_weight_record names
feat: use voter weight provided by addin when governance created
chore: update addin
chore: remove governance stake pool program
feat: remove time offset from revise
chore: fix build
feat: create RealmAddins account when realm with addin is created
chore: make clippy happy
feat: set voter weight addin using SetRealmConfig instruction
chore: make clippy happy
chore: update comments
chore: reorder SetrealmConfig accounts
chore: infer use_community_voter_weight_addin
chore: infer use_community_voter_weight_addin
chore: update voter weight addin comments
feat: use voter weight addin id from RealmAddins account
* feat: use voter weight addin to create proposal
* feat: use voter weight addin to cast vote
* chore: make clippy happy
* feat: use voter weight addin to create token governance
* feat: use voter weight addin to create mint governance
* feat: use voter weight adding to create program governance
* chore: create assert_can_withdraw_governing_tokens() helper function
* chore: fix compilation
* fix: ensure governance authority signed transaction to create governance
* feat: implement CreateTokenOwnerRecord instruction
* chore: fix chat tests
* chore: update comments
* chore: rename RealmAddins account to RealmConfig account
* chore: add more reserved space to GovernanceConfig account
* chore: update instruction comments
* chore: update comments
* chore: fix compilation
* chore: remove ignore directive for tests
* feat: panic when depositing tokens into a realm with voter weight addin
* chore: rename community_voter_weight to community_voter_weight_addin
* feat: make payer account optional for SetRealmConfig
* feat: add min_community_tokens_to_create_governance to config
* feat: add token owner record and governing mint to CreateAccountGovernance
* feat: add token owner record and governing mint to CreateMinGovernance
* feat: add token owner record and governing mint to CreateProgramGovernance
* feat: add token owner record and governing mint to CreateTokenGovernance
* feat: remove custodian
* fix: remove mint and update comments
* chore: make clippy happy
* chore: make clippy happy
* chore: move realm from config to governance account direct field
* chore: move governed_account from config to governance account direct field
* chore: update comments
* chore: make clippy happy
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>