Build and Push / build (release) Successful in 29s
The router had its own local get_hybrid_rag_service factory that was missing the new content_extractor parameter, causing 500 errors. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
115 lines
3.9 KiB
Markdown
115 lines
3.9 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to Library Desk will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [1.2.1] - 2025-12-15
|
|
|
|
### Fixed
|
|
|
|
- HybridRAG router missing `content_extractor` dependency causing 500 errors on `/query/hybrid` endpoint
|
|
|
|
## [1.2.0] - 2025-12-15
|
|
|
|
### Added
|
|
|
|
- **RAG Search Endpoint** (`POST /rag/search`)
|
|
- Web, news, and image search via SearXNG
|
|
- Full content extraction using Trafilatura (F1 score 0.958)
|
|
- Redis caching with configurable TTL
|
|
- Markdown sources summary for LLM consumption
|
|
- Returns both extracted content and original snippets
|
|
|
|
- **Content Extraction Endpoints** (`/content/*`)
|
|
- `POST /content/extract` - Extract content from a single URL
|
|
- `POST /content/extract/batch` - Batch extraction (up to 20 URLs)
|
|
- Reusable ContentExtractor client for use across the codebase
|
|
|
|
- **HybridRAG Content Extraction Enhancement**
|
|
- Web search results now include full extracted content via Trafilatura
|
|
- Falls back to original snippets if extraction fails
|
|
- Improves context quality for LLM re-ranking and consumption
|
|
|
|
### Changed
|
|
|
|
- Added new configuration options:
|
|
- `SEARCH_CACHE_TTL` - Search cache TTL in seconds (default: 300)
|
|
- `SEARCH_TIMEOUT` - SearXNG timeout (default: 10s)
|
|
- `CONTENT_EXTRACTION_TIMEOUT` - Per-URL extraction timeout (default: 5s)
|
|
- `CONTENT_MAX_LENGTH` - Max extracted content length (default: 2000)
|
|
- `SEARCH_DEFAULT_LIMIT` - Default search results (default: 10)
|
|
|
|
### Dependencies
|
|
|
|
- Added `trafilatura~=1.12.0` for content extraction
|
|
|
|
## [1.1.3] - 2025-12-14
|
|
|
|
### Added
|
|
|
|
- Watchtower update trigger in Gitea workflow after successful build
|
|
|
|
## [1.1.2] - 2025-12-14
|
|
|
|
### Fixed
|
|
|
|
- Updated registry login URL in Gitea workflow (git.schweitz.net → git.schweitz.internal)
|
|
|
|
## [1.1.1] - 2025-12-14
|
|
|
|
### Fixed
|
|
|
|
- Updated container registry tag URLs in Gitea workflow (git.schweitz.net → git.schweitz.internal)
|
|
|
|
### Added
|
|
|
|
- Tests for Smart Page Creation feature (`test_smart_create.py`)
|
|
- Model validation tests for WikiSmartCreateRequest/Response
|
|
- WikiService.smart_create_page method tests
|
|
- Bidirectional entity linking utility tests
|
|
- Endpoint validation tests
|
|
|
|
## [1.1.0] - 2025-12-11
|
|
|
|
### Added
|
|
|
|
- **Smart Page Creation Endpoint** (`POST /wiki/pages/smart-create`)
|
|
- Combines HybridRAG research with LLM content generation
|
|
- Searches existing wiki, knowledge graph, and web for topic context
|
|
- Uses WikiPageWriter to synthesize findings into structured wiki content
|
|
- Auto-generates page path from topic if not provided
|
|
- Returns research summary with source counts
|
|
|
|
- **Bidirectional Entity Linking**
|
|
- New shared utility (`entity_linking_utils.py`) for reusable entity linking
|
|
- Forward links: Links entities mentioned in new pages to existing entity pages
|
|
- Backward links: Updates existing pages that mention the new entity
|
|
- Runs automatically in background after smart page creation
|
|
|
|
- **Version Management**
|
|
- Added `pyproject.toml` with project metadata and version
|
|
- Version is now read from `pyproject.toml` (single source of truth)
|
|
- Health check endpoint returns current version
|
|
- FastAPI docs show current version
|
|
|
|
### Changed
|
|
|
|
- Updated `config.py` to read version from `pyproject.toml`
|
|
- Updated `main.py` to use centralized version
|
|
|
|
## [1.0.0] - 2025-12-10
|
|
|
|
### Added
|
|
|
|
- Initial release extracted from portainer-core
|
|
- Wiki page management (`/wiki/pages` CRUD endpoints)
|
|
- HybridRAG search (`/query/hybrid`) with vector, graph, and web search
|
|
- Knowledge graph operations (`/graph/*`)
|
|
- Vector search operations (`/vector/*`)
|
|
- Knowledge consolidation from search results (`/consolidate/knowledge`)
|
|
- Entity linking and extraction
|
|
- Wiki.js change listener for auto-processing user edits
|
|
- Multi-tenant architecture with user namespace isolation
|