Filtrul e bun. Dar cine se uită în vitrină?
Codex a rescris widgetul „Who to call today": din 19 rânduri amestecate, păstrează doar apelurile care chiar au sens. Am pus 4 agenți de audit pe el, pe unghiuri separate. Concluzia inițială a auditului: idee corectă, 2 bug-uri, vitrină goală. Apoi realitatea a corectat două premise — iar pe 13 iul PR-ul #1293 a intrat în main. Pagina păstrează amândouă: ce a văzut auditul și ce a decis operatorul.
Tot ce e conturat se poate apăsa. Constatările nu ți le povestesc — le declanșezi singur, cu soarta fiecăreia notată.
Ce propune PR-ul: patru porți
Înainte, orice lucru scadent devenea „sună". Acum, un rând intră în lista de telefon doar dacă trece patru porți — un singur „nu" îl scoate. Alege un caz real din săptămâna asta și urmărește-l prin porți:
Limita reală: poarta 1 ghicește din cuvinte
„E chiar un apel?" se decide citind textul titlului — o listă de cuvinte care sună a telefon. Mai jos e exact regula din cod, portată 1:1 în pagină. Testeaz-o: apasă exemplele sau scrie orice titlu de task și apasă Enter.
Regula e onestă la ambiguu — „Follow-up cu Laurențiu" e refuzat corect, nu ghicit. Dar cuvintele înșală în ambele limbi: „suna" e și „a suna", și „sună bine", și „sună el"; „call" e și „on-call", și „callback endpoint". Auditul a confirmat prin execuție că toate cele patru exemple roșii de mai sus intră în lista de telefon deși niciunul nu e un apel pe care-l ai tu de dat. Fix clasa de zgomot pe care PR-ul promite s-o elimine. Contragreutatea: pe cele 19 rânduri reale din ziua auditului, clasificarea a fost corectă cap-coadă — falsurile de mai sus sunt construite, rare în datele tale. Verdict final: limită cunoscută, acceptată la merge.
actionChannel pe Task — recordul spune că e apel, nu ghicim din text. Întrebarea de pus: dacă tot știm destinația, de ce să livrăm întâi ghicitul?„Bug”-ul care s-a dovedit intenție
ADR-ul promitea: pauză doar după apel fără răspuns. Codul face: pauză după orice contact înregistrat. Auditul a strigat „bug”. Radu a decis altfel. Declanșează întâi comportamentul:
De ce: pauza se calculează din Contact Attempt Trail, care numără tot — mesaje WhatsApp, apeluri răspunse, missed call-uri rezolvate. ADR-ul spunea „un no-answer creează cooldown”; codul spunea „orice încercare”. După decizia lui Radu, codul avea dreptate — așa că în branch s-a corectat documentația, nu codul: ADR-0092 + skill-urile spun acum „orice încercare de contact înregistrată”.
Obiecția cea mare — și cum a căzut
Argumentul central al auditului stătea pe interviul din 5 iulie: „Dashboard-ul nu-l deschid niciodată”. Uite ce a văzut auditul — și corecția venită pe 13 iulie:
voost (agenții)?Iar datele din spate sunt vii — lista are ce afișa în fiecare zi:
Verdictul, pe criteriul tău
Criteriul tău permanent: „cod minim, complexitate minimă, niciodată construit înaintea primului consumator real.” Cu consumatorul confirmat și cooldown-ul decis ca intenție, verdictul s-a răsturnat. Soarta fiecărei constatări:
| Constatare audit | Verdict inițial | Soarta finală |
|---|---|---|
| „Vitrină goală” — 0 consumatori | motivul respingerii | INFIRMAT — Dashboard-ul e din nou în meniu, tu îl deschizi (13 iul) |
| Cooldown la orice contact | bug P2 | INTENȚIE — decizia ta; s-a corectat documentația, nu codul |
| Clasificator: falsuri pozitive | bug P2 | LIMITĂ ACCEPTATĂ — corect pe cele 19 rânduri reale; actionChannel rămâne destinația |
| ~620 linii în fișierul greșit | de refăcut | FOLLOW-UP — refactor la următoarea atingere a zonei |
| Găuri de test (48h, decision-resolved) | de adăugat | FOLLOW-UP |
| PR #1293 | respins de audit | MERGED în main — 13 iul 2026, ADR renumerotat 0092 |
A citit codul, nu realitatea.
Faptele găsite au rămas fapte: regex-ul chiar acceptă falsuri, cooldown-ul chiar pornește la orice contact, fișierul chiar e de 3x. Dar două premise-cheie — cine deschide pagina și ce înseamnă „contact” — erau ale operatorului, nu ale codului.
Două corecții de la tine.
Dashboard-ul e din nou folosit → consumatorul există. „O conversație pe WhatsApp ar trebui să reseteze” → bug-ul era regula dorită. Ambele salvate în memoria agenților, ca să nu fie re-descoperite ca probleme.
Merged.
PR #1293 a intrat în main pe 13 iul: rebase peste 6 commit-uri noi, coliziunea de ADR rezolvată (0091→0092, regula casei), documentația cooldown-ului aliniată cu decizia ta, CI verde pe runner-ul self-hosted.
Ce a confirmat auditul ca solid (acum în main)
- Diagnosticul — „problema nu era cache-ul, ci amestecul" e corect și dovedit pe cele 19 rânduri
- Testele — nimic slăbit din testele vechi; cele noi sunt comportamentale și pinuiesc euristica (rar la un PR de mărimea asta)
- Vocabularul & ADR-0092 (născut 0091, renumerotat la merge) — „Call Attention Projection" e definit curat în CONTEXT.md, cu trade-off-urile recunoscute onest
- Onestitatea la ambiguu — refuză să ghicească canalul pentru „Follow-up" (cazul Laurențiu), în loc să presupună
Ce s-a întâmplat concret la merge — și ce rămâne
- Rebase peste main — 6 commit-uri noi, un singur conflict (indexul ADR) · plus regenerare client Prisma
- ADR renumerotat 0091 → 0092 — main luase deja 0091 (Task Comments); regula casei: al doilea merge renumerotează · 4 referințe actualizate
- Documentația cooldown reformulată — „un no-answer creează cooldown” → „orice încercare de contact înregistrată”, cu decizia ta citată în ADR · ADR-0092 + 2 skill-uri
- PR #1293 → CI verde → merge în main · 13 iul 2026
- Deploy-ul rămâne al tău —
pnpm run deploydin checkout-ul de producție, când vrei să-l vezi pe :4000 · nimic nu s-a atins în producție - Follow-up — mutarea proiecției din
widget-data.tsîn modulul business-operating; teste pe ramura 48h + „Decision rezolvat → omul reapare” · la următoarea atingere a zonei
Realitatea o știe doar operatorul.” AUDIT → CORECȚIE → MERGE · PR #1293 · VOOST CONTROL, IUL 2026