- Updated the LiteParse runner to support two output formats: raw text and JSON, improving compatibility and flexibility.
- Introduced error handling for missing file arguments and file existence checks, enhancing robustness.
- Added functions to clean and extract text from LiteParse JSON outputs, handling malformed JSON gracefully.
- Updated the DocumentsLoader to utilize the new text cleaning functionality, ensuring cleaner document outputs.
- Implemented tests for the new text extraction and cleaning features, ensuring reliability and correctness.
- 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.
- Update sync-presentation-export script to read version from package.json instead of export-version.json.
- Change entrypoint from index.js to index.cjs for CommonJS compatibility.
- Implement logic to ensure CommonJS entrypoint is created if missing.
- Modify ExportTaskService to resolve entrypoint path dynamically.
- Remove inline Puppeteer PDF export logic in favor of bundled export package.
- Add runtime availability checks and sync script execution in start.js.
- Introduce helper functions for output path normalization and entrypoint resolution.
- Updated LLMClient to include CODEX in web search checks.
- Simplified web search logic in generate_ppt_outline to improve clarity and efficiency.
- Ensured consistent usage of web search settings across methods.
- Added methods to enable web search based on user settings and LLM provider.
- Updated presentation outline generation to utilize prefetched web facts.
- Modified system prompts to clarify web search usage.
- Improved UI text in advanced settings to better inform users about web search controls.
- Added logging to track the start and completion of document conversions in DocumentConversionService.
- Implemented detailed error logging for subprocess failures in both DocumentConversionService and LiteParseService.
- Introduced helper functions for logging command strings and output snippets to improve debuggability.
- Updated DocumentsLoader to log file processing details and fallback parsing attempts.
- Updated the decomposeDocuments method in PresentationGenerationApi to accept an optional language parameter.
- Modified the UploadPage component to pass the selected language from the config when calling the decomposeDocuments method.
- Introduced a new Alembic migration to add a 'theme' column to the 'presentations' table.
- Updated migration scripts to handle unversioned databases more gracefully.
- Added a script for programmatically deleting local SQLite database files and running migrations.
- Enhanced database initialization logic to conditionally run migrations based on environment settings.
- 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-related fields to UserConfig and LLMConfig for managing OAuth tokens and model settings.
- Implemented Codex authentication endpoints and integrated them into the application.
- Enhanced LLMClient to support Codex as a valid provider, including token management and refresh logic.
- Updated UI components to include Codex configuration options and authentication status handling.
- Refactored environment variable utilities to accommodate Codex-specific settings.