mnemo_cards/mnemo_cards_backend/TODO.md
2025-11-16 15:52:07 +03:00

2.2 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 test for the whole suite

Medium Priority

  • Review existing codebase architecture
  • Check SSL certificate validity
  • 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 UserModel references in access policies
  • Implement yx_state and yx_scope if 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-url CLI flag and env vars
  • Document production bot startup command with new backend URL option

Notes

  • Reference ../mnemo_cards app for design and features
  • Do not copy architecture from reference app
  • Follow Flutter/Dart best practices
  • Use Shelf framework patterns