Files
claude-agent/TODO.md
Claude Agent c97ba0ce9c docs(todo): Maria e mutata si functionala pe LXC 171
Asociere reusita, prototipul de pe 104 oprit, si reparat filtrul de JID care
arunca tacut toate mesajele dupa asociere (WhatsApp foloseste acum LID).
Nimic nu mai e blocat.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q4uzvgm7AyJch5WH8QHRhY
2026-08-31 21:02:44 +00:00

5.2 KiB

TODO — progresul funcționalităților

Registrul viu al lucrului cerut prin puntea Discord. Botul îl citește la începutul oricărei cereri de dezvoltare și îl actualizează la final — vezi docs/flux-dezvoltare.md.

Stări: 🔵 planificat · 🟡 în lucru · ⛔ blocat · ✅ gata · ❌ abandonat


🟡 În lucru

(nimic în acest moment)


⛔ Blocate

(nimic blocat)


🔵 Planificate

Mesaje vocale din Discord

  • Unde: romfastsql/proxmox/lxc171-claude-agent/discord-bridge/bot.py
  • Ce ar însemna: atașamentele audio (mesajele vocale Discord) transcrise local înainte de a intra în prompt. Whisper rulează pe CPU pe LXC 171, deci trebuie măsurat întâi costul în timp per mesaj.
  • De ce nu acum: nu a fost cerut; e singura limitare rămasă după atașamente.
  • Actualizat: 2026-08-31

✅ Gata

Maria mutată pe LXC 171, cu tot ce s-a construit

  • Ce s-a făcut: LXC 171 asociat la WhatsApp (+40723197939, dispozitiv nou al aceluiași cont); prototipul de pe LXC 104 oprit și dezactivat. llama-qwen35 rămâne pe 104 și e folosit de 171 prin rețea (LLM_URL=http://10.0.20.161:8091).
  • Rezultat: Maria a trecut de la 24 de chunk-uri dintr-un singur fișier la 173 din 11 documente, plus sincronizare Drive automată.
  • Un blocaj găsit pe drum: după asociere nu răspundea nimic. WhatsApp livrează self-chat-ul cu JID de tip LID (51947713372214@lid), iar filtrul compara doar cu <număr>@s.whatsapp.net — arunca tot, fără nicio urmă în log. Reparat în whatsapp/index.js; mesajele respinse se loghează acum cu motivul.
  • Verificat: „token efactura expirat" → preluat, căutat în RAG, răspuns trimis.
  • Terminat: 2026-08-31

Maria — sincronizare Google Drive

  • Unde: maria-whatsapp-bridge/ops/setup-drive.sh, rag/sync.py, docs/rclone-google-drive-headless.md (în romfastsql)
  • Ce face: rclone autorizat cu token obținut pe stația Windows (rclone authorize, fără cont de serviciu Google), dosarul fixat pe ID. maria-sync.timer trage la 10 min.
  • Rezultat: depozitul a trecut de la 6 la 11 documente — au intrat SAF-T D406, e-Factura (.md + .xml), roaauto și roagest, care lipseau complet.
  • Terminat: 2026-08-31

Maria indexează .xml, preferat peste .md

  • Unde: maria-whatsapp-bridge/rag/store.py (DOC_EXTENSIONS, documents_for_index), rag/indexer.py (chunk_xml), rag/sync.py, discord-bridge/dashboard/api.py + index.html, tests/
  • Ce face: .xml intră în depozit și, când același document există și ca .md, doar .xml se indexează (.xml > .md > .txt); cel umbrit rămâne pe disc și e marcat în dashboard. XML-ul se taie câte un chunk per problemă, cu mesajul de eroare și rezolvarea împreună.
  • De ce: la d406_saft_knowledge, .xml e cu 3 luni mai nou și cu 50% mai mare decât .md. Tăierea pe linii goale ar fi separat eroarea de rezolvare.
  • Verificat: 20 de teste noi (suita Maria, prima ei suită); puntea Discord 426 pass.
  • Terminat: 2026-08-31

Atașamente Discord → Claude (imagini + fișiere text)

  • Unde: romfastsql/proxmox/lxc171-claude-agent/discord-bridge/bot.py (build_user_content), runner.py (user_message), tests/test_attachments.py
  • Ce face: imaginile png/jpeg/gif/webp ajung ca blocuri image (max 4, max 3,5 MB), fișierele text intră în prompt (max 4, trunchiate la 100 KB), restul sunt doar numite. Merge și mid-tur, ca steering. Un mesaj doar cu poză nu mai e respins ca gol.
  • Verificat: 31 de teste noi, suita 426 pass; blocurile de imagine testate pe CLI-ul real (--input-format stream-json), Claude descrie corect imaginea.
  • Terminat: 2026-08-31

Plan cu Opus, execuție cu Sonnet

  • Unde: docs/flux-dezvoltare.md, referit din CLAUDE.md
  • Ce face: orice cerere de dezvoltare trece întâi printr-un subagent Plan pe Opus; planul se postează în fir, apoi execuția merge pe Sonnet, în sesiunea firului.
  • Terminat: 2026-08-31

Memorie comună claude-agent ↔ romfastsql

  • Ce face: ~/.claude/projects/-workspace-claude-agent/memory e symlink către memoria proiectului romfastsql, deci firele Discord nu mai pornesc fără context.
  • Terminat: 2026-08-31

Repo propriu pentru claude-agent + reparare Gitea

  • Ce face: /workspace/claude-agent e repo separat (git@gitea.romfast.ro:romfast/claude-agent.git), scos din romfast/workspace. Gitlink-urile fără .gitmodules care dădeau 500 pe pagina repo-ului workspace au fost scoase din index.
  • Terminat: 2026-08-31

Jurnal

Cea mai recentă intrare prima. O linie per schimbare de stare.

  • 2026-08-31 — ✅ Maria mutată pe LXC 171; reparat filtrul care arunca mesajele LID
  • 2026-08-31 — ✅ Maria — sincronizare Google Drive, 6 → 11 documente
  • 2026-08-31 — ✅ Maria indexează .xml, preferat peste .md
  • 2026-08-31 — ✅ Atașamente Discord → Claude (imagini + fișiere text)
  • 2026-08-31 — ✅ Plan cu Opus, execuție cu Sonnet
  • 2026-08-31 — ✅ Memorie comună claude-agent ↔ romfastsql
  • 2026-08-31 — ✅ Repo propriu pentru claude-agent + reparare Gitea