lifecycle event scheduling happens directly instead of in a delay proxy so they are part of the object's transaction