feat: ISR with on-demand revalidation
- Pages cache API responses for 1 hour (revalidate: 3600)
- POST /api/revalidate triggers Next.js ISR for all data pages
- Appview invalidate endpoint triggers frontend revalidation
- After publishing new data: POST /xrpc/tv.ionosphere.invalidate
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>