Ich denke, Ihr Rückgabewert finalQuizs wird vor forEach gefüllt Aussage. Die Update-Abfragen ändern es also nicht wie erwartet. Dies ist der Grund für aktualisierte Daten nach der Seitenaktualisierung.
Wenn Sie user_participated: true erwarten im zurückgegebenen Wert sollten Sie ihn nach findOneAndUpdate erhalten line. Sie sollten so etwas am Ende von try tun blockieren:
return await newQuiz.findAll();