Create apps/ai_agent/tests/test_chat.py covering: missing API key returns 500, valid request returns reply, system prompt contains context, missing message returns 422, missing conversation_id returns 422, and correct model used.
Acceptance criteria:
- 6 tests, all pass
mock_openai fixture used throughout (no direct OpenAI calls)
- System prompt content verified, not just presence
Create
apps/ai_agent/tests/test_chat.pycovering: missing API key returns 500, valid request returns reply, system prompt contains context, missingmessagereturns 422, missingconversation_idreturns 422, and correct model used.Acceptance criteria:
mock_openaifixture used throughout (no direct OpenAI calls)