* fix: realm deserialisation
* chore: update spl-gov version for chat
* chore: update spl-governance-tools version to 0.1.2
* chore: upgrade Anchor to 0.20.1
* chore: update addin-api version
* chore: update spl-governance-test-sdk version
* chore: change voter-weight-addin to mock
* chore: fix tests
* chore: add action, target and expiry validation tests
* chore: add full target test checks
* feat: add max community voter weight adding structures
* chore: move payer to last account position
* wip: update max_community_voter_weight_addin
* chore: simplify logic to update realm config
* wip: setup addins when realm is created
* wip: setup voter weights accounts
* chore: make clippy happy
* core: fix merge
* chore: remove old readme
* chore: add SetupMaxVoterWeightRecord to addin mock
* chore: test_create_realm_with_max_voter_weight_addin test
* chore: add SetRealmConfigArgs and refactor tests
* chore: update max voter weight tests
* chore: setup cast_vote_with_max_voter_weight_addin test
* wip: get max voter weight from plugin
* chore: update comments and make clippy happy
* wip: use max voter weight to tip proposals
* chore: rename get_max_voter_weight
* chore: load addins using different ids
* chore: add tests with all addins
* fix: coerce max vote weight when cast votes are higher
* chore: add tests with all adins being used
* chore: add test for expired max voter weight record
* chore: simplify addin mock
* wip: Create addin api crate
* chore: use native build order and dependency
* chore: fix build
* feat: add reserved space to addin records
* chore: bump versions
* fix: use [u8; 8] discriminator for addin account types
* chore: update instruction comments
* chore: use saturating_sub instead of checked_sub
Co-authored-by: Jon Cinque
* fix: transfer mint freeze authority for mint governance
* chore: update transfer_mint_authorities comments
* feat: transfer close_authority when creating token account governance
* chore: update spl-token function names
* chore: remove redundant set_spl_token_mint_authority
* chore: update governance chat program version to 0.2.0
* feat: support voter weight for chat
* chore: move ensure_voter_weight_addin_is_built to test sdk
* chore: add program version to logs
* fix: workaround for logs
* chore: add test for chat message using voter weight addin
* chore: remove logger overrides
Co-authored-by: Jon Cinque
* feat: Implement CreateNativeTreasury instruction
* chore: fix fmt
* chore: make clippy happy
* chore: remove account check
* feat: sign with treasury account seeds
* chore: comment out unused code
* feat: Use system as the treasury account owner
* feat: Assert valid governance account
* chore: Make clippy happy
* fix: Use explicit system program id
* feat: add treasury seeds only when required by the instruction
* chore: review celanup
* chore: make clippy happy
* chore: rename create_and_serialize_account_signed2
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
* chore: update create_and_serialize_account_signed2 name
* fix: remove NativeTreasury from account enums
* chore: update treasury seeds prefix
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
* 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