- Added comprehensive logging for OpenAI API calls and responses in both AltTextGenerator and MetadataGenerator
- Updated OpenAI model from gpt-5-2025-08-07 to gpt-4o and standardized completion parameters
- Implemented fallback mechanisms for handling empty or invalid AI responses
- Added buildFallback methods to generate reasonable defaults from input text
- Enhanced MetadataGenerator with smart title/tag derivation and URL slugification
- Added new migrate.ts module to handle automatic database migrations using drizzle-orm
- Modified server startup to run migrations before Express initialization
- Added comprehensive documentation in AUTO_MIGRATION_SUMMARY.md explaining the implementation
- Updated DATABASE_SETUP.md to reflect automatic migration process and troubleshooting steps
- Added error handling to exit process if migrations fail during startup
- Implemented clear
- Changed admin frontend port from 3000 to 3300 across all configuration files
- Changed API backend port from 3001 to 3301 across all configuration files
- Updated health check endpoints to use new ports in CI/CD workflow
- Modified documentation and deployment guides to reflect new port numbers
- Updated Caddy and Nginx reverse proxy configurations to use new ports
- Added streaming UI components with live content preview and token counter
- Implemented new generateContentStream service for SSE-based content generation
- Created comprehensive STREAMING_UI_GUIDE.md documentation with implementation details
- Added streaming toggle checkbox with default enabled state
- Enhanced StepGenerate component with progress bar and animated streaming display
- Added error handling and graceful fallback for streaming failures
- Split monolithic ai-generate.ts (453 lines) into 12 focused modules with clear responsibilities
- Created new directory structure with routes, services, utils, types, and config folders
- Implemented AIService orchestrator with specialized generators for content, metadata, and alt text
- Added centralized prompt templates and error handling
- Set up parallel routing to allow gradual migration from old implementation