What
The code reviews for code from contributors and from the product team itself are not substantially different. All code being added to KFS must go through a pull request and must be reviewed.
All code coming into KFS will now be reviewed - whether contributed or generated by the product team. Most code reviews will occur off-line as part of the pull request process.
A code review meeting can be called for on an ad-hoc basis if the code in question reaches a certain level of complexity. Of course, in time, the product team hopes that - with contributors working as part of an agile team - we diminish the complexity of code reviews we need to deal with at once.
Pull Request Reviews
When a pull request is made against, https://github.com/kuali/kfs, the product team will be notified. At least one member of the product team will review, though several members may review if the pull requests warrants that level of scrutiny.
If the product team reviewer has questions about the code under review, they'll respond in one of a couple of different venues. We anticipate that most responses will be comments on the pull request itself. If the responses merits a more direct discussion, that discussion will take place in the meeting after the appropriate stand-up.
Outstanding questions or concerns on a pull request must be addressed by the code author; otherwise, the pull request will not be merged by the product team.
In time, the product team is hopeful that a certain amount of automated testing - running the PreCommitSuite for starters or possibly even the full unit test suite for the module(s) being committed to, along with doing certain style checks - will be done as soon as the pull request is created, without the product team even concerning themselves with it until all of those automatic checks pass.
Ad-hoc Code Reviews
If code is of a sufficient complexity, the reviewer(s) on the product team may call for a code review meeting. The product team engineers will set up a time to meet with the authors of the code. Meetings will likely be held on hangouts, where screens can be shared and audio provides a more direct means of communication.