Typed config: A refactor story

Back in my days with Google Cloud Support, we wrote and maintained a case automation system. It would regularly inspect all our support cases and apply rules against them that checked for certain conditions and then executed certain actions. Our config was a text protobuf specifying each of the rules something like: On initialization the [ ]