Code Review Workflow

There are two parts to our code reviews: the pull request, and the review process.

Pull Request Template

Title

Descriptive title for your issue/task (can be based on referenced issue)

Body

**Reference**: Link(s) to related issue(s) if not auto-populated

**Summary of changes made**:
<explain the changes you've made to the code base>

**Documentation / design update**:
<provide documentation and design information for this change.
 after merging, this will be added to the Development Log.>

**Test Overview**:
<describe the tests that were added with this PR>

**Checklist**:
- [ ] Did you run the existing test suite?
- [ ] Does this build cleanly on a fresh copy of the code?
- [ ] Does the code pass static analysis / lint checks?
- [ ] If new dependencies were added are they documented + included in the build?
- [ ] Have you updated build scripts / makefiles / etc. for new artifacts?

Code Review Template

Your main job when performing a code review is to go through the PR thoroughly. Review each commit, make sure the code works properly, propose fixes, etc. A checklist is provided below for things that you should consider:

**High Level Checks**:
- [ ] Were ALL acceptance criteria met?
- [ ] Is documentation included?
- [ ] Has the design been updated (if needed)?
- [ ] Does the PR have tests?
- [ ] Does the PR follow project code formatting standards?
- [ ] Does the project compile and run?

**Code Checks**:
- [ ] Does the code achieve its intended purpose?
- [ ] Were all edge cases considered? 
- [ ] Is the code organized and maintainable?
- [ ] Does the code add any performance regressions?

Add these items to your CRs. If all acceptance criteria is met and the high level and code checks pass, then the changes can be merged.