This document defines the governance model for the BitGo Advanced Wallets open source project. It outlines the roles, rules for participation, and decision-making processes to ensure the project remains secure and transparent.
The decision to open source this project is driven by several key objectives, all rooted in transparency, security, and community benefit.
-
Security and Audits: The primary goal is to enable the community to perform security audits. Open-sourcing all components provides full transparency and an auditable history of the codebase, which is critical for identifying vulnerabilities and ensuring a high level of security.
-
On-Premise Adoption: We aim to promote the adoption of on-premise hot wallet setups. This project serves as a toolkit and example for users and services to integrate their own Hardware Security Modules (HSMs) or Key Management Systems (KMSs) for user and backup key management.
Any individual or organization can become a contributor. Contributors can submit code, documentation, and other changes through pull requests. The ability to contribute is open to everyone, regardless of their affiliation.
The maintainers are individuals designated to review and approve contributions. They are responsible for ensuring the quality, security, and integrity of the project's codebase. For this project, a Maintainer is a member of the core BitGo team.
- All contributions must be submitted via a pull request to the main repository.
- A contribution is considered ready for merging only after it has been reviewed and approved by at least two designated Maintainers.
- The Maintainers will review the contribution for correctness, security implications, code quality, and alignment with the project's goals.
- Contributors are expected to be responsive to feedback from Maintainers to ensure a smooth review process.
For significant changes to the project's architecture, roadmap, or governance, Maintainers will work toward a consensus.
For standard pull requests, the final decision to merge rests with the Maintainers. Their role is to uphold the security and quality standards of the project.
-
GitHub Issues: All bugs, feature requests, and technical discussions should be held on the project's GitHub issues page to ensure transparency and a public record.
-
Pull Request Comments: All feedback and discussions related to specific code changes should take place directly on the pull request.
-
Support: For general support, reach out to support@bitgo.com.