Certain domain objects (such as Nodes) are expected to be immutable once persisted to the database. Triggers and other system objects are written within this constraint. As it is, ActiveRecord objects are not limited in calling update or destroy on already persisted objects. This is clearly broken and needs to be resolved with model classes such as Nodes being protected entirely from modification once persisted.