The key output order is A -> C -> B. `await` yields control even when the promise is already resolved.
The UI, test, redirect, or log moves forward before the async result is actually ready. Await points can let other code observe intermediate state.
Thinking `await Promise.resolve()` continues synchronously.
Await real dependencies, start independent work together, and choose the loop pattern that matches the behavior you need.
const [user, posts] = await Promise.all([ fetchUser(), fetchPosts() ]);
The console lane proves the visible order: A -> C -> B. The active line and queues show why source order changed.
Measure before and after with logs or test spies: the dependent line should run only after the awaited operation finishes.
Related cases
Continue with nearby confusion while the mental model is fresh.
Was this clear?
This stays local for now. It helps you track where the product still needs sharper cases.