So I have ran XGBoost in R some dozens of times now and always found it strange how when I set the "watchlist" parameter with test set, the metric scores it shows are always better than the actual predictions on the same test set (e.g. higher ROC-AUC or PR-AUC scores on the watchlist on the test set, than the scores for the predictions on the same test set). Can anyone explain why is that?