Does it make sense or is it feasible to use a real `upsert` operation instead of routing to `registerNew` or `registerDirty`? This would open the possibility to upsert by external id.