# HANDOFF - verificare automata ANAF pe factura > 30.09 seara, la cererea lui Marius: STERSE din docs/ planul, progresul, autoplan_anaf/, investigatia, diagnosticul si toate rapoartele (raport_*.md) citate mai jos. Au ramas doar acest fisier si `prompt_integrare_13_anaf.md`. Starea reala = git log pe `anaf-factura` in COMUN (`ca8e7ca..558ccda`) + mesajele de commit. Singurul pas ramas: aducerea pe `main` prin SVN + roa_sync, FARA branch (Marius: "nu vreau niciun branch"). Lista si pasii: `docs/svn_commit_anaf.md`. EXECUTAT: SVN r18238 corect. Primul roa_sync a pus pe git main .prg vechi (checkout main rescrisese discul - greseala in svn_commit_anaf.md). Lead: `svn revert` pe cele 3 .prg -> = r18238 = 558ccda. Al doilea roa_sync in lucru (agent sync2-anaf; rezultat in svn_commit_anaf.md "CORECTIE"). Branch anaf-factura se sterge doar dupa diff gol. Probele de test: Marius a decis stergerea - sterse de pe disc 30.09 (apar `D` in git pe branch, dispar cu el). Actualizat 29.09.2026, la ~257k context in sesiunea orchestratoare (prag Regula zero). STARE, nu instructiune noua. ## Stare - Plan APROBAT: `docs/plan_anaf_factura.md` - corectiile din fazele CEO/Design/Eng + "APROBAT" + "Rezultat proba D1" au prioritate fata de textul initial al stories. - Progres: `docs/progres_anaf_factura.md` (sursa de stare pe stories). Probe: `docs/autoplan_anaf/3_test_plan.md`. Tabel stari/tooltip-uri: `docs/autoplan_anaf/2_design.md` (iconitele: vezi "Rezultat proba D1" din plan, care inlocuieste `exclamare_*.bmp`/`terminat_*` din tabelul Design). - Branch `anaf-factura` in `D:\roa\ROAFACTURARE\COMUN`: - `5e7b11d` S0 - filtru istoric la/dupa data ceruta + `ocautare.prg:224` transmite sursa. Raport `docs/raport_s0_anaf.md`. - `6acd1ea` S1a - `ANAF_StarePartener(..., tlIstoricIntai)` (pozitia 8) + `lRadiatANAF`/`dRadiereANAF` doar live + `dataRadiere` in obiectul single-CUI. Raport `docs/raport_s1a_anaf.md` (11 PASS; partener_anaf UI nerulat). - `65a063b` S1b - logica indicatorului in `oAntetFacturare` (+ `lVerificaLaActivare`, `CodFiscalClient` accepta id negativ). Raport `docs/raport_s1b_anaf.md` (82 PASS; T-S1-6 Oracle indisponibil nerulat). - `5cf1010` S2 - declansatori (vc2 + write-back vcx/vct verificat prin reconversie). Raport `docs/raport_s2_anaf.md` (43 PASS). Copierea NU s-a atins: `cod_fiscal` se completeaza in `MarcheazaVerificareLaActivare` din Init. DE INTREBAT Marius: anularea dialogului de cautare client pe factura pune indicatorul pe NEUTRU desi clientul ramane afisat (ramura Else existenta goleste deja soldul). - `08353ef` S3 - buton manual la data facturii + "alt client". Raport `docs/raport_s3_anaf.md` (32 PASS). DE CONFIRMAT Marius: filtrul pe CUI se pune doar cand exista >=2 parteneri cu acel CUI. - Proba D1 facuta: `docs/raport_s1_d1.md`; .ico accepta transparenta, BMP opac. - ROAFACTURARE radacina: pe `main`, nimic comis; `docs/` sunt documente de lucru (nu se comit pe main). ## Ce urmeaza 1. ~~S1b~~ GATA (`65a063b`). Text initial: in `COMUN\programe\ofacturare_antet.prg` (clasa `oAntetFacturare`): `VerificaANAFAutomat(toForm, tlIstoricIntai)`, `ClasificaRezultat` (separata, testabila fara UI), `AplicaIndicatorANAF` (tolerant la lipsa `But_verifica1`; seteaza `cpictureup`+`cpicturedown`+`Picture`+`BackColor`+`ToolTipText`+`StatusBarText`, taiere 255), `LaSchimbareData`, `CodFiscalClient`; proprietati pe `oAntet`: `lInVerificare`, `cCheieVerificata`, steag activare, cache local `negasit`, instanta `anaf_verif_cautare` pentru `TextAnaf`. Data goala -> NEUTRU; gestiune dupa `poDate.tip IN (23,25,41)`; `lEditare` -> NEUTRU; nivel ANAF 0 -> NEUTRU. Proba headless pe toate starile (mock `ANAF_VerificaCuiSingle` primul in SET PROCEDURE). 2. ~~S2~~ GATA (`5cf1010`). Text initial: declansatori, write-back pe `COMUN\clase\ofacturare.vc2` (skill `roa-vfp-text-edit`, `-ProjectRoot` explicit, un singur scriitor): `Activate` existent `:18235-18241` (dupa `aseaza_totaluri`), marcaj in `Init` `:21575-21582`, `Clb_dataact` `:21940` si `Clb_dataireg` `:21962` -> `oAntet.LaSchimbareData`; `do_cauta_client` factura (dupa `:217`), aviz-partener (`:150-152`, completeaza `cod_fiscal`), ramura client sters -> NEUTRU; copiere `ofacturare_comun.prg:440-441` completeaza `cod_fiscal`. 3. ~~S3~~ GATA (`08353ef`). Text initial: `do_verifica` (`ofacturare_antet.prg:746-760`) transmite `poDate.dataact`; indicator din rezultatul butonului (fallback `goCacheANAF_Sesiune.Remove` cu CUI normalizat); Da/Nu "Alegeti alt client?" implicit Nu, filtru `cFiltruOrig` pe CUI numeric, fara filtru daca nu exista partener. 4. **S4 GATA-PARTIAL** (`22aa977` probe; raport `docs/raport_s4_anaf.md`: UI 35/35 pe ambele formulare, partener_anaf 75/2 FAIL vechi). Changelog 2.11.20 in `changelog_roafacturare.txt` NECOMIS (radacina e pe main -> SVN la Marius). Datorii manuale: raport sect. 7; prioritar defect 1 (Activate ruleaza in Init via SetFocus -> HTTP inainte de desenare). Prompt pentru #13: `docs/prompt_integrare_13_anaf.md`. Branch nepushat. Istoric: INTRERUPT la resume (fara raport; au ramas necomise probele `test_s4_indicator_ui.prg/.ps1`, `probe_s4_stack.*`, `mock_s4_stack.prg`; changelog neatins). Marius testeaza manual 29.09. Text initial: proba UI `vfp_ui_harness.ps1` (+ ROACONT/ROAGEST), captura designer, changelog; manual ramas = datorie deschisa. ## Decizie Marius 29.09 (dupa testul manual) - Factura din tab-ul Comenzi deschide dialogul mic "FACTURARE" (probabil `frm_date_factura`), fara declansatori -> nimic vizibil. Se lucreaza S2b pe acest dialog (diagnostic: `docs/diag_anaf_indicator.md`). - `frm_facturare_articole2` e lucrat de sesiunea planului #13 pe alt calculator: `svn revert` facut pe `ofacturare.vcx/.vct` (binarul NU mai contine S2). Textul S2 ramane comis in git pe `anaf-factura` (`5cf1010`). La final: prompt pentru sesiunea #13 ca sa integreze cele 10 linii S2 in `frm_facturare_articole2`. - Marius: S2b se face DIRECT cu write-back pe `ofacturare.vcx` (ramane modificat); promptul final pentru #13 mentioneaza S2 + S2b. - `79fb578` S2b - dialog vechi `frm_date_factura` (raport `docs/raport_s2b_anaf.md`, 20 PASS + regresie). Write-back facut: binarul contine acum S2 + S2b, text=binar. "View Parameter poDate.id_client" = bug de harness (PRIVATE), nu productie. - Mesaj User-Agent (lipit de Marius) IGNORAT - Marius a confirmat ca era pentru sesiunea ROACONT. - (depasit dupa S2b) ATENTIE: text `.vc2` (cu S2) != binar (fara S2) acum. NU rula `git_sync.ps1` pe ROAFACTURARE pe branch-ul `anaf-factura` - ar sterge S2 din text. - `5f64bc7` decizii Marius 30.09: anularea cautarii pastreaza indicatorul (garda in ReseteazaIndicator, fara .vc2); filtrul CUI >=2 parteneri ramane. Regresie S1b 82, S2 44, S2b 21, S3 32 - toate PASS. - `bc10cf6` + `d08adb2` (30.09, feedback Marius "urat"): fara BackColor, doar iconite din setul butonului (terminat_*_verde / exclamare_* / help_* 23x21 / original), text txtCodFiscal colorat (DisabledForeColor; OK RGB(0,110,0), ATENTIE RGB(192,64,0)). Raport `docs/raport_stil_indicator_anaf.md`. Toate probele PASS. Fara .vc2 -> promptul #13 ramane valabil (range pana la `d08adb2`). - `1f70a0b` (30.09): iconita "!!" originala recolorata pe stare - `COMUN\grafice\verificare{1,2}_{verde,portocaliu,gri}.bmp` NOI (necesita `svn add`). Raport `docs/raport_iconite_anaf.md`. Regresia PASS. Promptul #13: range pana la `1f70a0b`. - `7ff8450` (30.09): cod romanesc invalid (ANAF_ValidareCod, ocautare.prg:329) -> ATENTIE rosu; ATENTIE rosu peste tot (verificare_rosu.bmp nou); verde/gri refacute pentru contrast. Raport `docs/raport_cod_invalid_anaf.md`. Toate PASS. - CONFIRMAT 30.09 (in lucru, agent schema-anaf, raport `docs/raport_schema_anaf.md`): schema de mai jos + CNP invalid rosu + iconite putin mai deschise (contrast ~10-11) + butonul NU mai pune nicio intrebare (intrebarea "alt client" din S3 eliminata; linia PuneFiltruCui din frm_date_factura.do_cauta_client .vc2 ramane no-op, de scos la integrare #13). Schema: TEXTUL = verdict (verde OK / rosu problema / normal), ICONITA = sursa (colorata ca textul cand ANAF a raspuns sau istoricul e valabil; GRI cand ANAF n-a putut fi interogat; albastru original = nimic de verificat). Istoric mai vechi decat factura + ANAF cazut: problema -> text rosu + iconita gri; OK -> text normal + iconita gri. Portocaliu nefolosit (fisierele pot fi sterse). - `68c6f07` schema finala (text=verdict, iconita=sursa, CNP invalid rosu, contrast ~10.5) + `558ccda` butonul nu mai pune nicio intrebare. Regresie: S1b 104, S2 44, S2b 20, S3 30, S4 50+42 PASS. Changelog 2.11.20 rescris pe schema finala (necomis, radacina = SVN). Prompt #13 actualizat (range `..558ccda` + curatenie PuneFiltruCui/tcCui in frm_date_factura). - RAMAS LA MARIUS: test manual schema; proba fereastra goala la deschidere (client fara istoric); push `anaf-factura`; SVN: ofacturare.vcx/.vct, changelog, 8 .bmp noi `COMUN\grafice\verificare{1,2}_{verde,rosu,gri,portocaliu}.bmp` (portocaliu nefolosit - poate fi sters). - 30.09 seara: changelog 2.11.20 scurtat (necomis). Prompt #13 dat lui Marius (inline, fara diff; varianta cu diff in `docs/prompt_integrare_13_anaf.md`). Curatenie facuta: sterse logurile/FXP/screenshots/uisync din `COMUN\utile\Teste\anaf_factura`, probe_s4_stack*/mock_s4_stack, patch-urile, scripturile .py de iconite, handoff-urile intermediare, `ofacturare.vc2.pre_runda_s2.bak`. Pastrate: plan, progres, acest handoff, prompt #13, rapoartele, `iconite_anaf_marite.png`. Alte .bak/.FXP din COMUN (alte lucrari) NEATINSE. - DECIZIE MARIUS 30.09: NU push pe `anaf-factura`; modificarile trebuie sa ajunga pe `main`. NEFACUT. Regula (skill `roa-git-svn-commit`): pe `main` din COMUN scrie DOAR `roa_sync`; drumul e svn commit tintit al fisierelor branch-ului (din COMUN, SVN = sursa de adevar) -> roa_sync aduce pe git main. De urmat skill-ul intr-o sesiune proaspata; lista fisierelor: `git -C COMUN diff --stat ca8e7ca 558ccda` + binarele ofacturare.vcx/.vct + .bmp noi (svn add). Promptul #13 trebuie ajustat: nu mai cere branch-ul, ci `main` dupa sync. ## Neterminat / de curatat - `COMUN\utile\Teste\anaf_factura\sonda_d1_backcolor_buton.prg` necomis (+ log, .fxp, screenshots, uisync ignorate/necomise): decide la S4 daca scriptul intra in commit; `.fxp`/png/log nu. - partener_anaf (teste UI) nerulate dupa S1a - de rulat in S4 (dialogul de cautare arata acum si radiatul). - Nicio tranzactie deschisa, niciun proces vfp9 propriu viu, date de test Oracle curatate (CUI 8000596 si familia 80000xx dupa rapoarte). ## Stabilit, nu se reia - Tot codul facturii e in COMUN (cross-project); commit-uri pe `anaf-factura` in `COMUN\`, niciodata pe `main` din COMUN. Mandat: executie continua, commit dupa fiecare story, fara push/SVN/merge. - T1=A (activ peste tot), T3=B (radiat doar live), T2/T4-T10 recomandate; T8 inchis de D1 (EXCLAM.ICO). - Subagenti: Sonnet, prompt cu interdictii la inceput, livrabil pe disc + "GATA". opencode (`opencode-go/deepseek-v4.1-flash`) doar pentru voci de revizie; crapa fara limite de grep. ## Interzis - `git pull`/`git stash` in COMUN; push; svn commit; editare `.prg`/`.vc2` cu Edit/sed (cp1250) - script Python binar; doi scriitori pe acelasi fisier; proba vfp9 in paralel cu write-back.