Backend: - question_augmenter.py (290 Zeilen): Hybrid-Modell für Fragenergänzungen * merge_question_augmentations(): Knotengebundene Fragen überschreiben Prompt-Defaults * augment_prompt_with_questions(): Markdown-formatierte Fragenergänzung * parse_question_augmentations_from_jsonb(): JSONB → QuestionAugmentation[] - result_container_parser.py (250 Zeilen): Markdown-Sektionen-Parsing * parse_result_container(): Extrahiert Analysekern, Entscheidungsanteil, Begründungsanker * validate_decision_signal(): Normalisierung gegen answer_spectrum * Fallback-Parsing bei unstrukturierten Antworten - routers/workflow_questions.py (236 Zeilen): CRUD für workflow_question_catalog * GET /api/workflow/questions (mit active_only Filter) * POST/PUT/DELETE (Admin only, Soft Delete) - prompt_executor.py: Integration in execute_base_prompt() * Fragenergänzung vor LLM-Call (wenn node_questions oder catalog vorhanden) * Result-Container-Parsing nach LLM-Response - main.py: Router-Registrierung (workflow_questions) Tests: - test_phase1_question_augmenter.py (8 Tests): Hybrid-Modell, Formatierung, JSONB-Parsing - test_phase1_result_container_parser.py (17 Tests): Sektion-Extraktion, Decision-Parsing, Validierung Alle 25 Unit-Tests bestanden. version: 0.9j (backend) module: workflow 0.2.0 Konzept: .claude/task/Workflow_engine_prompting_engine/konzept_workflow_engine_konsolidated.md (Phase 1)
69 lines
2.4 KiB
Python
69 lines
2.4 KiB
Python
"""
|
|
Application Version Information
|
|
|
|
Semantic Versioning: MAJOR.MINOR.PATCH
|
|
- MAJOR: Breaking Change, DB-Migration inkompatibel
|
|
- MINOR: Neues Feature, neues Modul
|
|
- PATCH: Bugfix, kleine Änderung, Refactor
|
|
"""
|
|
|
|
APP_VERSION = "0.9j"
|
|
BUILD_DATE = "2026-04-03"
|
|
DB_SCHEMA_VERSION = "20260403" # Migration 034
|
|
|
|
MODULE_VERSIONS = {
|
|
"auth": "1.2.0",
|
|
"profiles": "1.1.0",
|
|
"weight": "1.0.3",
|
|
"circumference": "1.0.1",
|
|
"caliper": "1.0.1",
|
|
"activity": "1.1.0",
|
|
"nutrition": "1.0.2",
|
|
"photos": "1.0.0",
|
|
"insights": "1.3.0",
|
|
"prompts": "1.1.0",
|
|
"admin": "1.2.0",
|
|
"stats": "1.0.1",
|
|
"exportdata": "1.1.0",
|
|
"importdata": "1.0.0",
|
|
"membership": "2.1.0",
|
|
"workflow": "0.2.0", # Phase 1: Fragenergänzung + Strukturierter Container
|
|
}
|
|
|
|
CHANGELOG = [
|
|
{
|
|
"version": "0.9j",
|
|
"date": "2026-04-03",
|
|
"changes": [
|
|
"Phase 1: Fragenergänzung + Strukturierter Container",
|
|
"question_augmenter.py: Hybrid-Modell (Knotengebundene Fragen überschreiben Prompt-Defaults)",
|
|
"result_container_parser.py: Markdown-Sektionen (Analysekern, Entscheidungsanteil, Begründungsanker)",
|
|
"Integration in execute_base_prompt(): Fragenergänzung vor LLM-Call, Parsing nach LLM-Response",
|
|
"API-Router workflow_questions.py: CRUD für workflow_question_catalog",
|
|
"Unit-Tests Phase 1: 25 Tests (question_augmenter + result_container_parser)",
|
|
]
|
|
},
|
|
{
|
|
"version": "0.9i",
|
|
"date": "2026-04-03",
|
|
"changes": [
|
|
"Phase 0: Workflow Engine Foundation",
|
|
"DB-Migration 034: workflow_definitions, workflow_question_catalog, workflow_executions",
|
|
"Pydantic-Modelle für Workflow-Graph (WorkflowGraph, Node, Edge, Condition)",
|
|
"Graph-Parsing, Topologische Sortierung, DAG-Validierung",
|
|
"Dispatcher-Erweiterung: type='workflow' (Stub-Implementierung)",
|
|
"Unit-Tests für Phase 0 (Graph-Parsing, Zyklen-Erkennung, Erreichbarkeit)",
|
|
]
|
|
},
|
|
{
|
|
"version": "0.9h+",
|
|
"date": "2026-03-28",
|
|
"changes": [
|
|
"Phase 0c: Multi-Layer Data Architecture Complete",
|
|
"Data Layer Migration (97 Funktionen in 6 Modulen)",
|
|
"20 neue Chart Endpoints (E1-E5, A1-A8, R1-R5, C1-C4)",
|
|
"Single Source of Truth für Datenberechnungen",
|
|
]
|
|
},
|
|
]
|