Как заставить все запросы ждать один промис?
Можете использовать очередь
Пример:'use strict';

const { Queue } = require('plain-queue');
const queue = new Queue;

// внутри async function
    chat.quiz = global_quizzes[quiz_id];
    
    if(!chat.quiz) {
        chat.quiz = await queue.addTask(function () {
            return global_quizzes[quiz_id] || Chat_Quizzes.findById(quiz_id).exec();
        });

        global_quizzes[quiz_id] = chat.quiz;
    }
ОРМ  +КЕШ...