aggregate() now fires every configured provider's startFetch() in one pass before resolving any of them, so wall-clock cost is roughly max(providers) instead of sum(providers). Partial-failure isolation and per-date summation behavior are unchanged.
aggregate() now fires every configured provider's startFetch() in one pass before resolving any of them, so wall-clock cost is roughly max(providers) instead of sum(providers). Partial-failure isolation and per-date summation behavior are unchanged.