Community Developer Pull Request Process

This page details the process MITH Cash Community Developers should follow to open pull requests for feature development and bug fixes.

Process

  • Developers should have a fork of MICVol/basiscash-protocol and basiscash-frontend that they can work on. This is kept up to date using the main Mithio/basiscash-protocol and basiscash-frontend repository as a remote.

  • Developers work and collaborate in branches from the main dev branch.

  • Before working on a feature or bug, make sure to assign the issue in Github to yourself and move it to "In progress" to make sure others don't start working on the same issue and duplicate work.

  • Push commits to a branch on MICVolDev with the issue ID in the branch (i.e., git push origin MICVOL-001)

  • Once you are happy with a fix for a particular issue, have tested it thoroughly, and have had it reviewed by at least one other VolDev, open up a pull request from your branch to Mithio/basiscash-protocol and basiscash-frontend.

  • One of the full-time dev team members (this will transition into a pure community review process) will review and test the pull requests (note: the merging by command-line instructions on GitHub pull requests, which make testing changes from other repos easy).

    • If issues are found, we will leave notes to let the VolDev know

      • Note: Committing subsequent changes to that branch will automatically appear in the pull request, so you need to open up a new pull request when addressing issues.

    • If it is OK, it will be assigned to a full time team member responsible for that piece of code for a final review and merge (unless it falls under the areas covered by Community Engineering, in which case we will just merge it)

  • Once your fix has been merged, resolve the issue in Github.

Review rules

  • Full-time devs will schedule a specific time each week where we will review VolDev code and be available to help and answer questions as needed.

  • A minimum of one review from another VolDev is required before it will be reviewed by full time devs. If none of the other VolDevs feel they know enough to review, the change, at least a "sanity check" review for syntax and style should be undertaken.

  • Change must be thoroughly tested before opening a pull request against Mithio/basiscash-protocol and basiscash-frontend.

  • Add comments to your code to make it easy for reviewers and fellow VolDevs to understand.