Humans are bad at boring repetitive tasks. There are no tasks more boring and repetitive than running a set of tests and waiting for them to finish.
Computers are excellent at boring and repetitive tasks, but are terrible at making judgement calls. A computer can easily run tests over and over again and consistently report success or failure.
Gating empowers humans to focus on creativity and judgement by completely removing their ability to do boring tasks like merging code if and only if if works.
In a gating system:
- Humans never merge changes, only computers
- Computers automatically merge changes when all tests pass
- Human code review approval can safely be fire and forget