Skip to content

feat: add config checker for multisig/DAO info#101

Merged
Seth-Schmidt merged 6 commits intomainfrom
feature/pro-302-config-checker-for-multisigdao-infos
Apr 20, 2026
Merged

feat: add config checker for multisig/DAO info#101
Seth-Schmidt merged 6 commits intomainfrom
feature/pro-302-config-checker-for-multisigdao-infos

Conversation

@Seth-Schmidt
Copy link
Copy Markdown
Contributor

@Seth-Schmidt Seth-Schmidt commented Apr 10, 2026

Summary

Adds get-multisig-info to the chains-config-checker, reporting owners and thresholds for all deployed governance
wallets:

  • EVM Safes (Gateway, BSC, HyperEVM): queries getOwners() / getThreshold() and cross-checks that all Safes
    share identical owners and threshold
  • Aragon DAO (Ethereum): detects currently installed plugins by replaying Granted/Revoked events for
    EXECUTE_PERMISSION on the DAO, with an on-chain hasPermission() sanity check. Correctly filters out uninstalled
    plugins (e.g. the setup multisig)
  • Solana Squads: reads the multisig account via @sqds/multisig for members and threshold

Changes

  • utils/get-multisig-info.js: new script
  • package.json: added npm script + @sqds/multisig dependency
  • .env.example: added Safe, Aragon DAO, and Squads env vars
  • README.md: documented usage, env vars, and example output

NOTE: The gateway safe module and admin module owner check from this issue is also included in this PR since they are related: https://linear.app/zama/issue/PRO-303/config-check-for-contracts-owners-delegate-module

- Added `get-multisig-info` script to report owners and thresholds for Gnosis Safe multisigs, Aragon DAO plugins, and Solana Squads.
- Updated `.env.example` with new environment variables for multisig addresses.
- Included `@sqds/multisig` package in dependencies and updated `package-lock.json`.
- Enhanced README with usage instructions for the new script.
@Seth-Schmidt Seth-Schmidt self-assigned this Apr 10, 2026
@cla-bot cla-bot Bot added the cla-signed label Apr 10, 2026
@Seth-Schmidt Seth-Schmidt changed the title feat: add config checker for multisig/DAO info feat: add config checker for multisig/DAO info Apr 10, 2026
@Seth-Schmidt Seth-Schmidt marked this pull request as ready for review April 10, 2026 23:38
@Seth-Schmidt Seth-Schmidt requested review from a team and mortendahl as code owners April 10, 2026 23:38
@Seth-Schmidt Seth-Schmidt marked this pull request as draft April 15, 2026 00:53
- Added functionality to retrieve and verify the AdminModule information for the Gateway Safe.
- Updated README to include details about the new AdminModule environment variable and its usage.
- Modified the `get-multisig-info` script to check for enabled modules and validate the AdminModule's configuration.
Comment thread contracts/chains-config-checker/.env.example
….example

- Updated README to differentiate between the Squads multisig account PDA and the vault ID, providing clear instructions on where to find each.
- Enhanced .env.example with additional comments to prevent confusion regarding the multisig account's purpose.
- Added notes in the get-multisig-info script to emphasize the distinction and avoid potential errors when retrieving multisig data.
@Seth-Schmidt Seth-Schmidt merged commit bc1b812 into main Apr 20, 2026
5 checks passed
@Seth-Schmidt Seth-Schmidt deleted the feature/pro-302-config-checker-for-multisigdao-infos branch April 20, 2026 16:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants