How we incrementally built a business rule validation engine to keep up with the changing business and regulatory environment, starting with a custom DSL, and ended up writing a framework to manage rules written in Go and distribute them as pure Go plugins.