Please make sure that it is three-step approach, you need to go back and remove the old branches eventually. As long as the other branches exist they complicate future changes.
Good point. You are right, in some cases, it is three-step. While writing this I implicitly assumed the deletion of old code.
A commit to turn a flag on?
You are storing flag values somewhere. If you are not using git commit to turn them on then you must have a different full-fledged system to record when the flag was modified, by whom, and who approved it.