-
Check out a new branch from
mainwith the name format<ticket_id>/<description>- e.g.,DEV-60/revert-note-on-cancel -
When ready, open a Pull Request (PR)
- Title: brief description + ticket ID - e.g. Revert saved note on cancel (DEV-142)
- Description:
- If the PR is a straightforward implementation of ticket Acceptance Criteria (AC), you only need to include the ticket ID - e.g., DEV-142
- If there was anything special to note, it should be included in the description. e.g.:
- Assign the PR to yourself
-
🛠️ For engineering reviews (required for all PRs):
-
For the PR author:
-
in Jira, move ticket from "In Progress" to "Review"
-
in #tech-team-engineering, paste a link to the PR and tag someone from eng - e.g., @mike Revert saved note on cancel (DEV-142)
- if the PR is for something simple that needs to go out quickly (e.g., bumping expo dependencies), you can tag the whole team. - i.e., @engineering
-
request a review from that person in the PR
- if you tagged the team, whoever responds should self-request a review
-
-
For the reviewer:
- For PRs that add or modify FE behavior or design, do a quick QC pass in the app/simulator to ensure AC was satisfied and no regressions were introduced.
- Post any questions, comments, change requests, etc.
- In slack, "reply in thread", letting the PR author know whether you approved the PR or had comments/questions/changes.
-
revision -> re-review process continues until PR is approved.
- All PR comments/responses should be in the PR comments
- All updates re: the status of the PR should be in the slack thread for that PR
- For major revisions (anything that won't be ready for re-review within a day), the ticket should be moved back to "In Progress"
-
-
📱 For product reviews (required only for PRs that add or modify FE behavior or design):
- For the PR author:
- in Jira, move ticket to "Product Acceptance"
- in #tech-qc-testing, paste a link to the PR and tag product - e.g., @product Revert saved note on cancel (DEV-142)
- For the reviewer:
- Post any questions, comments, change requests, etc. in PR comments
- In slack, "reply in thread", letting the PR author know whether you approved the PR or had comments/questions/changes.
- revision -> re-review process continues until PR is approved.
- All PR comments/responses should be in the PR comments
- All updates re: the status of the PR should be in the slack thread for that PR
- For major revisions (anything that won't be ready for re-review within a day), the ticket should be moved back to "In Progress"
- If the product review requires major revisions to the code, another engineering review may be required.
- For the PR author:
-
Once you have the necessary approvals:
- Squash merge the PR. Before confirming the merge, clear the autogenerated "optional extended description". You can add comments or a description if you want, but we don't want to commit the list of squashed commits.
- Once the PR has been merged, move the corresponding ticket to "Done"
- The PR author is responsible for advancing the PR to completion. At standup:
- list the PRs you're waiting for reviews on (tag the reviewer in your standup notes)
- mention any blockers - e.g., another PR/ticket is blocking yours, you ran into a bug you need help with, unclear requirements, etc.
- The reviewer is responsible for providing timely reviews.
- Acknowledge that you saw the post by replying with a 👍
- When you begin your review, reply with a 👀
- If you don't think you'll be able to provide a review within time suggested below, please let the PR author know.
- Small: 1 hour - e.g.:
- Bug fixes
- Minor feature enhancements
- Small refactoring tasks
- Updating documentation
- Medium: 5 hours - e.g.:
- Adding a new feature
- Significant refactoring of a module
- Updating multiple parts of the application
- Large: next day, end of day - e.g.:
- Major feature implementation
- Large-scale refactoring
- Rewriting a substantial part of the application
- Merging long-lived branches
- For very large PRs, consider asking the author if the PR can be broken up into smaller pieces. Generally, if a PR is large because it includes AC from multiple tickets, it should be broken into smaller PRs aligned with the ticket requirements.
- Small: 1 hour - e.g.: