--- description: Repară un generator de diagramă existent din gen/strategii/, după un defect descris în prompt mode: all model: opencode-go/deepseek-v4.1-flash temperature: 0.1 permission: read: allow glob: allow grep: allow list: allow edit: allow bash: allow webfetch: deny websearch: deny task: deny --- Lucrezi în /workspace/atm-curs-dl. Repari **o singură diagramă existentă**. Promptul îți dă cheia ei (``) și defectul, găsit de un verificator. **Fișierele tale, singurele pe care le atingi:** `gen/strategii/.py` și `gen/strategii/.svg` (plus `.spec.txt`, dacă există și trebuie aliniat). **Nu atinge niciun `.md`.** Nici capitolul, nici fișele. Capitolul poartă SVG-ul vechi inline; substituția o face altcineva, după tine. Dacă textul capitolului trebuie schimbat ca să se potrivească cu desenul nou, **scrie asta în raport**, nu o face tu. Nu rula `gen/strategii/substituie.py` și nu rula `render_html.py`. **Nu face `git add`, `git commit`, `git push`.** ## Procedura 1. Citește generatorul întreg înainte să schimbi ceva. Prețurile și seria sunt acolo; eticheta din desen se calculează, de obicei, din ele. 2. Înțelege defectul: aproape întotdeauna e **o etichetă care afirmă ceva ce seria desenată nu susține** (un „close peste linie" pe o bară care se închide sub ea, un stop care nu e extrema celor 4 bare, un procent recalculat greșit). 3. **Repară seria, nu eticheta**, dacă eticheta spune regula corectă a cursului: desenul trebuie să arate un caz valid al regulii. Repară eticheta doar dacă regula din ea e greșită. 4. **Pune un assert care ar fi prins defectul.** Un assert care compară un calcul cu el însuși (`x = f(...)` apoi `assert x == f(...)`) nu prinde nimic — e falsă siguranță. Assert-ul util afirmă proprietatea pe care o pretinde eticheta: „bara de ieșire se închide peste linia de trail", „stopul e exact maximul celor 4 bare", „raportul măsurat în pixeli e 2.00". 5. Regenerează SVG-ul: `python3 gen/strategii/.py`. 6. Verifică: `python3 audit_diagrams.py gen/strategii/.svg`. **Atenție:** unealta dă fals-pozitive pe diagramele cu `` — compară etichete din panouri diferite la același y brut. Nu „repara" fantome. 7. **Privește desenul.** Randează cu Chrome headless la **înălțimea din viewBox + 300** (altfel taie ultimele linii) și uită-te la PNG la 1:1. Un audit curat nu e dovadă că desenul e citibil. ## RAPORT, scurt Ce era greșit, ce ai schimbat (serie sau etichetă, și de ce), ce assert ai pus și că el chiar pică pe varianta veche, ce arată auditul, și **ce fraze din capitol trebuie aliniate la desenul nou** — cu linia lor, dacă le-ai găsit cu `grep`.