Prompt-Evolution & Kontext-Learning: System lernt aus Ergebnissen #91
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Beschreibung
Bruno um die Fähigkeit erweitern, seine Prompts basierend auf
Ergebnissen zu verbessern und gelerntes Wissen in den Kontext für
Claude einzubauen. Aktuell sind alle 4 Prompts (CLAUDE_PROMPT,
SCORING_PROMPT, REVIEW_PROMPT, ADMIN_PROMPT) hardcoded und ändern
sich nie — egal wie gut oder schlecht die Ergebnisse sind.
Hintergrund
Bruno hat 4 statische Prompts die seit Projektstart unverändert sind:
CLAUDE_PROMPT(claude_runner.py:15-24) — 10 Zeilen, immer gleichSCORING_SYSTEM_PROMPT(scoring_prompt.py) — nie versioniertREVIEW_PROMPT(review_agent.py:15-43) — keine Pattern-LearningADMIN_PROMPT(admin_prompt.py) — nie aktualisiertZusätzlich existieren 2 Funktionen die nie aufgerufen werden:
gitlab_service.get_recent_mrs()— liefert kürzlich gemergte MRsgitlab_service.get_related_mrs()— findet MRs die gleiche Dateien betreffenDiese wären Gold wert für Kontext-Learning, werden aber ignoriert.
PROJEKTKONTEXT.mdwird einmalig generiert und nie aktualisiert —auch nicht nach 100 verarbeiteten Tickets im selben Repo.
Dieses Issue vereint: #33 (Prompt Improvement Loop).
Setzt voraus: MR-Outcome-Tracking (Datengrundlage).
Akzeptanzkriterien
Prompt-Versioning
prompt_versions(id, name, version, prompt_text, created_at, active)GET /api/prompts(alle Versionen),POST /api/prompts(neue Version anlegen)PUT /api/prompts/{id}/activate(Version aktivieren)ticket.prompt_version_idPrompt-Performance-Tracking
prompt_performance(prompt_version_id, tickets_count, success_rate, avg_review_rounds)GET /api/prompts/{id}/performance(Erfolgsrate, Review-Runden, etc.)Historical Learnings in kontext.md
get_recent_mrs()endlich nutzen: Kürzlich gemergte MRs als Referenz einfügenget_related_mrs()endlich nutzen: MRs die gleiche Dateien betreffen als KontextRepo-spezifische Learnings
success_rate,common_review_issues,learnings_updated_atrepo_context_builder.pyerweitern: Learnings-Abschnitt in PROJEKTKONTEXT.mdScoring-Prompt mit historischen Daten
Frontend
Technische Hinweise
backend/models/prompt.py(PromptVersion, PromptPerformance Models)backend/services/prompt_manager.py(Versioning, Performance-Tracking, Dynamic Loading)backend/services/learning_extractor.py(Repo-Learnings aus Ticket-Historie extrahieren)backend/api/prompts.py(Prompt-Verwaltung Endpoints)frontend/src/pages/Prompts.tsx(Prompt-Verwaltungsseite)backend/services/claude_runner.py(Prompt aus DB laden statt Konstante)backend/services/scoring_engine.py(Prompt aus DB laden, historische Daten einfügen)backend/services/review_agent.py(Prompt aus DB laden)backend/services/preparation_engine.py(Learnings + Related MRs in kontext.md)backend/services/gitlab_service.py(get_recent_mrs/get_related_mrs endlich aufrufen)backend/services/repo_context_builder.py(Learnings-Section, periodisches Update)backend/templates/kontext_template.md(neue Sections: Learnings, Related MRs, KB)backend/models/ticket.py(+ prompt_version_id FK)backend/models/repo.py(+ success_rate, common_review_issues, learnings_updated_at)backend/main.py(neue Router, periodischer Learnings-Extraktion Job)frontend/src/App.tsx(neue Route)frontend/src/pages/TicketDetail.tsx(Prompt-Version anzeigen)(braucht MR-Outcome-Daten), dann Learnings-Integration (braucht genug History).
Aufwand: XL