{
"event": "UserPromptSubmit",
"prompt": "das hier ist das feedback der supervision: {\n \"analysis_scope\": \"gesamtes src-verzeichnis\",\n \"shared_problems\": [\n {\n \"id\": 1,\n \"problem\": \"Controller greifen direkt auf PDO und SQL zu\",\n \"reason\": \"Umgeht vorhandene Repository-Strukturen, erzeugt doppelte Query-Logik, verhindert saubere Tests\"\n },\n {\n \"id\": 2,\n \"problem\": \"Uneinheitlicher Datenbankzugriff\",\n \"reason\": \"DatabaseFactory, direkte PDO-Nutzung und gemischte Patterns führen zu inkonsistentem Verhalten\"\n },\n {\n \"id\": 3,\n \"problem\": \"Controller enthalten Geschäfts- und Workflow-Logik\",\n \"reason\": \"Prozesslogik ist an HTTP-Endpunkte gebunden statt zentral modelliert\"\n },\n {\n \"id\": 4,\n \"problem\": \"Read- und Write-Logik sind vermischt\",\n \"reason\": \"Listen, Detailansichten, Statusänderungen und Aktionen liegen im selben Objekt\"\n },\n {\n \"id\": 5,\n \"problem\": \"Präsentations- und Formatierungslogik im Controller\",\n \"reason\": \"Markdown, JSON-Formatierung und HTML-Entscheidungen koppeln Darstellung an Controller\"\n },\n {\n \"id\": 6,\n \"problem\": \"Inkonsistente Response-Strategien\",\n \"reason\": \"view, echo HTML, Redirects und Header-Mutationen werden gemischt verwendet\"\n },\n {\n \"id\": 7,\n \"problem\": \"Verteilte und doppelte Validierungslogik\",\n \"reason\": \"Collections, Limits und Defaults werden mehrfach und uneinheitlich geprüft\"\n },\n {\n \"id\": 8,\n \"problem\": \"Controller bauen Abhängigkeiten selbst\",\n \"reason\": \"new Repository, new UseCase verhindert Austauschbarkeit und Testbarkeit\"\n },\n {\n \"id\": 9,\n \"problem\": \"Fehlende explizite Zustandslogik\",\n \"reason\": \"Statusübergänge erfolgen über freie Strings ohne Regelwerk\"\n },\n {\n \"id\": 10,\n \"problem\": \"Audit und Logging sind nicht systematisch\",\n \"reason\": \"Keine konsistente Korrelation zwischen Eingaben, Prozessen und Ergebnissen\"\n }\n ],\n \"target_principles\": [\n {\n \"id\": 1,\n \"should_be\": \"Controller als reine Transport-Schicht\",\n \"how\": \"Controller liest Request, ruft genau einen Application Service auf, rendert Response\",\n \"reason\": \"Klare Verantwortung, geringe Kopplung\"\n },\n {\n \"id\": 2,\n \"should_be\": \"Zentraler Application Layer\",\n \"how\": \"Einführung von Services wie ContentOrderService, ChatSessionService, ProtokollQueryService\",\n \"reason\": \"Workflow-Logik wird testbar und wiederverwendbar\"\n },\n {\n \"id\": 3,\n \"should_be\": \"Konsequente Repository-Nutzung\",\n \"how\": \"Alle SQL-Statements ausschließlich in Repository-Klassen kapseln\",\n \"reason\": \"Einheitlicher Datenzugriff, geringere Abhängigkeiten\"\n },\n {\n \"id\": 4,\n \"should_be\": \"Einheitliche Datenbankanbindung\",\n \"how\": \"Nur eine verbindliche Connection-Quelle über DatabaseFactory\",\n \"reason\": \"Konsistentes Fehler- und Transaktionsverhalten\"\n },\n {\n \"id\": 5,\n \"should_be\": \"Explizite Commands und Queries\",\n \"how\": \"Eingaben über Command-Objekte wie CreateOrderCommand, GenerateContentCommand\",\n \"reason\": \"Zentrale Validierung und saubere Schnittstellen\"\n },\n {\n \"id\": 6,\n \"should_be\": \"Trennung von Rendering und Logik\",\n \"how\": \"Renderer und Formatter-Klassen für Markdown, JSON und HTML\",\n \"reason\": \"Darstellung wird konsistent und austauschbar\"\n },\n {\n \"id\": 7,\n \"should_be\": \"Einheitliche Response-Pipeline\",\n \"how\": \"HTMX immer über Partials, Redirects über Controller-Methoden, kein echo\",\n \"reason\": \"Vorhersagbares Verhalten\"\n },\n {\n \"id\": 8,\n \"should_be\": \"Zentrale Validierungsservices\",\n \"how\": \"Validatoren für Collections, Limits, Statusübergänge\",\n \"reason\": \"Keine Regelduplikate\"\n },\n {\n \"id\": 9,\n \"should_be\": \"Explizite Zustandsmaschinen\",\n \"how\": \"Definierte erlaubte Statusübergänge pro Domain-Objekt\",\n \"reason\": \"Verhindert inkonsistente Zustände\"\n },\n {\n \"id\": 10,\n \"should_be\": \"Systematische Audit-Korrelation\",\n \"how\": \"Correlation-ID pro Prozess, Speicherung von Parametern, Hashes und Ergebnissen\",\n \"reason\": \"Nachvollziehbarkeit, Debugging und Governance\"\n }\n ]\n}\n <-- dafür brauchen wir jeweils sauber alle tasks für die umsetzung durch externe ki systeme (beginnend mit lese claude.md , nutze mcp, contracts einhalten etc). aktualisiere ggf. die contracts .erstmal alles auber planen"
}