The review process that we follow is pretty simple, because we do not want it to be a burden on work.
1. Internal Review
Whenever you finish a ticket, someone in the office (likely Aaron or Andrew) will review your changes to ensure it looks good, and possibly test with hardware we have if there is hardware that needs testing. If either of them have comments or run into problems, ticket moves back to in progress.
2. Inform IFT of progress
Either someone internally or you should inform IFT of the progress we have made after we complete a ticket.
If we want to send IFT a build for them to use, follow step 3 and onwards
If they just need something to test quickly, you could just send them your debug android apk. Skip to step 5 if so.
IFT has a way of controlling what clients get what features through a backend API they use. Justin requested for us to make all new features abide by this. Essentially, we want all new features to be controlled by this "switching" mechanism.
Ideally, you do this before you send the final build because it is annoying to deal with when developing.
Steps to lock a feature behind IFT's feature switching
Ask Blake from IFT to add a new value to the feature switcher. As an example, for the doodle stuff, we can call it "doodleAdditions"
After Blake adds it, you can add areas in your code that disable the doodle functionality if the feature is turned off on IFT's backend.
QML Example:
or
I haven't done it in C++, but it is probably similar.
Probably something like this