5 Commits

Author SHA1 Message Date
Luca Sacchi Ricciardi
0b33cd1619 feat: add support for local LLM providers (Ollama & LM Studio)
Some checks failed
CI / test (3.10) (push) Has been cancelled
CI / test (3.11) (push) Has been cancelled
CI / test (3.12) (push) Has been cancelled
CI / lint (push) Has been cancelled
Implement local LLM inference support for Ollama and LM Studio:

New Clients:
- OllamaClient: Interface to Ollama API (default: localhost:11434)
- LMStudioClient: Interface to LM Studio API (default: localhost:1234)

Factory Updates:
- Added OLLAMA and LMSTUDIO to LLMProvider enum
- Updated create_client() to instantiate local clients
- Updated list_available_providers() with is_local flag

Configuration:
- Added ollama_base_url and lmstudio_base_url settings
- Local providers return configured for API key check

Tests:
- Comprehensive test suite (250+ lines)
- Tests for client initialization and invocation
- Factory integration tests

Documentation:
- Added LLM Providers section to SKILL.md
- Documented setup for Ollama and LM Studio
- Added usage examples and configuration guide

Usage:
  provider: ollama, model: llama3.2
  provider: lmstudio, model: local-model
2026-04-06 18:28:21 +02:00
Luca Sacchi Ricciardi
a5029aef20 test: add comprehensive tests for NotebookLM-RAG integration
Some checks failed
CI / test (3.10) (push) Has been cancelled
CI / test (3.11) (push) Has been cancelled
CI / test (3.12) (push) Has been cancelled
CI / lint (push) Has been cancelled
Add test coverage for new integration components:

New Test Files:
- test_notebooklm_indexer.py: Unit tests for NotebookLMIndexerService
  * test_sync_notebook_success: Verify successful notebook sync
  * test_sync_notebook_not_found: Handle non-existent notebooks
  * test_extract_source_content_success/failure: Content extraction
  * test_delete_notebook_index_success/failure: Index management
  * test_end_to_end_sync_flow: Integration verification

- test_notebooklm_sync.py: API route tests
  * test_sync_notebook_endpoint: POST /notebooklm/sync/{id}
  * test_list_indexed_notebooks_endpoint: GET /notebooklm/indexed
  * test_delete_notebook_index_endpoint: DELETE /notebooklm/sync/{id}
  * test_get_sync_status_endpoint: GET /notebooklm/sync/{id}/status
  * test_query_with_notebook_ids: Query with notebook filters
  * test_query_notebooks_endpoint: POST /query/notebooks

All tests use mocking to avoid external dependencies.
2026-04-06 17:21:06 +02:00
Luca Sacchi Ricciardi
b7ef07dd34 refactor: rename project from AgenticRAG to DocuMente
## Changes
- Update all references from AgenticRAG to DocuMente
- Update README.md with new project description and structure
- Update LICENSE with new project name
- Update API title and descriptions in main.py
- Update frontend components (Layout, Login, Dashboard, Settings)
- Update static HTML page
- Update all documentation files (prd-v2.md, frontend-plan.md, etc.)
- Update test files with new project name
- Update docker-compose.yml, Dockerfile, requirements.txt

## SEO Benefits
- DocuMente combines 'Documento' and 'Mente' (Italian for Document and Mind)
- Memorable and brandable name
- Reflects the core functionality: AI-powered document intelligence

🎉 Project officially renamed to DocuMente!
2026-04-06 13:54:57 +02:00
Luca Sacchi Ricciardi
f6638d5406 test(agentic-rag): add comprehensive unit tests for core, services, and API
## Added
- conftest.py: Shared fixtures and mocks
- test_core/test_config.py: 35 tests for Settings
- test_core/test_logging.py: 15 tests for logging
- test_api/test_chat.py: 27 tests for chat endpoints
- test_api/test_health.py: 27 tests for health endpoints
- test_services/test_document_service.py: 38 tests
- test_services/test_rag_service.py: 66 tests
- test_services/test_vector_store.py: 32 tests

## Coverage
- auth.py: 100%
- config.py: 100%
- logging.py: 100%
- chat.py: 100%
- health.py: 100%
- document_service.py: 96%
- rag_service.py: 100%
- vector_store.py: 100%

Total: 240 tests passing, 64% coverage

🧪 Core functionality fully tested
2026-04-06 13:11:09 +02:00
Luca Sacchi Ricciardi
437a484b1c test(agentic-rag): add comprehensive unit tests for auth, llm_factory, and providers
## Added
- test_auth.py: 19 tests for JWT, API Key, password hashing, and auth flow
- test_llm_factory.py: 21 tests for all 8 LLM providers
- test_providers.py: API route tests for provider management

## Coverage
- Password hashing with bcrypt
- JWT token creation/validation/expiration
- API key verification (admin key)
- Dual-mode authentication (API key + JWT)
- Z.AI, OpenCode Zen, OpenRouter client implementations
- Factory pattern for all providers
- Client caching mechanism

All 40+ tests passing 
2026-04-06 11:27:39 +02:00