Commit Graph

231 Commits

Author SHA1 Message Date
Claude Agent
8567f893bc feat: [US-003] Audit and document deploy script data preservation
- Add detailed logging in Deploy-Backend function for data/ preservation
- Update deployment/windows/README.md with "Data Preserved During Deploy" section
- Document data/ directory structure (receipts/, telegram/, cache/)
- Explain preservation mechanism (backup → deploy → restore)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 23:41:55 +00:00
Claude Agent
752858182d feat: [US-002] Fix UTF-8 encoding for Windows console
Add UTF-8 encoding setup at the top of backend/main.py to fix
'charmap' codec encoding errors when logging Romanian diacritics
(ă, î, ș, ț) on Windows console.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 23:36:47 +00:00
Claude Agent
b137e80b71 feat: multi-Oracle server support with runtime switching
Complete implementation of multi-server Oracle database support:

Backend:
- Multi-pool Oracle with lazy loading per server
- Email-to-server cache for automatic server discovery
- JWT tokens include server_id claim
- /auth/check-identity and /auth/check-email endpoints
- /auth/my-servers endpoint for listing user's accessible servers
- Server switch with password re-authentication

Frontend:
- New ServerSelector component for header dropdown
- Multi-step login flow (identity → server → password)
- Server switching from header with password modal
- Mobile drawer menu with server selection
- Dark mode support for all new components
- URL bookmark support with ?server= query param

Scripts:
- Unified start.sh replacing start-prod.sh/start-test.sh
- Unified ssh-tunnel.sh with multi-server support
- Updated status.sh for new architecture

Tests:
- E2E tests for multi-server and single-server login flows
- Backend unit tests for all new endpoints
- Oracle multi-pool integration tests

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 22:39:06 +00:00
Claude Agent
5f99ee2fd0 curatare 2026-01-22 13:41:48 +00:00
Claude Agent
fcf2722974 refactor(docs): create troubleshooting folder, cleanup OCR docs
- Create docs/troubleshooting/ for debugging guides
- Move OCR_MEMORY_SOLUTIONS_RESEARCH.md → troubleshooting/OCR_MEMORY_LEAKS.md
- Delete outdated docs/data-entry/OCR_PROFILE_TEST_RESULTS.md
- Update CLAUDE.md documentation index with troubleshooting reference

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 09:21:07 +00:00
Claude Agent
625fdcef5e chore: delete outdated OCR benchmark results
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 09:16:47 +00:00
Claude Agent
3baac5f03e refactor(tests): move OCR benchmark results to tests directory
- Move docs/OCR_TEST_RESULTS.md → tests/ocr-validation/BENCHMARK_RESULTS.md
- Keep docs/OCR_MEMORY_SOLUTIONS_RESEARCH.md as technical reference

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 09:15:25 +00:00
Claude Agent
62f86250cc refactor(docs): consolidate and cleanup documentation
- Delete 9 deprecated/obsolete docs (~6,300 lines removed)
- Move test PDFs to tests/fixtures/ocr-samples/
- Create docs/DEPLOYMENT.md as principal guide
- Create tests/ocr-validation/README.md
- Update all refs for ultrathin monolith architecture
- Update OCR tests to use relative paths

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 09:14:51 +00:00
Claude Agent
1b9ebf1d8f feat(dashboard): Complete dashboard desktop cleanup and improvements
User Stories Completed:
- US-001: Eliminare SolduriCompactCard de pe Desktop
- US-002: Eliminare Icoane din Header-ul CollapsibleCard
- US-003: Reorganizare TreasuryDualCard - Text Înainte de Grafice
- US-004: Reorganizare ClientiBalanceCard - Text Înainte de Grafice
- US-005: Reorganizare FurnizoriBalanceCard - Text Înainte de Grafice
- US-006: Grafice Colapsabile în TreasuryDualCard
- US-007: Grafice Colapsabile în ClientiBalanceCard
- US-008: Grafice Colapsabile în FurnizoriBalanceCard
- US-009: Grafice Colapsabile în CashFlowMetricCard

Additional Improvements:
- Add cache metadata display (CacheFooter component) for all dashboard cards
- Add @cached decorators to get_monthly_flows and get_indicators_with_sparklines
- Fix financial indicators calculations and sparkline sync
- Add state reset on company change to prevent stale data
- New shared components: CacheFooter.vue, authRedirect.js
- Enhanced FinancialIndicatorsCard with sparklines and period selection

Squashed from branch: ralph/dashboard-desktop-cleanup (11 commits)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 07:27:27 +00:00
Claude Agent
69683b2d65 fix(dashboard): Add missing CollapsibleCard shared component
This component was imported in DashboardView.vue but never committed.
CollapsibleCard provides an expandable/collapsible card UI pattern used
for Trezorerie, Cash Flow, Clienți, and Furnizori dashboard cards.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 20:47:14 +00:00
Claude Agent
3039138e66 feat(financial-indicators): Sync desktop descriptions with mobile for UX consistency
Update all 34 indicator descriptions in the Expanded View (Desktop) section
to match the more descriptive Mobile Bottom Sheet format. Each description
now starts with a natural language explanation followed by the formula and
ideal threshold.

Categories updated: Lichiditate, Eficiență, Risc, Cash Flow, Dinamică,
Profitabilitate, and Altman Z-Score.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 20:46:13 +00:00
Claude Agent
dd4b90f922 feat(financial-indicators): Complete Financial Indicators Dashboard Card
Implementare completă a card-ului Indicatori Financiari în Dashboard Solduri:

Backend:
- Model FinancialIndicators cu 22+ indicatori organizați pe categorii
- Service cu calcule din VBAL (Lichiditate, Eficiență, Risc, Cash Flow, Dinamică)
- Altman Z-Score cu toate componentele (X1-X4) și valori absolute
- Profitabilitate cu ROA, ROE, Cifra Afaceri, Cheltuieli separate (operaționale/financiare)
- Caching inteligent pe company_id, luna, an

Frontend:
- FinancialIndicatorsCard.vue cu 4 indicatori principali collapsed
- Expanded view grupat pe categorii (desktop + mobile BottomSheet)
- Subindicatori pentru verificare manuală în balanță
- Traduceri complete în română
- Dark mode support complet
- Sparklines cu tooltips
- Responsive design (desktop grid + mobile carousel)

Documentație:
- PRD complet cu specificații și formule
- Descrieri cu conturi din planul contabil român (OMFP 1802/2014)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 17:32:48 +00:00
Claude Agent
15327687f4 feat(dashboard-solduri): Complete dashboard solduri v2 implementation
## Features
- US-2001: Create reusable SolduriCompactCard component
- US-2004: Solduri section on Desktop (top, without title)
- US-2005: Remove MaturityAndDetailsCard from Dashboard
- US-2006: Integrate Solduri data from dashboardStore
- US-2007: Visual indicators for financial status
- US-2008: Refresh button in Dashboard header

## UI Improvements
- Desktop: 2x2 grid for solduri cards with larger breakdown fonts
- Mobile: Single column layout with auto height
- Theme persistence: synchronous initialization to prevent flash
- Unified "Bonuri" icon (pi-shopping-bag) across all navigation

## Files Changed
- New: SolduriCompactCard.vue - expandable cards for Trezorerie/Clienți/Furnizori/TVA
- Modified: DashboardView.vue - integrated solduri section
- Modified: index.html - theme init script
- Modified: Mobile navigation components - icon consistency

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 08:37:10 +00:00
Claude Agent
eedc2bca67 feat(ui-fixes-phase6): Fix SpeedDial Bulk Upload și Mobile Spacing
- SpeedDial: Redus la 2 opțiuni (Bon Nou + Bulk Upload)
- SpeedDial: Eliminat masca gri (:mask="false")
- Bulk Upload: Acum deschide file picker direct (openBulkFileInput)
- Mobile spacing: Eliminat margin-top excesiv pe .mobile-layout
- MaturityAnalysisCard: Redus padding/margin pe mobil
- MaturityAnalysisView: Redus gap pe mobil

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 16:25:44 +00:00
Claude Agent
0868fc4ea3 feat(ui-fixes-phase6): Complete US-705 - Reducere Padding și Margin Top Excesiv
Implemented by Ralph autonomous loop.
Iteration: 5

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 22:39:06 +00:00
Claude Agent
e47e8956e0 feat(ui-fixes-phase6): Complete US-704 - Mărire Spațiu Tabel Scadențe
Implemented by Ralph autonomous loop.
Iteration: 4

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 22:36:09 +00:00
Claude Agent
6fd5ffdf94 feat(ui-fixes-phase6): Complete US-703 - Navigare Hamburger pe Paginile Analize
Implemented by Ralph autonomous loop.
Iteration: 3

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 22:34:32 +00:00
Claude Agent
7d5e8f32ed feat(ui-fixes-phase6): Complete US-702 - Verificare Meniu Acțiuni Per Bon
Implemented by Ralph autonomous loop.
Iteration: 2

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 22:31:33 +00:00
Claude Agent
cc52ad1850 feat(ui-fixes-phase6): Complete US-701 - Reparare SpeedDial FAB pe Lista Bonuri
Implemented by Ralph autonomous loop.
Iteration: 1

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 22:29:57 +00:00
Claude Agent
6775565e01 feat(ui-fixes-phase6): Complete US-610 - Eliminare Spațiu Gol Deasupra Tabelelor
Implemented by Ralph autonomous loop.
Iteration: 11

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:48:47 +00:00
Claude Agent
bc8537f9b5 feat(ui-fixes-phase6): Complete US-609 - Buton Resetează pe Toate Paginile cu Filtre Mobil
Implemented by Ralph autonomous loop.
Iteration: 10

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:42:27 +00:00
Claude Agent
109ef50fb2 feat(ui-fixes-phase6): Complete US-608 - Fix Buton FAB SpeedDial în Lista Bonuri
Implemented by Ralph autonomous loop.
Iteration: 9

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:38:01 +00:00
Claude Agent
ec678b4b04 feat(ui-fixes-phase6): Complete US-607 - Secțiune Utilizator Compactă în Meniul Mobil
Implemented by Ralph autonomous loop.
Iteration: 8

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:33:08 +00:00
Claude Agent
83ec6e69d5 feat(ui-fixes-phase6): Complete US-606 - Layout Scrollabil Unificat în Meniul Mobil
Implemented by Ralph autonomous loop.
Iteration: 7

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:29:48 +00:00
Claude Agent
36f798eb34 feat(ui-fixes-phase6): Complete US-605 - Companie/Perioadă Colapsabile în Meniul Mobil
Implemented by Ralph autonomous loop.
Iteration: 6

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:23:39 +00:00
Claude Agent
0737f0626b feat(ui-fixes-phase6): Complete US-604 - Toggle Temă cu 3 Stări în Meniul Mobil
Implemented by Ralph autonomous loop.
Iteration: 5

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:18:22 +00:00
Claude Agent
496fd8014e feat(ui-fixes-phase6): Complete US-603 - Implementare Pagină Facturi Detaliate
Implemented by Ralph autonomous loop.
Iteration: 3

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:11:33 +00:00
Claude Agent
ea82f61a74 feat(ui-fixes-phase6): Complete US-602 - Tab-uri Clienți/Furnizori în Pagina Scadențe
Implemented by Ralph autonomous loop.
Iteration: 2

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:08:47 +00:00
Claude Agent
395eb2bc9c feat(ui-fixes-phase6): Complete US-601 - Adăugare Secțiune Analize în Sidebar Desktop
Implemented by Ralph autonomous loop.
Iteration: 1

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-13 16:02:32 +00:00
Claude Agent
1665d8cafd docs: Update Ralph progress log - Phase 5 complete (19/19 stories) 2026-01-13 14:16:04 +00:00
Claude Agent
dce2140f65 feat(unified-mobile-desktop-ui): Complete US-519 - Separare Casă și Bancă în Pagini Distincte
Implemented by Ralph autonomous loop.
Iteration: 21

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:46:11 +00:00
Claude Agent
8e74b3291f feat(unified-mobile-desktop-ui): Complete US-518 - Creare/Vizualizare/Editare Bon - Butoane Doar Sus
Implemented by Ralph autonomous loop.
Iteration: 20

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:39:17 +00:00
Claude Agent
817e2c7529 feat(unified-mobile-desktop-ui): Complete US-517 - Lista Bonuri Desktop - Dialog Ștergere Material Design
Implemented by Ralph autonomous loop.
Iteration: 19

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:35:59 +00:00
Claude Agent
97095f50ef feat(unified-mobile-desktop-ui): Complete US-516 - Lista Bonuri - Meniu Acțiuni Per Bon Material Design
Implemented by Ralph autonomous loop.
Iteration: 18

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:33:04 +00:00
Claude Agent
e325663cc1 feat(unified-mobile-desktop-ui): Complete US-515 - Lista Bonuri - Meniu 'Bon Nou/Bulk Upload' Material Design
Implemented by Ralph autonomous loop.
Iteration: 17

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:28:25 +00:00
Claude Agent
04e9cf6779 feat(unified-mobile-desktop-ui): Complete US-514 - Fix Spațiu Blank Excesiv Top (Toate Paginile)
Implemented by Ralph autonomous loop.
Iteration: 15

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:16:20 +00:00
Claude Agent
870ef5175d feat(unified-mobile-desktop-ui): Complete US-513 - Analize Scadențe - Eliminare Secțiune Facturi Detaliate
Implemented by Ralph autonomous loop.
Iteration: 14

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:11:56 +00:00
Claude Agent
004951ec50 feat(unified-mobile-desktop-ui): Complete US-512 - Detailed Invoices - Fix Overlay Butoane Ascunse
Implemented by Ralph autonomous loop.
Iteration: 12

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 23:05:48 +00:00
Claude Agent
65a051ba0a feat(unified-mobile-desktop-ui): Complete US-511 - Detailed Invoices - Eliminare Buton Filtru Duplicat
Implemented by Ralph autonomous loop.
Iteration: 11

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:57:13 +00:00
Claude Agent
2f6aa6a37a feat(unified-mobile-desktop-ui): Complete US-510 - Detailed Invoices - Eliminare Filtru Clienți/Furnizori
Implemented by Ralph autonomous loop.
Iteration: 10

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:55:24 +00:00
Claude Agent
1ad2c25933 feat(unified-mobile-desktop-ui): Complete US-509 - Fix Detailed Invoices - Grupuri Expandabile Desktop
Implemented by Ralph autonomous loop.
Iteration: 9

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:48:38 +00:00
Claude Agent
bb9e336e2f feat(unified-mobile-desktop-ui): Complete US-508 - Selector Temă în MobileDrawerMenu (Dark/Light/Auto)
Implemented by Ralph autonomous loop.
Iteration: 8

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:45:25 +00:00
Claude Agent
6d7613a82e feat(unified-mobile-desktop-ui): Complete US-507 - Selecție Companie/Perioadă în MobileDrawerMenu
Implemented by Ralph autonomous loop.
Iteration: 7

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:42:54 +00:00
Claude Agent
48b1491fe4 feat(unified-mobile-desktop-ui): Complete US-506 - Fix MobileDrawerMenu - Deconectare Vizibil
Implemented by Ralph autonomous loop.
Iteration: 6

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:36:38 +00:00
Claude Agent
9d66a0b2aa feat(unified-mobile-desktop-ui): Complete US-505 - Meniu Hamburger Desktop = Mobil
Implemented by Ralph autonomous loop.
Iteration: 5

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:29:44 +00:00
Claude Agent
cf912693ca feat(unified-mobile-desktop-ui): Complete US-504 - Fix Export Endpoints Backend
Implemented by Ralph autonomous loop.
Iteration: 4

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:27:34 +00:00
Claude Agent
af012a7a11 feat(unified-mobile-desktop-ui): Complete US-503 - BottomSheet Filtre pentru Lista Bonuri (Mobil)
Implemented by Ralph autonomous loop.
Iteration: 3

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:23:51 +00:00
Claude Agent
c74fe4b221 feat(unified-mobile-desktop-ui): Complete US-502 - Header Actions Bar Unificat - Lista Bonuri
Implemented by Ralph autonomous loop.
Iteration: 2

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:20:46 +00:00
Claude Agent
94d215d6ae feat(unified-mobile-desktop-ui): Complete US-501 - Header Actions Bar Unificat - Rapoarte
Implemented by Ralph autonomous loop.
Iteration: 1

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 22:16:53 +00:00
Claude Agent
3a11fcd81c feat(mobile-fixes-phase4): Complete US-408 - Verificare Finală - Toate Fix-urile Funcționează
Implemented by Ralph autonomous loop.
Iteration: 8

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-12 19:58:15 +00:00