There are really 2 types of update... filters delete, and sanitizers change... but I've gone back and forth about whether I want to expose that outside of the database or just let the upper layers have a simple api where for any batch they can pass old and new records in and let the database deal with the rest.

I'm going to mull on this more, how do you feel about merging this piece as is?