Kritische Pipeline-Bugs: Falsches Approval, fehlende Dedup, Score-Overflow #70
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
Mehrere kritische Bugs in der Pipeline führen dazu, dass ungeprüfter Code
automatisch approved wird, doppelte MRs erstellt werden und Scoring-Werte
außerhalb der definierten Grenzen liegen.
Hintergrund
Code-Review der Pipeline-Services hat 6 kritische/hohe Findings ergeben,
die alle die Korrektheit der automatischen Verarbeitung betreffen.
Diese Bugs können dazu führen, dass fehlerhafter Code in Produktion landet.
Findings
1. Review Agent: Approval-Parsing fragil (CRITICAL)
Datei:
backend/services/review_agent.pyZeile 112, 179## Bewertung-Abschnitt sucht2. Review Agent: Timeout/Error = Auto-Approve (CRITICAL)
Datei:
backend/services/review_agent.pyZeile 122-127, 184-189approved: Truezurückapproved: Falsebei jedem Fehlerfall, manuelle Review erforderlich3. Review Agent: Diff-Truncation schneidet mitten in Zeile (CRITICAL)
Datei:
backend/services/review_agent.pyZeile 82-83, 151-152approved: Falsezurückgeben4. Pipeline:
_running-Set nicht thread-safe (CRITICAL)Datei:
backend/services/pipeline.pyZeile 73-77asyncio.Lock()um Check-and-Add5. Scoring: LLM-Scores nicht geclampt (CRITICAL)
Datei:
backend/services/scoring_engine.pyZeile 191-205max(0, min(100, score))pro Komponente,max(0, min(60, result))am Ende6. GitLab: Kein MR-Dedup im manuellen Endpoint (HIGH)
Datei:
backend/api/tickets.pyZeile 236-292 +backend/services/gitlab_service.pyZeile 42-109ticket.mr_idgesetzt oder offener MR für Branch existiertAkzeptanzkriterien
approved: Falsezurückapproved: Falsezurück_running-Set wird mitasyncio.Lock()geschütztTechnische Hinweise
backend/services/review_agent.py(Approval-Logik, Timeout-Handling, Diff-Truncation)backend/services/pipeline.py(_runningLock +__init__)backend/services/scoring_engine.py(_calculate_llm_score)backend/services/gitlab_service.py(create_mrDedup-Check)backend/api/tickets.py(manueller MR-Endpoint)Aufwand: M