Refactor Rule Validation, current implementation relies on persistence
https://trello.com/c/eyull6w9