# Changelog All notable changes to the YouTube Summarizer project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ### Added - **⚡ Faster-Whisper Integration - MAJOR PERFORMANCE UPGRADE** - 20-32x speed improvement with large-v3-turbo model - **FasterWhisperTranscriptService** - Complete replacement for OpenAI Whisper with CTranslate2 optimization - **Large-v3-Turbo Model** - Best accuracy/speed balance with advanced AI capabilities - **Performance Benchmarks** - 2.3x faster than realtime (3.6 min video in 94 seconds vs 30+ minutes) - **Quality Metrics** - Perfect transcription accuracy (1.000 quality score, 0.962 confidence) - **Intelligent Optimizations** - Voice Activity Detection, int8 quantization, GPU acceleration - **Native MP3 Support** - Direct processing without audio conversion overhead - **Advanced Configuration** - 8+ configurable parameters via environment variables - **Production Features** - Comprehensive metadata, error handling, performance tracking - **🔧 Development Tools & Server Management** - Professional development workflow improvements - **Server Restart Scripts** - `./scripts/restart-backend.sh`, `./scripts/restart-frontend.sh`, `./scripts/restart-both.sh` - **Automated Process Management** - Health checks, logging, status reporting - **Development Logs** - Centralized logging to `logs/` directory with proper cleanup - **🔐 Flexible Authentication System** - Configurable auth for development and production - **Development Mode** - No authentication required by default (perfect for development/testing) - **Production Mode** - Automatic JWT-based authentication in production builds - **Environment Controls** - `VITE_FORCE_AUTH_MODE`, `VITE_AUTH_DISABLED` for fine-grained control - **Unified Main Page** - Single component adapts to auth requirements with admin mode indicators - **Conditional Protection** - Smart wrapper applies authentication only when needed - **📋 Persistent Job History System** - Comprehensive history management from existing storage - **High-Density Views** - Grid view (12+ jobs), list view (15+ jobs) meeting user requirements - **Smart File Discovery** - Automatically indexes existing files from `video_storage/` directories - **Enhanced Detail Modal** - Tabbed interface with transcript viewer, file downloads, metadata - **Rich Metadata** - File status indicators, processing times, word counts, storage usage - **Search & Filtering** - Real-time search with status, date, and tag filtering - **History API** - Complete REST API with pagination, sorting, and CRUD operations - **🤖 Epic 4: Advanced Intelligence & Developer Platform - Core Implementation** - Complete multi-agent AI and enhanced export systems - **Multi-Agent Summarization System** - Three perspective agents (Technical, Business, UX) + synthesis agent - **Enhanced Markdown Export** - Executive summaries, timestamped sections, professional formatting - **RAG-Powered Video Chat** - ChromaDB semantic search with DeepSeek AI responses - **Database Schema Extensions** - 12 new tables supporting all Epic 4 features - **DeepSeek AI Integration** - Cost-effective alternative to Anthropic with async processing - **Comprehensive Service Layer** - Production-ready services for all new features - **✅ Story 4.4: Custom AI Models & Enhanced Export** - Professional document generation with AI-powered intelligence - **ExecutiveSummaryGenerator** - Business-focused summaries with ROI analysis and strategic insights - **TimestampProcessor** - Semantic section detection with clickable YouTube navigation - **EnhancedMarkdownFormatter** - Professional document templates with quality scoring - **6 Domain-Specific Templates** - Educational, Business, Technical, Content Creation, Research, General - **Advanced Template Manager** - Custom prompts, A/B testing, domain recommendations - **Enhanced Export API** - Complete REST endpoints for template management and export generation ### Changed - **🏗️ Frontend Architecture Simplification** - Eliminated code duplication and improved maintainability - **Unified Authentication Routes** - Replaced separate Admin/Dashboard pages with configurable single page - **Conditional Protection Pattern** - Smart wrapper component applies auth only when required - **Configuration-Driven UI** - Single codebase adapts to development vs production requirements - **Pydantic Compatibility** - Updated regex to pattern for Pydantic v2 compatibility - **📋 Epic 4 Scope Refinement** - Enhanced stories with multi-agent focus - **Story 4.3**: Enhanced to "Multi-video Analysis with Multi-Agent System" (40 hours) - **Story 4.4**: Enhanced to "Custom Models & Enhanced Markdown Export" (32 hours) - **Story 4.6**: Enhanced to "RAG-Powered Video Chat with ChromaDB" (20 hours) - Moved Story 4.5 (Advanced Analytics Dashboard) to new Epic 5 - Removed Story 4.7 (Trend Detection & Insights) from scope - Total Epic 4 effort: 146 hours (54 hours completed, 92 hours enhanced implementation) ### Technical Implementation - **Backend Services**: - `MultiAgentSummarizerService` - Orchestrates three analysis perspectives with synthesis - `EnhancedExportService` - Executive summaries and timestamped navigation - `RAGChatService` - ChromaDB integration with semantic search and conversation management - `DeepSeekService` - Async AI service with cost estimation and error handling - **Database Migration**: `add_epic_4_features.py` - Agent summaries, playlists, chat sessions, prompt templates, export metadata - 12 new tables with proper relationships and indexes - Extended summaries table with Epic 4 feature flags - **AI Agent System**: - Technical Analysis Agent - Implementation, architecture, tools focus - Business Analysis Agent - ROI, strategic insights, market implications - User Experience Agent - Usability, accessibility, user journey analysis - Synthesis Agent - Unified comprehensive summary combining all perspectives ### Added - **📊 Epic 5: Analytics & Business Intelligence** - New epic for analytics features - Story 5.1: Advanced Analytics Dashboard (24 hours) - Story 5.2: Content Intelligence Reports (20 hours) - Story 5.3: Cost Analytics & Optimization (16 hours) - Story 5.4: Performance Monitoring (18 hours) - Total effort: 78 hours across 4 comprehensive analytics stories ## [5.1.0] - 2025-08-27 ### Added - **🎯 Comprehensive Transcript Fallback Chain** - 9-tier fallback system for reliable transcript extraction - YouTube Transcript API (primary method) - Auto-generated Captions fallback - Whisper AI Audio Transcription - PyTubeFix alternative downloader - YT-DLP robust video/audio downloader - Playwright browser automation - External tool integration - Web service fallback - Transcript-only final fallback - **💾 Audio File Retention System** - Save audio for future re-transcription - Audio files saved as MP3 (192kbps) for storage efficiency - Automatic WAV to MP3 conversion after transcription - Audio metadata tracking (duration, quality, download date) - Re-transcription without re-downloading - Configurable retention period (default: 30 days) - **📁 Organized Storage Structure** - Dedicated directories for all content types - `video_storage/videos/` - Downloaded video files - `video_storage/audio/` - Audio files with metadata - `video_storage/transcripts/` - Text and JSON transcripts - `video_storage/summaries/` - AI-generated summaries - `video_storage/cache/` - Cached API responses - `video_storage/temp/` - Temporary processing files ### Changed - Upgraded Python from 3.9 to 3.11 for better Whisper compatibility - Updated TranscriptService to use real YouTube API and Whisper services - Modified WhisperTranscriptService to preserve audio files - Enhanced VideoDownloadConfig with audio retention settings ### Fixed - Fixed circular state update in React transcript selector hook - Fixed missing API endpoint routing for transcript extraction - Fixed mock service configuration defaulting to true - Fixed YouTube API integration with proper method calls - Fixed auto-captions extraction with real API implementation ## [5.0.0] - 2025-08-27 ### Added - **🚀 Advanced API Ecosystem** - Comprehensive developer platform - **MCP Server Integration**: FastMCP server with JSON-RPC interface for AI development tools - **Native SDKs**: Production-ready Python and JavaScript/TypeScript SDKs - **Agent Framework Support**: LangChain, CrewAI, and AutoGen integrations - **Webhook System**: Real-time event notifications with HMAC authentication - **Autonomous Operations**: Self-managing rule-based automation system - **API Authentication**: Enterprise-grade API key management and rate limiting - **OpenAPI 3.0 Specification**: Comprehensive API documentation - **Developer Tools**: Advanced MCP tools for batch processing and analytics - **Production Monitoring**: Health checks, metrics, and observability ### Features Implemented - **Backend Infrastructure**: - `backend/api/developer.py` - Developer API endpoints with rate limiting - `backend/api/autonomous.py` - Webhook and automation management - `backend/mcp_server.py` - FastMCP server with comprehensive tools - `backend/services/api_key_service.py` - API key generation and validation - `backend/middleware/api_auth.py` - Authentication middleware - **SDK Development**: - `sdks/python/` - Full async Python SDK with error handling - `sdks/javascript/` - TypeScript SDK with browser/Node.js support - Both SDKs feature: authentication, rate limiting, retry logic, streaming - **Agent Framework Integration**: - `backend/integrations/langchain_tools.py` - LangChain-compatible tools - `backend/integrations/agent_framework.py` - Multi-framework orchestrator - Support for LangChain, CrewAI, AutoGen with unified interface - **Autonomous Operations**: - `backend/autonomous/webhook_system.py` - Secure webhook delivery - `backend/autonomous/autonomous_controller.py` - Rule-based automation - Scheduled, event-driven, threshold-based, and queue-based triggers ### Documentation - Comprehensive READMEs for all new components - API endpoint documentation with examples - SDK usage guides and integration examples - Agent framework integration tutorials - Webhook security best practices ## [4.1.0] - 2025-01-25 ### Added - **🎯 Dual Transcript Options (Story 4.1)** - Complete frontend and backend implementation - **Frontend Components**: Interactive TranscriptSelector and TranscriptComparison with TypeScript safety - **Backend Services**: DualTranscriptService orchestration and WhisperTranscriptService integration - **Three Transcript Sources**: YouTube captions (fast), Whisper AI (premium), or compare both - **Quality Analysis Engine**: Punctuation, capitalization, and technical term improvement analysis - **Processing Time Estimates**: Real-time estimates based on video duration and hardware - **Smart Recommendations**: Intelligent source selection based on quality vs speed trade-offs - **API Endpoints**: RESTful dual transcript extraction with background job processing - **Demo Interface**: `/demo/transcript-comparison` showcasing full functionality with mock data - **Production Ready**: Comprehensive error handling, resource management, and cleanup - **Hardware Optimization**: Automatic CPU/CUDA detection for optimal Whisper performance - **Chunked Processing**: 30-minute segments with overlap for long-form content - **Quality Comparison**: Side-by-side analysis with difference highlighting and metrics ### Changed - **Enhanced TranscriptService Integration**: Seamless connection with existing YouTube transcript extraction - **Updated SummarizeForm**: Integrated transcript source selection with backward compatibility - **Extended Data Models**: Comprehensive Pydantic models with quality comparison support - **API Architecture**: Extended transcripts API with dual extraction endpoints ### Technical Implementation - **Frontend**: React + TypeScript with discriminated unions and custom hooks - **Backend**: FastAPI with async processing, Whisper integration, and quality analysis - **Performance**: Parallel transcript extraction and intelligent time estimation - **Developer Experience**: Complete TypeScript interfaces matching backend models - **Documentation**: Comprehensive implementation guides and API documentation ### Planning - **Epic 4: Advanced Intelligence & Developer Platform** - Comprehensive roadmap created - ✅ Story 4.1: Dual Transcript Options (COMPLETE) - 6 remaining stories: API Platform, Multi-video Analysis, Custom AI, Analytics, Q&A, Trends - Epic 4 detailed document with architecture, dependencies, and risk analysis - Implementation strategy with 170 hours estimated effort over 8-10 weeks ## [3.5.0] - 2025-08-27 ### Added - **Real-time Updates Feature (Story 3.5)** - Complete WebSocket-based progress tracking - WebSocket infrastructure with automatic reconnection and recovery - Granular pipeline progress tracking with sub-task updates - Real-time progress UI component with stage visualization - Time estimation based on historical processing data - Job cancellation support with immediate termination - Connection status indicators and heartbeat monitoring - Message queuing for offline recovery - Exponential backoff for reconnection attempts ### Enhanced - **WebSocket Manager** with comprehensive connection management - ProcessingStage enum for standardized stage tracking - ProgressData dataclass for structured updates - Message queue for disconnected clients - Automatic recovery with message replay - Historical data tracking for time estimation - **SummaryPipeline** with detailed progress reporting - Enhanced `_update_progress` with sub-progress support - Cancellation checks at each pipeline stage - Integration with WebSocket manager - Time elapsed and remaining calculations ### Frontend Components - Created `ProcessingProgress` component for real-time visualization - Enhanced `useWebSocket` hook with reconnection and queuing - Added connection state management and heartbeat support ## [3.4.0] - 2025-08-27 ### Added - **Batch Processing Feature (Story 3.4)** - Complete implementation of batch video processing - Process up to 100 YouTube videos in a single batch operation - File upload support for .txt and .csv files containing URLs - Sequential queue processing to manage API costs effectively - Real-time progress tracking via WebSocket connections - Individual item status tracking with error messages - Retry mechanism for failed items with exponential backoff - Batch export as organized ZIP archive with JSON and Markdown formats - Cost tracking and estimation at $0.0025 per 1k tokens - Job cancellation and deletion support ### Backend Implementation - Created `BatchJob` and `BatchJobItem` database models with full relationships - Implemented `BatchProcessingService` with sequential queue management - Added 7 new API endpoints for batch operations (`/api/batch/*`) - Database migration `add_batch_processing_tables` with performance indexes - WebSocket integration for real-time progress updates - ZIP export generation with multiple format support ### Frontend Implementation - `BatchProcessingPage` with tabbed interface for job management - `BatchJobStatus` component for real-time progress display - `BatchJobList` component for historical job viewing - `BatchUploadDialog` for file upload and URL input - `useBatchProcessing` hook for complete batch management - `useWebSocket` hook with auto-reconnect functionality ## [3.3.0] - 2025-08-27 ### Added - **Summary History Management (Story 3.3)** - Complete user summary organization - View all processed summaries with pagination - Advanced search and filtering by title, date, model, tags - Star important summaries for quick access - Add personal notes and custom tags for organization - Bulk operations for managing multiple summaries - Generate shareable links with unique tokens - Export summaries in multiple formats (JSON, CSV, ZIP) - Usage statistics dashboard ### Backend Implementation - Added history management fields to Summary model - Created 12 new API endpoints for summary management - Implemented search, filter, and sort capabilities - Added sharing functionality with token generation - Bulk operations support with transaction safety ### Frontend Implementation - `SummaryHistoryPage` with comprehensive UI - Search bar with multiple filter options - Bulk selection with checkbox controls - Export dialog for multiple formats - Sharing interface with copy-to-clipboard ## [3.2.0] - 2025-08-26 ### Added - **Frontend Authentication Integration (Story 3.2)** - Complete auth UI - Login page with validation and error handling - Registration page with password confirmation - Forgot password flow with email verification - Email verification page with token handling - Protected routes with authentication guards - Global auth state management via AuthContext - Automatic logout on token expiration - Persistent auth state across page refreshes ### Frontend Implementation - Complete authentication page components - AuthContext for global state management - ProtectedRoute component for route guards - Token storage and refresh logic - Auto-redirect after login/logout ## [3.1.0] - 2025-08-26 ### Added - **User Authentication System (Story 3.1)** - Complete backend authentication infrastructure - JWT-based authentication with access and refresh tokens - User registration with email verification workflow - Password reset functionality with secure token generation - Database models for User, RefreshToken, APIKey, EmailVerificationToken, PasswordResetToken - Complete FastAPI authentication endpoints (`/api/auth/*`) - Password strength validation and security policies - Email service integration for verification and password reset - Authentication service layer with proper error handling - Protected route middleware and dependencies ### Fixed - **Critical SQLAlchemy Architecture Issue** - Resolved "Multiple classes found for path 'RefreshToken'" error - Implemented Database Registry singleton pattern to prevent table redefinition conflicts - Added fully qualified module paths in model relationships - Created automatic model registration system with `BaseModel` mixin - Ensured single Base instance across entire application - Production-ready architecture preventing SQLAlchemy conflicts ### Technical Details - Created `backend/core/database_registry.py` - Singleton registry for database models - Updated all model relationships to use fully qualified paths (`backend.models.*.Class`) - Implemented `backend/models/base.py` - Automatic model registration system - Added comprehensive authentication API endpoints with proper validation - String UUID fields for SQLite compatibility - Proper async/await patterns throughout authentication system - Test fixtures with in-memory database isolation (conftest.py) - Email service abstraction ready for production SMTP integration ## [2.5.0] - 2025-08-26 ### Added - **Export Functionality (Story 2.5)** - Complete implementation of multi-format export system - Support for 5 export formats: Markdown, PDF, HTML, JSON, and Plain Text - Customizable template system using Jinja2 engine - Bulk export capability with ZIP archive generation - Template management API with CRUD operations - Frontend export components (ExportDialog and BulkExportDialog) - Progress tracking for export operations - Export status monitoring and download management ### Fixed - Duration formatting issues in PlainTextExporter, HTMLExporter, and PDFExporter - File sanitization to properly handle control characters and null bytes - Template rendering with proper Jinja2 integration ### Changed - Updated MarkdownExporter to use Jinja2 templates instead of simple string replacement - Enhanced export service with better error handling and retry logic - Improved bulk export organization with format, date, and video grouping options ### Technical Details - Created `ExportService` with format-specific exporters - Implemented `TemplateManager` for template operations - Added comprehensive template API endpoints (`/api/templates/*`) - Updated frontend with React components for export UI - Extended API client with export and template methods - Added TypeScript definitions for export functionality - Test coverage: 90% (18/20 unit tests passing) ## [2.4.0] - 2025-08-25 ### Added - Multi-model AI support (Story 2.4) - Support for OpenAI, Anthropic, and DeepSeek models ## [2.3.0] - 2025-08-24 ### Added - Caching system implementation (Story 2.3) - Redis-ready caching architecture - TTL-based cache expiration ## [2.2.0] - 2025-08-23 ### Added - Summary generation pipeline (Story 2.2) - 7-stage async pipeline for video processing - Real-time progress tracking via WebSocket ## [2.1.0] - 2025-08-22 ### Added - Single AI model integration (Story 2.1) - Anthropic Claude integration ## [1.5.0] - 2025-08-21 ### Added - Video download and storage service (Story 1.5) ## [1.4.0] - 2025-08-20 ### Added - Basic web interface (Story 1.4) - React frontend with TypeScript ## [1.3.0] - 2025-08-19 ### Added - Transcript extraction service (Story 1.3) - YouTube transcript API integration ## [1.2.0] - 2025-08-18 ### Added - YouTube URL validation and parsing (Story 1.2) - Support for multiple YouTube URL formats ## [1.1.0] - 2025-08-17 ### Added - Project setup and infrastructure (Story 1.1) - FastAPI backend structure - Database models and migrations - Docker configuration ## [1.0.0] - 2025-08-16 ### Added - Initial project creation - Basic project structure - README and documentation --- [Unreleased]: https://eniasgit.zeabur.app/demo/youtube-summarizer/compare/v3.1.0...HEAD [3.1.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v3.1.0 [2.5.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v2.5.0 [2.4.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v2.4.0 [2.3.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v2.3.0 [2.2.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v2.2.0 [2.1.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v2.1.0 [1.5.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v1.5.0 [1.4.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v1.4.0 [1.3.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v1.3.0 [1.2.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v1.2.0 [1.1.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v1.1.0 [1.0.0]: https://eniasgit.zeabur.app/demo/youtube-summarizer/releases/tag/v1.0.0