All checks were successful
Deploy Development / deploy (push) Successful in 42s
Test Suite / pytest-backend (push) Successful in 44s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 13s
Test Suite / k6 /health Baseline (push) Successful in 34s
Test Suite / playwright-tests (push) Successful in 1m13s
- Introduced `intent_context` and `semantic_brief` parameters in `try_llm_stage_specs` to improve context handling for stage specifications. - Updated `build_goal_analysis` to extract explicit exclusions from goal queries, enhancing constraint management. - Enhanced `roadmap_context_from_override` to enrich semantic briefs with path constraints and finalize stage specifications with intent context. - Incremented application version to reflect these updates.
68 lines
2.9 KiB
SQL
68 lines
2.9 KiB
SQL
-- Migration 089: Planungs-Intent — Zielanalyse + Stufenspecs (anti_patterns, success_criteria)
|
||
|
||
UPDATE ai_prompts SET
|
||
description = 'Phase A: Ist-/Soll, Erfolgskriterien und explizite Ausschlüsse (ohne Gruppenkontext).',
|
||
template = $t$Du bist Assistent für Kampfsport-Trainer und analysierst eine Anfrage für einen Progressionsgraphen.
|
||
|
||
Anfrage: {{goal_query}}
|
||
Semantic Brief: {{semantic_brief_json}}
|
||
|
||
Wichtig:
|
||
- Keine Gruppenanalyse — nur didaktischer Pfad für die Technik/das Thema.
|
||
- Explizite Negationen aus der Anfrage (ohne/kein/nicht …) in constraints.excluded_themes übernehmen — nicht raten.
|
||
- success_criteria: messbar, für späteres Übungs-Matching (Titel + Kurzbeschreibung + Übungsziel).
|
||
|
||
Antworte NUR mit JSON:
|
||
{
|
||
"primary_topic": "Hauptthema",
|
||
"start_assumption": "Voraussetzungen für den Einstieg",
|
||
"target_state": "Konkreter Zielzustand der Progression",
|
||
"success_criteria": ["messbare Kriterien entlang des Pfads"],
|
||
"constraints": {
|
||
"partner_required": false,
|
||
"excluded_themes": ["wörtliche Negationen, z. B. keine Kumite-Anwendung"],
|
||
"trainer_notes": "optional: Fokus aus Ergänzungen"
|
||
}
|
||
}$t$,
|
||
default_template = template
|
||
WHERE slug = 'planning_progression_goal_analysis';
|
||
|
||
UPDATE ai_prompts SET
|
||
description = 'Phase C: Belastung, Übungstyp, Erfolgskriterien und anti_patterns je Major Step — für Retrieval-Matching.',
|
||
template = $t$Du bist Assistent für Kampfsport-Trainer und spezifizierst didaktische Stufen eines Progressionsgraphen.
|
||
|
||
Anfrage: {{goal_query}}
|
||
Zielanalyse: {{goal_analysis_json}}
|
||
Major Steps: {{major_steps_json}}
|
||
Planungs-Intent (Pfadweite Regeln): {{intent_context_json}}
|
||
Semantic Brief: {{semantic_brief_json}}
|
||
|
||
Aufgabe je Major Step — Felder für automatisches Übungs-Matching (nicht nur Titel):
|
||
- learning_goal: messbares Stufen-Lernziel (was die Übung bringen soll)
|
||
- load_profile: z. B. koordination, präzision, kraft, athletik
|
||
- exercise_type: kihon_einzel | partner_drill | kombination | kraft_auxiliary
|
||
- success_criteria: 2–4 prüfbare Kriterien an Kurzbeschreibung + Übungsziel (nicht nur Technikname im Titel)
|
||
- anti_patterns: 2–5 Dinge, die für diese Stufe unpassend sind
|
||
|
||
Regeln:
|
||
1. Jede explicit_exclusions / excluded_themes aus intent_context und Zielanalyse MUSS in anti_patterns jeder Stufe vorkommen (umformuliert ok).
|
||
2. Keine neuen Ausschlüsse erfinden, die nicht in Anfrage/Intent/Zielanalyse stehen.
|
||
3. success_criteria Pfad-weit + stufenspezifisch kombinieren.
|
||
4. partner_drill nur wenn Partner/Kumite nicht ausgeschlossen ist.
|
||
|
||
Antworte NUR mit JSON:
|
||
{
|
||
"stage_specs": [
|
||
{
|
||
"major_step_index": 0,
|
||
"learning_goal": "…",
|
||
"load_profile": ["koordination"],
|
||
"exercise_type": "kihon_einzel",
|
||
"success_criteria": ["…"],
|
||
"anti_patterns": ["…"]
|
||
}
|
||
]
|
||
}$t$,
|
||
default_template = template
|
||
WHERE slug = 'planning_progression_stage_spec';
|