The proposal is just 'updated', not 'applied' here.  Adding `validate_proposal_after_save` into this branch will, IIUC, break installation. I think `validate_proposal_after_save` should be really named `validate_proposal_after_application` to prevent confusion.