Goal
Design frontend data fetching that respects user flows, auth state, and backend contracts.
When to Use
- A feature depends on server data.
- The team needs to choose fetch timing and cache behavior.
- Loading, mutation, and refresh strategy are unclear.
Instructions
- Identify the data needed per screen and interaction.
- Define fetch timing, mutation flow, and refresh/invalidation behavior.
- Note auth-gated and permission-sensitive loading.
- Clarify where optimistic UI is safe and where it is not.
Constraints
- Do not hide backend correctness issues behind optimistic UI.
- Keep server state and local UI state conceptually separate.
- Avoid framework-specific advice unless the stack is known.
Output Format
- data dependency map
- fetch and mutation strategy
- cache/invalidation notes
- risks
Examples
- "Plan data fetching for this React dashboard."
- "How should this frontend load and refresh team settings?"