diagrame: ultimele patru etichete ramase in urma textului corectat

selectia_rvol: 'sub jumatate fata de normal' pentru 0,61 -> '61 % dintr-o zi
normala'. mdsrt_exemplu: legenda spunea ca nivelurile SPY sunt 'reale, din
curs'; sunt reconstruite dupa ilustratia unui sumar Q&A. mbt_iesire: 2.04R ->
2,0R, cifra sursei, prin rotunjire la afisare, fara sa se atinga nicio serie;
assert-ul verifica acum textul din SVG-ul randat, nu doar valoarea bruta.
atmi_exemplu: '13 luni mai tarziu' era citit ca fapt al materialului - acum
spune ca 13 e cifra desenului, materialul da 'aproximativ un an'; si cele
patru marcaje de completare din desenele atmi sunt uniformizate.

Plus cei trei agenti opencode scrisi pentru rundele astea: verif_strat,
corector_strat, reparator_grafic.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ThN7ixZrowca8aTGrK1MUJ
This commit is contained in:
Claude Agent
2026-09-22 20:13:12 +00:00
parent 424ecf2ef4
commit 76011566ee
28 changed files with 374 additions and 97 deletions

View File

@@ -168,7 +168,7 @@ p += panou("hig", PAN_AX, AZI_HIG, GREEN,
"se tranzacționează dublu față de normal"))
p += panou("ulta", PAN_BX, AZI_ULTA, RED,
"azi = 0,61 × media → RVOL 0.61",
"sub jumătate față de o zi normală",
"61 % dintr-o zi normală",
("sub 100 % = minus, NU veto",
"îl notezi, dar analiza continuă"))
@@ -234,6 +234,17 @@ assert [b[3] for b in BARS["hig"][:-1]] == [b[3] for b in BARS["ulta"][:-1]]
# 3. bara „azi" din HIG e chiar cea mai înaltă, iar cea din ULTA e sub medie
assert BARS["hig"][-1][2] == max(b[2] for b in BARS["hig"]), "bara HIG nu e cea mai înaltă"
assert BARS["ulta"][-1][2] < h_media_px, "bara ULTA nu e sub linia mediei"
# 3c. eticheta de sub bara ULTA afirmă ce se vede în desen: 0,61 din medie =
# 61 % dintr-o zi normală, adică PESTE jumătate. Vechiul text „sub jumătate
# față de o zi normală" contrazicea bara desenată (61 % > 50 %) și pica.
_rvol_ulta = BARS["ulta"][-1][2] / h_media_px
assert round(_rvol_ulta * 100) == 61, \
f"bara ULTA măsoară {_rvol_ulta * 100:.0f} % din medie, eticheta nu poate spune 61 %"
assert _rvol_ulta > 0.5, \
f"bara ULTA e {_rvol_ulta:.2f} din medie, deci PESTE jumătate, nu sub ea"
assert "61 % dintr-o zi normală" in svg, "lipsește din desen procentul ULTA"
assert "jumătate" not in svg, 'a reapărut formularea greșită "sub jumătate"'
# și barele nu ies din cadrul panoului
for tag in ("hig", "ulta"):
for cx, top, h, v in BARS[tag]:
@@ -252,7 +263,7 @@ for tag in ("hig", "ulta"):
f"{tag}: eticheta mediei cade peste o bară (valoare {v})"
# 4. nicio cifră care nu e desenată sau care nu vine din material
PERMISE = {"2", "200", "100", "10", "50", "0.61", "0,61", "0.86", "1.03", "1.2", "16"}
PERMISE = {"2", "61", "200", "100", "10", "50", "0.61", "0,61", "0.86", "1.03", "1.2", "16"}
for _x, _y, s, *_ in TEXTS:
for n in re.findall(r"\d+(?:[.,]\d+)?", s):
assert n in PERMISE, f"cifră fără acoperire în material: {n!r} în {s!r}"