2.5 KiB
2.5 KiB
TODO List
High Priority
- Fix MnemoShelf routing so the v2 pipeline mounts at
/api/v2(restores public packs listing) - COMPLETED - Implement User Tasks System Backend API (6 endpoints, 3 models, data seeding)
- COMPLETED - Set up Forgejo domain (code.mnemo-cards.online) with SSL, IP blocking, and ROOT_URL fix
- Verify project builds successfully (
flutter build) - Run all existing tests (
flutter test) - Check code generation (
./codegen.sh) - Review linter issues (
dart analyze) - Investigate Isar collection-id failure when running
dart testfor the whole suite
Medium Priority
- Review existing codebase architecture
- COMPLETED - Set up Let's Encrypt SSL certificates for api.mnemo-cards.online with automatic renewal
- COMPLETED - Update nginx configuration for HTTPS-only API (redirect HTTP to HTTPS, proxy to port 8443)
- COMPLETED - Changed to multi-domain certificate approach (bypasses DNS subdomain requirements)
- Verify HTTPS-only functionality and test API endpoints over SSL
- Verify database operations
- Review API endpoints and documentation (v1 removal & v2 surface audit)
Low Priority
- Update README.md with proper project description
- Review backup strategy and retention
- Check Python utilities integration
- Review deployment scripts
Architecture Tasks
- Replace dynamic user handling with typed
UserModelreferences in access policies - Implement
yx_stateandyx_scopeif not already present - Ensure clean architecture principles are followed
- Review dependency injection setup
- Check error handling implementation
Testing Tasks
- Write unit tests for missing functionalities
- Add integration tests for new v2 endpoints (ads, users, promocodes, admin)
- Review test coverage
- Add mock tests for external dependencies
- Refresh Packs API v2 test coverage and ensure access control context is provided
- Add regression tests for authorizeV2 optional authentication handling on pack routes
- Cover anonymous and authenticated buy-page fallbacks for private packs in Packs API v2
Telegram Bot
- Allow Telegram bot to override backend API base URL via
--backend-urlCLI flag and env vars - Document production bot startup command with new backend URL option
Notes
- Reference
../mnemo_cardsapp for design and features - Do not copy architecture from reference app
- Follow Flutter/Dart best practices
- Use Shelf framework patterns