# Changelog

All notable changes to RAGbot will be documented in this file.

## [2.0.0] - 2025

### Added
- **Multi-LLM Support**: Choose between Gemini, OpenAI (ChatGPT), or Claude
- **Multi-Domain Indexing**: Index up to 3 different domains with per-domain controls
- **Document Upload**: Bulk upload and index PDF, DOCX, PPTX, XLSX, TXT, XML, CSV files
- **Conversation Memory**: Maintains last 5 Q&A turns per session for context
- **Smart Follow-ups**: Generates 3 suggested questions when answer not found
- **Widget Customization**: Custom color, logo, position (bottom-right/left)
- **Theme CSS Integration**: Option to inherit theme styles
- **Pre-chat Form**: Optional name/email collection before chat starts
- **Chat Logs**: Full conversation logging with session tracking
- **CSV Export**: Export chat logs to CSV file
- **Shortcode Support**: `[ragbot_chat]` and `[ragbot_chat inline="true"]`
- **Tabbed Settings UI**: Organized into General, Indexing, Models, UI/UX, Help, Chat Logs tabs
- **Source Management**: CRUD interface for managing multiple content sources
- **Transparent Loader**: Clean loading indicators without white boxes
- **ClientFactory**: Centralized LLM client management
- **SessionManager**: Server-side session handling for conversation memory
- **FollowUpGenerator**: AI-powered follow-up question generation
- **DocumentParser**: Extract text from various document formats

### Changed
- Database schema extended with `rag_sources` and `rag_logs` tables
- `rag_docs` table now includes `source_id` column
- Settings structure reorganized for V2 features
- Indexer now supports source_id parameter
- Retriever uses ClientFactory for embedding client
- Chat Controller logs conversations and supports user info
- Widget automatically adapts to customization settings
- Default chunk size increased to 1000 chars
- Default overlap increased to 180 chars
- Default similarity threshold increased to 0.80

### Fixed
- Loader now has transparent background instead of white box
- API key check supports all configured models
- Widget position properly applies from settings
- Admin loader uses consistent styling

### Security
- All AJAX endpoints verify nonces
- User input sanitized and escaped
- Rate limiting maintained at 10 req/60s/IP
- Capability checks on all admin functions

## [1.0.0] - 2024

### Added
- Initial release
- Google Gemini integration for embeddings and generation
- Website crawling via sitemap and BFS
- Content extraction and chunking
- Vector embeddings with cosine similarity
- RAG-based question answering
- Source citation system
- File upload support (TXT, HTML, MD, PDF)
- Mobile-responsive chat widget
- Admin settings interface
- Rate limiting and security features
- WordPress coding standards compliance
- i18n support

[2.0.0]: https://github.com/yourusername/ragbot/compare/v1.0.0...v2.0.0
[1.0.0]: https://github.com/yourusername/ragbot/releases/tag/v1.0.0
