refactor: reorganize folder structure for better maintainability

Changes:
- Move migrations/ under open_notebook/database/migrations/
- Extract AI models to open_notebook/ai/ (Model, ModelManager, provision)
- Extract podcasts to open_notebook/podcasts/ (EpisodeProfile, SpeakerProfile, PodcastEpisode)
- Reorganize prompts to mirror graphs structure (chat/, source_chat/)

This improves code organization by:
- Consolidating database concerns (migrations now with database code)
- Separating AI infrastructure from domain entities
- Isolating podcast feature into its own module
- Creating consistent prompt/graph naming conventions

All 52 tests pass.
This commit is contained in:
LUIS NOVO 2026-01-03 14:04:27 -03:00
parent 93cda6c42a
commit ab5560c9a2
48 changed files with 50 additions and 47 deletions

View file

@ -0,0 +1,12 @@
-- Migration 8: Support chat sessions for both notebooks and sources
-- This migration allows chat_session to refer to either a notebook or a source
DEFINE TABLE OVERWRITE refers_to
TYPE RELATION
FROM chat_session TO notebook|source;
-- Add model_override field to chat_session for per-session model selection
DEFINE FIELD model_override ON chat_session TYPE option<string>;
DEFINE FIELD command ON source TYPE option<record<command>>;