Barclays-banner-builder/backend/app/models
Vadym Samoilenko 7e82a535a9 Add conversational brief interface (AC1 chat-style)
Replaces the one-shot form with a Copygen-style chat at
/conversations/:id. Each turn is classified as generate / refine /
clarify by a lightweight LLM intent router; generate and refine intents
enqueue an RQ job that produces a new BannerSet, while clarify returns
an inline reply without touching banners.

New backend:
- Conversation + ConversationMessage models + migration 0005
- intent_router service (chat_structured, 3-intent schema)
- chat_turn RQ task with _persist_banner_set helper extracted from
  _generate_copy_async for reuse
- /api/conversations CRUD + POST /messages endpoint
- JobType.CHAT_TURN added

New frontend:
- ChatBrief page: message bubbles, inline BannerPreview cards with
  checkbox selection and "Open banner editor" CTA (same Medium+Large
  validation rule as VariantsGrid)
- ConversationLanding: /conversations/new creates and redirects
- conversationId added to journey store
- "New Brief" nav now points to /conversations/new
- Default route redirects to /conversations/new

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 21:53:17 +01:00
..
__init__.py Add conversational brief interface (AC1 chat-style) 2026-04-28 21:53:17 +01:00
banner.py AC3 in-situ banner visualisation — Medium/Large model, icons, themes, BannerPreview 2026-04-28 20:30:43 +01:00
base.py Add full Sprint 0+1 implementation: Docker, FastAPI, React, RAG, deploy 2026-04-17 12:01:42 +01:00
brief.py Add full Sprint 0+1 implementation: Docker, FastAPI, React, RAG, deploy 2026-04-17 12:01:42 +01:00
conversation.py Add conversational brief interface (AC1 chat-style) 2026-04-28 21:53:17 +01:00
dam_cache.py Add full Sprint 0+1 implementation: Docker, FastAPI, React, RAG, deploy 2026-04-17 12:01:42 +01:00
icon.py Add full Sprint 0+1 implementation: Docker, FastAPI, React, RAG, deploy 2026-04-17 12:01:42 +01:00
job.py Add conversational brief interface (AC1 chat-style) 2026-04-28 21:53:17 +01:00
rag.py Add full Sprint 0+1 implementation: Docker, FastAPI, React, RAG, deploy 2026-04-17 12:01:42 +01:00
system_prompt.py Replace TOV checkboxes with free-text field (tov_text) 2026-04-17 14:05:51 +01:00
user.py Add full Sprint 0+1 implementation: Docker, FastAPI, React, RAG, deploy 2026-04-17 12:01:42 +01:00