Files
dreamweaver/backend/docs/code_review_report.md
zhangtuo e9d7f8832a Initial commit: clean project structure
- Backend: FastAPI + SQLAlchemy + Celery (Python 3.11+)
- Frontend: Vue 3 + TypeScript + Pinia + Tailwind
- Admin Frontend: separate Vue 3 app for management
- Docker Compose: 9 services orchestration
- Specs: design prototypes, memory system PRD, product roadmap

Cleanup performed:
- Removed temporary debug scripts from backend root
- Removed deprecated admin_app.py (embedded UI)
- Removed duplicate docs from admin-frontend
- Updated .gitignore for Vite cache and egg-info
2026-01-20 18:20:03 +08:00

1.2 KiB

Code Review Report (2nd follow-up)

What¡¯s fixed

  • Provider cache now loads on startup via lifespan (app/main.py), so DB providers are honored without manual reload.
  • Providers support DB-stored api_key precedence (provider_router.py:77-104) and Provider model added api_key column (db/admin_models.py:25).
  • Frontend uses /api/generate/full and propagates image-failure warning to detail via query flag; StoryDetail displays banner when image generation failed.
  • Tests added for full generation, provider failover, config-from-DB, and startup cache load.

Remaining issue

  1. Missing DB migration for new Provider.api_key column
    • Files updated model (backend/app/db/admin_models.py:25) but backend/alembic/versions/0001_init_providers_and_story_mode.py lacks this column. Existing databases will not have api_key, causing runtime errors when accessing or inserting. Add an Alembic migration to add/drop api_key to providers table and update sample data if needed.

Suggested action

  • Create and apply an Alembic migration adding api_key (String, nullable) to providers. After migration, verify admin CRUD works with the new field.