- Added support for new V2 functions: `auto_cluster_v2` and `generate_ideas_v2`, including backend logic and API endpoints.
- Updated model configuration to ensure V2 functions validate the presence of models before execution.
- Enhanced progress modal to provide better feedback during asynchronous tasks, including task IDs for debugging.
- Updated frontend components to integrate new V2 functionalities and improve user experience with clustering and idea generation.
- Improved model configuration handling in AICore to ensure only supported models are set as default.
- Added error logging for invalid model configurations and warnings for missing models.
- Implemented validation checks for the active model to provide clear error messages when no valid model is configured.
- Enhanced user feedback during AI model selection to improve debugging and configuration clarity.
- Updated AIEngine to normalize function names by replacing underscores with hyphens in generated function IDs for better consistency with frontend tracking.
- Enhanced registry to resolve function name aliases, allowing for backward compatibility with legacy function names when retrieving function instances.
- Updated GenerateContentFunction to ensure that the content status is always set to 'draft' upon creation.
- Clarified that the status can only be changed manually to 'review' or 'published', reinforcing the status management logic.
- Introduced STATUS_CHOICES in the Content model to restrict the status field to 'draft', 'review', and 'published'.
- Created a new migration to reflect the updated status choices without altering existing data.
- Removed 'completed' status from the frontend status color mapping for consistency.
- Improved HTMLContentRenderer to better handle JSON content and extract HTML safely.
- Updated ToggleTableRow to robustly extract meta descriptions, including parsing potential JSON strings.
- Refactored Content page to conditionally display meta descriptions based on JSON parsing results, enhancing user experience.
- Enhanced GenerateContentFunction to save content in a dedicated Content model, separating it from the Tasks model.
- Updated Tasks model to remove SEO-related fields, now managed in the Content model.
- Modified TasksSerializer to include new content fields and adjusted the API to reflect these changes.
- Improved the auto_generate_content_task method to utilize the new save_output method for better content management.
- Updated frontend components to display new content structure and metadata effectively.
- Updated TasksSerializer to include 'primary_keyword', 'secondary_keywords', 'tags', and 'categories'.
- Enhanced auto_generate_content_task to track progress with detailed steps, including initialization, preparation, AI call, parsing, and saving.
- Updated progress modal to reflect new phases and improved animation for smoother user experience.
- Adjusted routing and configuration for content and drafts pages in the frontend.
- Added primary_keyword, secondary_keywords, tags, and categories fields to Tasks model
- Updated generate_content function to handle full JSON response with all SEO fields
- Improved progress bar animation: smooth 1% increments every 300ms
- Enhanced step detection for content generation vs clustering vs ideas
- Fixed progress modal to show correct messages for each function type
- Added comprehensive logging to Keywords and Tasks pages for AI functions
- Fixed error handling to show meaningful error messages instead of generic failures