Why def validation_epoch_end() execute at the end of sanity check?

I’m wonder why the code on validation_epoch_end callback launch at the end of sanity check? Even before training starting.