Fixes 4 bugs preventing intake blocks from working:
1. Chat API validation: Add 'nudge' to message type enum, allow empty
content for streaming messages
2. AI chat recognition: Add P3 intake intents (intake_status,
risico_query, diagnose_query, intake_navigeer) to system prompt
with triggers, entities, and JSON examples
3. Artifact rendering: Add intake block imports and switch cases
to artifact-container.tsx
4. API 400 error: Convert null to undefined for optional Zod params
(searchParams.get returns null, Zod .optional() expects undefined)
Also adds:
- Testplan for E2E testing (60+ test cases)
- Session log with lessons learned and new intent checklist
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>