feat(maria): raspunsul omului de la suport se pastreaza in jurnalul escaladarii

Jurnalul pastra doar intrebarile FARA raspuns. Replica omului care prelua
discutia se scria numai in firul din `conversations/`, care se sterge dupa
FIR_TTL_MIN — deci exact rezolvarea disparea, iar perechea eroare + rezolvare
trebuia recuperata manual din WhatsApp.

Acum, cat tine preluarea, fiecare mesaj al omului se adauga la fisierul
escaladarii (`completari`, `"fel": "raspuns_om"`, cu cine a scris). La fiecare
mesaj, nu doar la primul: rezolvarea vine de obicei in doua-trei replici. De aici
se pot extrage erorile si rezolvarile pentru `document_store` — „CUI cumparator
incorect" ajunge in documente doar daca o scrie cineva, si cel mai ieftin loc de
unde poate fi scrisa e ce a raspuns deja omul o data.

Limita, documentata in README: preluarea se detecteaza doar in grupuri cu cel
putin FIR_PRELUARE_MIN_PARTICIPANTI participanti, deci nu in self-chat si nu in
grupul de test.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q4uzvgm7AyJch5WH8QHRhY
This commit is contained in:
Claude Agent
2026-09-01 20:04:14 +00:00
parent 6686a5406c
commit a4fe127926
3 changed files with 91 additions and 0 deletions

View File

@@ -559,6 +559,30 @@ inregistreaza in `~/.maria-bridge/escalations/` si apare in dashboard, sectiunea
„Trimise la suport". Jurnalul se scrie intotdeauna, si cand notificarea esueaza:
altfel exact intrebarile fara raspuns ar disparea fara urma.
### Si ce a raspuns omul
Cat tine preluarea, **fiecare mesaj al omului din echipa se adauga la fisierul
escaladarii** (`completari`, cu `"fel": "raspuns_om"` si cine a scris). Inainte,
replica lui traia doar in firul din `conversations/`, care se sterge dupa
`FIR_TTL_MIN` — jurnalul pastra deci numai intrebarile fara raspuns, si niciun
raspuns. Or perechea eroare + rezolvare e chiar materia prima pentru documentele
RAG: o eroare ca „CUI cumparator incorect" ajunge in `document_store` doar daca o
scrie cineva acolo, iar cel mai ieftin loc de unde poate fi scrisa e ce a raspuns
deja omul o data.
De unde se citesc, pentru o trecere in revista:
```bash
jq -r 'select(.completari) | .ref + "\n ? " + (.text // .ocr_text // "")[0:120]
+ "\n" + ([.completari[] | select(.fel == "raspuns_om")
| " > " + .text] | join("\n"))' ~/.maria-bridge/escalations/*-M-*.json
```
**Atentie la limita:** preluarea se detecteaza doar in grupuri cu cel putin
`FIR_PRELUARE_MIN_PARTICIPANTI` (2) participanti. In self-chat si in grupul de test
tot ce se scrie e `fromMe`, deci acolo raspunsurile nu se inregistreaza automat —
doar in grupurile reale de client.
## Ce a citit Maria dintr-o captura
Textul OCR se logheaza **integral** in `~/.maria-bridge/logs/rag.log`, cu prefix