Backend: find_or_create_provider_by_name() implementálása #359
Reference in New Issue
Block a user
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?
Mérföldkő: Service Provider Discovery & Gamification Integration
Cél: A logic_spec-ben leírt, de soha meg nem valósított find_or_create_provider_by_name() függvény implementálása a provider_service.py-ban, amely az external_vendor_name alapján keres vagy hoz létre providert, és visszaadja a megfelelő action_key-t (PROVIDER_DISCOVERY / PROVIDER_CONFIRMATION / PROVIDER_VERIFIED_USE).
🔗 Függőségek (Dependencies)
📝 Elemzés
A függvény logikája:
Hivatkozás: docs/gamification_provider_connection_analysis.md (6.1 szekció)
✅ Munka befejezve: 2026-06-30 14:38:36
Technikai Összefoglaló:
Implementáltam a find_or_create_provider_by_name() függvényt a provider_service.py-ban. A függvény: (1) case-insensitive ILIKE keresés a ServiceProvider táblában, (2) ha nincs találat → új provider létrehozása PENDING státusszal, source=api, validation_score=10, visszatérés: PROVIDER_DISCOVERY, (3) ha van találat és APPROVED → PROVIDER_VERIFIED_USE, (4) ha van találat és nem APPROVED → PROVIDER_CONFIRMATION. Javítottam a _award_provider_points()-t dinamikus reason stringre. Szintaxis és sync_engine ellenőrzés sikeres (1292 OK).
⏱️ Az idő rögzítve.
✅ Gitea #359 — Teljesítve
Implementált változtatások
1. Új függvény:
find_or_create_provider_by_name()ServiceProvidertáblában a megadott névrePENDINGstátusszal,source=api,validation_score=10, visszatérés:PROVIDER_DISCOVERYAPPROVED→ visszatérés:PROVIDER_VERIFIED_USEAPPROVED→ visszatérés:PROVIDER_CONFIRMATION_award_provider_points()függvényt a megfelelőaction_key-val2. Javítás:
_award_provider_points()reasonstring a hardcodedADD_NEW_PROVIDERhelyett — így mindenaction_key-hoz megfelelő indoklás kerül a gamification rendszerbe3. Importok:
provider_service.pyModerationStatus,SourceTypeimport hozzáadvaVerifikáció
.roo/history.md— dokumentáció frissítve⚠️ Ismert probléma (nem a #359 része)
A gamification
_award_provider_points()hívás sikertelen aGAMIFICATION_MASTER_CONFIGhiányzópenalty_logickulcsa miatt — ez egy előre létező adatbázis konfigurációs hiba.