Typed API Client Consumption
- Consume shared types from
packages/shared. - Render loading, empty, error, and success states.
- Surface backend errors usefully without hiding contract failures.
- Add Playwright smoke coverage for user-visible API-backed behavior.