- Replaced `get_container_db_async_session` with `async_session_maker` for improved session handling in background tasks.
- Refactored chat memory services to utilize a shared `mem0` client for better memory management.
- Introduced new methods for retrieving and storing chat history, integrating with SQL and memory layers.
- Enhanced error handling and response management in chat-related services.
- Cleaned up unused code and improved overall structure for maintainability.
- Added a new endpoint for streaming chat messages in FastAPI, allowing real-time interaction.
- Enhanced the `PresentationChatService` to support streaming replies with event types for chunked responses, status updates, and tool tracing.
- Updated the chat UI to handle and display assistant activities, including loading states and tool usage.
- Introduced new models for SSE responses and integrated them into the chat service.
- Improved error handling and response management in the chat API.
- Added new middleware to handle session authentication for presentation retrieval.
- Introduced new layout and page components for PDF export, ensuring no loading state is shown during headless rendering.
- Enhanced ConfigurationInitializer to manage loading state based on route.
- Updated DashboardApi to include credentials in requests for presentation data.
- Refactored hasValidLLMConfig function for cleaner validation logic.
- Introduced a new chat endpoint for handling user messages and generating responses.
- Added models for chat message requests and responses.
- Implemented a conversation store to manage chat history.
- Integrated memory layer for retrieving presentation context.
- Created tools for accessing presentation outlines and searching slides.
- Updated dependencies to include jsonschema for validation.
- Enhanced the API router to include the new chat functionality.
- Replaced all instances of the placeholder image path from "/static/images/placeholder.jpg" to "/static/images/replaceable_template_image.png".
- Added a new Nginx location block for serving app data with a long cache expiration.
- Enhanced the image generation service to return the new template image when generation fails.
- Updated various services and endpoints to ensure consistent handling of asset paths, including resolving backend asset URLs.
- Removed Electron-specific checks from several components to streamline API calls and improve compatibility with web deployments.
- Improved error handling and logging in the PDF export process.
- Adjusted Next.js configuration for API routing to ensure proper asset serving in Docker environments.
- Updated docker-compose.yml to allow disabling embedded Ollama via environment variable.
- Refactored Dockerfile and Dockerfile.dev for improved dependency management and installation process.
- Enhanced FastAPI migration scripts to handle orphaned Alembic revisions and added new database migration logic.
- Improved error handling in background tasks and Codex authentication endpoints.
- Added support for font file uploads with better validation and extraction of font names.
- Introduced new image search functionality with support for Pexels and Pixabay APIs.
- Add configurable pool settings via environment variables:
DB_POOL_SIZE, DB_MAX_OVERFLOW, DB_POOL_TIMEOUT, DB_POOL_RECYCLE,
DB_POOL_PRE_PING (defaults: 5, 10, 30s, 1800s, true)
- Enable pool_pre_ping by default to detect and recycle stale connections
- Add dispose_engines() called during FastAPI lifespan shutdown to
release all connections back to the database
- Skip pool configuration for SQLite (uses file-lock, not connection pools)
- Apply changes to both servers/ and electron/ FastAPI instances
Fixes#453 (stale connections exhausting pool)
Fixes#454 (missing pool configuration)
- Added Codex authentication endpoints and logic for OAuth flow.
- Updated Docker configuration to expose port 1455 for Codex callback.
- Enhanced user configuration model to include Codex-related fields.
- Integrated Codex selection into the LLM provider UI.
- Implemented token management and refresh logic for Codex.
- Added utility functions for handling Codex OAuth tokens and state management.