shinkan-jinkendo/backend
Lars 63b1c09975
Some checks failed
Deploy Development / deploy (push) Successful in 34s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 5s
Test Suite / playwright-tests (push) Has been cancelled
feat: Migration 008 - M:N Exercise Relations + Hierarchical Catalogs
BREAKING CHANGE: Datenmodell-Umstellung von 1:1 auf M:N Beziehungen

Migration 008:
- Zielgruppen-Tabelle (target_groups) mit training_style_id Hierarchie
- M:N Zuordnungstabellen: exercise_focus_areas, exercise_styles, exercise_target_groups
- Altersgruppen-Dimension (exercise_age_groups) mit CHECK constraint
- Hierarchische Struktur: training_styles.focus_area_id → focus_areas
- Daten-Migration: Bestehende 1:1 Beziehungen zu M:N mit is_primary=true
- Seed-Daten: Beispiel-Zielgruppen für Shotokan

Architektur:
- Smart Cascade-Logik (RESTRICT, Rerouting, Move) vorbereitet
- Legacy-Spalten (focus_area_id, training_style_id) bleiben zur Rückwärtskompatibilität
- Primary/Secondary Assignments via is_primary Flag

Dokumentation:
- .claude/docs/technical/DATABASE_SCHEMA.md (kontinuierlich gepflegt)
- .claude/docs/functional/DOMAIN_MODEL.md (fachliche Anforderungen)
- Migrations-Historie aktualisiert

version: 0.3.0 (backend + frontend)
modules: exercises 0.3.0, catalogs 1.1.0
DB_SCHEMA_VERSION: 20260423

Konzept: shinkan_anforderungsdokument_entwurf.md (§8.1, §8.3, §10.7)
2026-04-23 08:46:56 +02:00
..
migrations feat: Migration 008 - M:N Exercise Relations + Hierarchical Catalogs 2026-04-23 08:46:56 +02:00
routers feat: Exercise Catalogs - Admin-verwaltbare Stammdaten (Backend) 2026-04-22 22:06:11 +02:00
auth.py fix: Remove Mitai-specific columns from session query 2026-04-22 06:56:57 +02:00
db_init.py feat: Initial Shinkan setup 2026-04-21 14:26:12 +02:00
db.py feat: Initial Shinkan setup 2026-04-21 14:26:12 +02:00
Dockerfile feat: Complete MVP setup - Docker, Frontend, Migrations, CI/CD 2026-04-21 14:36:52 +02:00
main.py feat: Exercise Catalogs - Admin-verwaltbare Stammdaten (Backend) 2026-04-22 22:06:11 +02:00
models.py fix: Add ProfileCreate and ProfileUpdate models 2026-04-21 16:05:42 +02:00
requirements.txt feat: Initial Shinkan setup 2026-04-21 14:26:12 +02:00
run_migrations.py feat: Add automatic migrations system 2026-04-21 14:49:28 +02:00
version.py feat: Migration 008 - M:N Exercise Relations + Hierarchical Catalogs 2026-04-23 08:46:56 +02:00