- Add adapt_with_ai() method to PlatformAdapter that uses DeepSeek
to condense content when it exceeds platform character limits
- Add adapt_for_all_platforms_smart() for batch adaptation
- Modify create_post endpoint to auto-generate content_x, content_threads,
content_instagram, content_facebook with adapted versions
- Modify update_post to re-adapt content when main content changes
- If content fits within limit, use as-is (no AI call)
- If content exceeds limit, AI condenses while preserving message
- Fallback to rule-based truncation if DeepSeek API unavailable
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Detect threads by template name and skip platform truncation
- Parse thread content into individual posts with numbering
- Add thread_posts array to API response with post details
- Evaluate quality on first post (hook) for threads
- Add is_thread and thread_posts fields to GenerateV2Response
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix YAML files with unquoted strings containing quotes
- Export singleton instances in ai/__init__.py
- Fix validator scoring prompt to use replace() instead of format()
to avoid conflicts with JSON curly braces
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>