Oi Carlos, obrigado pela dica!
Então, a ideia é resolver todas as chamadas da função a() com apenas uma request à api.
de fato, hooks é um objeto que tem todas as chamadas pendentes {id:promiseId, ...} que pode retornar o array para usar o .all, o que eu não fiz.
buffer tem estrutura semelhante,
{id: "argumentosParaConsulta", ...}
A função b(), quando acionada, pega os dados do buffer e faz esse fetch. Recebendo um JSON com todas as informações processadas e deveria usar ele para identificar qual informação é referente a qual promises e resolver todas.
Porém quando tento resolver as promises dentro de b() por um loop, pegando os identificadores e consultando hooks[id].resolve (valor) não da certo... retorna que resolve não é uma função ou erro diferente.
Não sei como o Promises.All poderia me ajudar neste caso.