We should think of a way to handle invariant violations. It would be better to drop all data in the backend than have it crap out on problematic data over and over again.