- Refactored AI interpretation table to use proper 1-to-1 relationship with reading records
- Fixed recordId parameter passing in AnalysisResultDisplay component
- Updated database schema to use reading_id instead of analysis_id
- Removed complex string ID generation logic
- Fixed TypeScript type definitions for all ID fields
- Added database migration scripts for AI interpretation refactoring
- Improved error handling and debugging capabilities
- Replace private localApi.request() calls with public methods
- Add aiInterpretation public methods to LocalApiClient
- Fix type mismatches in AnalysisPage and HistoryPage
- Convert string IDs to numbers where required
- Ensure all API calls use proper public interfaces
- Fix AI interpretation recordId parameter passing for all analysis types
- Resolve double border issue in AI interpretation results display
- Fix animation conflicts causing visual duplication
- Update component interfaces to support recordId parameter
- Add AI interpretation status indicators in history page
- Disable conflicting animations in AI result containers
- Added full Chinese year display (农历一九七六年)
- Implemented detailed solar term intervals (惊蛰后至春分前)
- Enhanced Zi Shi calculation with professional explanations
- Added lunar information display in frontend components
- Improved accuracy of lunar date calculations
- Removed redundant note texts for cleaner UI
- Fixed syntax errors in analyzer modules
- Align AI interpretation buttons in same row within button group
- Place AI button group and download button in same row across all analysis pages
- Implement responsive layout: horizontal on desktop, vertical on mobile
- Update CompleteBaziAnalysis, CompleteZiweiAnalysis, CompleteYijingAnalysis
- Improve button spacing and alignment consistency
- Add proper flex layout with gap-4 spacing
- Maintain sticky positioning for download button
- Updated README.md with latest features and deployment options
- Added AI interpretation system documentation
- Updated Docker and cloud deployment instructions
- Added comprehensive CHANGELOG.md for v3.1.0
- Updated GitHub repository links and contact information
- Reflected all new features: AI integration, Docker support, pagination, etc.
- Enhanced quick start guide with multiple deployment methods
- Remove forced database initialization from Dockerfile CMD
- App now auto-initializes database on startup without data loss
- Skip sample data creation in production environment
- Ensure admin user exists in production without recreating
- Fixes database reset issue on every Koyeb deployment
- Maintains data persistence with proper volume mounting
- Added connectSrc to Content Security Policy
- Allow connections to OpenAI, 智谱AI, Azure OpenAI, Anthropic, and Google AI APIs
- Fixes CSP violation error when calling external AI services in production
- Resolves: 'Refused to connect because it violates the document's Content Security Policy'
- Updated Dockerfile to use npm instead of pnpm
- Added .dockerignore for optimized builds
- Created docker-compose.yml for easy deployment
- Added comprehensive Docker deployment guide
- Configured health checks and data persistence
- Ready for containerized deployment
- Fixed all database connection errors in aiInterpretation.cjs
- Updated better-sqlite3 API calls from callback to sync methods
- Removed AI interpretation buttons from history page
- Added pagination to history page (10 records per page)
- Fixed mobile responsive design for AI interpretation results
- Updated Koyeb deployment configuration to use npm instead of pnpm
- Resolved API limit issues for history records
- Remove PNG server generation option from DownloadButton component
- Remove PNG generation logic from download route
- Delete pngGenerator.cjs and related test files
- Simplify download options to focus on frontend PNG export
- Reduce server complexity and resource usage
- Update project version to 3.0.0
- Add AI-enhanced analysis features for Ziwei numerology
- Add detailed star strength explanations (旺/得地/平/不得地/陷)
- Add comprehensive Ming Gong position analysis
- Update all project branding from 三算命 to 神机阁
- Remove outdated Supabase-based documentation
- Update README with latest tech stack and features
- Clean up docs directory, keeping only relevant files
- Fix TypeScript error in ChineseInput: use Omit to exclude 'size' from InputHTMLAttributes
- Fix CSS import order warning: move typography.css import before @tailwind directives
- Build now completes successfully without errors
- Ready for Koyeb deployment
- Implement comprehensive Chinese-style component library
- Add unified typography system with semantic font classes
- Optimize all pages with responsive design and Chinese aesthetics
- Fix button styling and enhance user experience
- Add loading states, empty states, and toast notifications
- Complete 12 Palaces Details optimization
- Establish consistent color scheme and visual hierarchy
- Add fallback detection using PORT=8000 for Koyeb
- Add environment debugging logs
- Ensure static file serving is enabled in production
- Fix NODE_ENV detection issues in containerized deployment
- Remove dist/ from .gitignore to include build artifacts
- Add complete dist directory with built frontend assets
- This ensures static files are available for deployment
- Fixes 404 errors on Koyeb deployment
- Update build command to use pnpm instead of npm
- Fix frontend build process in Koyeb config
- Update API URL configuration for production
- Fix database initialization in Dockerfile
- Ensure proper static file serving for SPA
- Updated .env file with correct VITE_API_BASE_URL for local development
- Fixed API endpoint routing from localhost:5173 to localhost:3001
- Tested npm run build successfully with no errors
- Updated database and server configurations