As you develop new applications and features on VA.gov, you will need to have your code reviewed by Platform engineers. The pull request review process helps maintain code quality and stability.

Before you begin

What we look for when we review your code

When Platform engineers do pull request reviews, here are some of the things we're looking for:

  • Correctness: Does the code correctly implement the described feature?

  • Code quality: Is the code readable? Is the code language-idiomatic?

  • Visual changes: are screenshots of the change(s) included?

For more tips, see Pull request best practices.

How to submit a pull request for Platform review

  1. Create a Draft pull request and have your team review it.

  2. Resolve issues flagged by automated code checks. Unresolved issues may block your code from being merged.

  3. Mark your pull request as Ready for Review and wait for a Platform engineer to review your code. (Code is reviewed within 1 business day.)
    Note: For frontend PRs, the additional automated checks can trigger a review from the frontend-review-group, even for code owners.

  4. Resolve all review comments from the Platform engineer.

  5. Merge PR into main branch for deployment.

If your team is using code owners, your code goes through automated checks, but might not be reviewed by a Pltaform engineer. See How we use GitHub code owners for more information.

FAQ

I created a pull request and I meant to create a draft pull request instead. How do I change it to a draft pull request in GitHub?

Underneath the list of reviewers, there's text that says "Still in progress? Convert to draft" and the Convert to draft text is a link to change the PR to a draft.

What do I do if my pull request receives a warning or is rejected because it is too large?

Review your code and decide if you can make two or more smaller, focused pull requests. See Pull request best practices for tips. For help with reducing the size or coordinating a larger review, reach out in Slack. Expect that reviewing a large pull request will take extra time.