[update] Validations to use invariant