Promise.allSettled, for when one failure must not lose the rest

Promise.all rejects on the first failure and discards every other result, including the ones that had already succeeded.

const results = await Promise.allSettled([
  fetchOrders(), fetchCustomers(), fetchProducts(),
]);

const ok = results
  .filter(r => r.status === 'fulfilled')
  .map(r => r.value);

results
  .filter(r => r.status === 'rejected')
  .forEach(r => report(r.reason));

The result objects have a status discriminator rather than being the values, which is more verbose and is what makes partial success expressible at all. It never rejects, so a missing catch is not a bug here — which is a genuine difference in how the call site reads. For a dashboard assembling several independent panels this is the correct primitive and Promise.all is the wrong one.