- Create InterviewerAgent with Socratic questioning and RAG context
- Build SynthesizerAgent for transcript segmentation and link generation
- Integrate Google Gemini models (Flash for interviewing, Pro for synthesis)
- Add structured output parsing for Zettel extraction and linking
- Implement session termination detection with [END_SESSION] token
- Add conversation context formatting and similarity-based neighbor filtering
- Add vector service tests with mocked ChromaDB and embeddings
- Test interviewer agent RAG conversations and session termination
- Test synthesizer agent transcript formatting and neighbor analysis
- Add prompt loader tests for external prompt system
- Test all repository CRUD operations and database transactions
- Create VectorService with ChromaDB persistence and Google embeddings
- Add semantic search functionality with similarity scoring
- Implement externalized prompt system with text file storage
- Add prompt loader with caching for better performance
- Structure prompts for interviewer, segmentation, and linking agents
- Define SQLModel schemas for Session, Note, and Link entities
- Add API request/response models for RPC endpoints
- Create LLM structured output models for Zettel extraction
- Set up async database initialization with SQLModel and aiosqlite
- Implement repository pattern for CRUD operations
- Add complete test suite with pytest configuration
- Create validation test runner for development workflow
- Add .gitignore for Python/FastAPI project security