Contributions to HCA working group repos are subject to overall HCA governance and technical guidance. In addition, contributors are expected to abide by the following guidelines:
-
Rough consensus and running code: instead of formal procedures for agreeing on everything, systems with working prototypes and existing users are prioritized as platforms for discussion.
-
Keep it simple: prioritize scalability and the ability to keep the project easy to understand and scale over features. Use well-supported upstream solutions where possible. Provide useful defaults and don't expose unnecessary configuration options.
-
Separation of concerns and layers: code should be modular and encapsulate functionality, providing a well-defined interface that hides complexity from the end user.
-
Don't break the build: pull requests are expected to pass all automated CI checks.
-
Keep the build simple: Automated CI checks that are fragile or don't serve a clear agreed upon purpose will be removed.
-
All code review comments must be addressed, even if a pull request has already been merged.
-
All code must be reviewed by at least 1 other team member.
-
All pull requests relating to an issue must include the text "connected to #123", where #123 is the issue number. (Using the keywords "closes #123" or "fixes #123" will automatically close issue #123 when the pull request is merged.)
-
Individual commit messages should clearly express the commit's purpose.