Commit Graph

84 Commits

Author SHA1 Message Date
6515e73ead feat: apply category rules on creation 2026-08-20 09:18:17 +03:00
5f282d199d Merge pull request 'Добавить типы счетов и доход от процентов' (#31) from feature/account-metadata-interest into main
Reviewed-on: #31
2026-08-20 06:15:31 +00:00
3d7d0e639c test: fix import integration cleanup 2026-08-20 08:47:53 +03:00
1b20b76704 test: cover account metadata reimport 2026-08-20 08:46:49 +03:00
c6b79c1d35 fix: finalize account labels and confirmation 2026-08-20 08:45:22 +03:00
dd2990357a fix: allow investment rules and label accounts 2026-08-20 08:43:29 +03:00
6550e2057c feat: add account metadata and interest analytics 2026-08-20 08:40:03 +03:00
f8e4f86a6d Merge pull request 'Исправить строки футера боковой панели' (#30) from fix/sidebar-footer-layout into main
Reviewed-on: #30
2026-08-20 04:51:51 +00:00
e1043bed36 fix: align sidebar footer metadata 2026-08-20 07:49:12 +03:00
a090ce37ad Merge pull request 'Спрятать production-секреты Docker в env' (#29) from fix/production-env-secrets into main
Reviewed-on: #29
2026-08-19 21:22:10 +00:00
1142a9755a fix: exclude env files from Docker context 2026-08-20 00:20:59 +03:00
bb3789c01c fix: inject production secrets via env file 2026-08-20 00:18:58 +03:00
2422ea88fd Merge pull request 'Добавить конвертацию брокерского XLSX' (#28) from feature/broker-xlsx-converter into main
Reviewed-on: #28
2026-08-19 15:01:35 +00:00
3af9e9dbfe fix: skip operation UUID conflicts on import 2026-08-19 17:50:07 +03:00
b99555ca23 fix: validate duplicate operation UUIDs 2026-08-19 17:48:39 +03:00
5c059cbc62 feat: assign deterministic operation UUIDs 2026-08-19 17:46:50 +03:00
3d08c9e5c6 fix: validate broker XLSX closing balance 2026-08-19 15:56:37 +03:00
076ab7b055 feat: add VTB broker XLSX converter 2026-08-19 15:53:58 +03:00
e78445888f Merge pull request 'feat(analytics): net cashflow reporting' (#26) from feature/net-analytics-cashflow into main
Reviewed-on: #26
2026-08-19 11:24:35 +00:00
36562f8d78 docs: update analytics changelog 2026-08-19 09:14:57 +03:00
1cbef453b0 test(analytics): verify SQL aggregates 2026-08-19 09:12:43 +03:00
019714a8cf test(analytics): cover net category semantics 2026-08-19 07:49:54 +03:00
a79629a60d feat(analytics): add net cashflow reporting 2026-08-18 23:09:40 +03:00
ea70be8e5a Merge pull request 'refactor(frontend): complete BEM design system' (#20) from agent/family_budget:refactor/complete-bem-design-system into main
Reviewed-on: #20
2026-08-16 06:29:58 +00:00
2c98d9c534 docs: add frontend 0.8.7 changelog 2026-08-16 09:19:46 +03:00
2422ca44b0 refactor(frontend): complete BEM design system 2026-08-14 23:58:14 +03:00
6610e43200 Merge pull request 'feat(frontend): refresh UI with warm fintech redesign' (#19) from feature/redesign into main
Reviewed-on: #19
2026-04-22 08:41:37 +00:00
Anton
ec62a0591e feat(frontend): refresh UI with warm fintech redesign 2026-04-22 11:40:15 +03:00
97b61de092 Merge pull request 'fix: close modal popups only on overlay mousedown' (#18) from fix/modal-mousedown-overlay-close into main
Reviewed-on: #18
2026-04-15 14:02:52 +00:00
Anton
0e0186fdbb fix: close modal popups only on overlay mousedown 2026-04-15 17:02:15 +03:00
02ca34d088 Merge pull request 'feat(analytics): account commission and investment transfers' (#17) from feat/commission-analytics-investments into main
Reviewed-on: #17
2026-04-15 11:32:56 +00:00
Anton
f6d3196254 merge main into feat/commission-analytics-investments
Made-with: Cursor
2026-04-15 14:30:29 +03:00
Anton
fccde4259d feat(analytics): account commission and investment transfers
Handle cashback commission imports, include commissions in analytics with separate investment metrics, and expose commission/version details in the UI.

Made-with: Cursor
2026-04-14 16:15:05 +03:00
e97203c4ab Merge pull request 'chore: adds versions and copyright' (#16) from feat/sidebar-versions-copyright into main
Reviewed-on: #16
2026-03-17 03:44:11 +00:00
vakabunga
6dd8c01f5e chore: adds versions and copyright 2026-03-17 06:43:26 +03:00
495c1e89bb Merge pull request 'refactor: center main content layout' (#15) from feat/center-layout into main
Reviewed-on: #15
2026-03-16 14:56:05 +00:00
Anton
032a9f4e3b feat: center main content layout 2026-03-16 17:54:35 +03:00
d5f49fd86f Merge pull request 'feat(ui): simplify clear history confirmation modal: confirmation now relies on two checkboxes only.' (#14) from feat/simplify-clear-modal into main
Reviewed-on: #14
2026-03-16 14:52:22 +00:00
Anton
ab88a0553d feat(ui): simplify clear history confirmation modal: confirmation now relies on two checkboxes only. 2026-03-16 17:51:47 +03:00
0589da5005 Merge pull request 'feat(imports): import history and delete by import' (#13) from feat/import-history into main
Reviewed-on: #13
2026-03-16 14:48:47 +00:00
c50e48d564 Merge pull request 'chore(frontend): adds favicon' (#12) from feat/add-favicon into main
Reviewed-on: #12
2026-03-16 14:48:37 +00:00
Anton
01b1f26553 feat(imports): import history and delete by import
Track imports in DB, show history in Data section, allow deleting
transactions of a specific import instead of clearing all.
2026-03-16 17:46:15 +03:00
Anton
ba3105bbe5 chore(frontend): adds favicon 2026-03-16 17:44:04 +03:00
f32a21f87a Merge pull request 'Revert SSE streaming for PDF import, use synchronous flow' (#11) from revert/remove-sse-streaming into main
Reviewed-on: #11
2026-03-14 17:13:00 +00:00
vakabunga
8b57dd987e Revert SSE streaming for PDF import, use synchronous flow
SSE streaming added unnecessary complexity and latency due to
buffering issues across Node.js event loop, Nginx proxy, and
Docker layers. Reverted to a simple synchronous request/response
for PDF conversion. Kept extractLlmErrorMessage for user-friendly
LLM errors, lazy-loaded pdf-parse, and extended Nginx timeout.
2026-03-14 20:12:27 +03:00
ea234ea007 Merge pull request 'fix: yield to event loop after each SSE write to flush socket' (#10) from fix/sse-event-loop-flush into main
Reviewed-on: #10
2026-03-14 17:00:51 +00:00
vakabunga
db4d5e4d00 fix: yield to event loop after each SSE write to flush socket
The for-await loop over OpenAI stream chunks runs synchronously when
data is buffered, causing res.write() calls to queue without flushing.
Add setImmediate yield after each progress event so the event loop
reaches its I/O phase and pushes data to the network immediately.
2026-03-14 19:59:22 +03:00
358fcaeff5 Merge pull request 'fix: disable gzip and pad SSE events to prevent proxy buffering' (#9) from fix/sse-gzip-buffering into main
Reviewed-on: #9
2026-03-14 16:46:07 +00:00
vakabunga
67fed57118 fix: disable gzip and pad SSE events to prevent proxy buffering
Add gzip off to Nginx import location — the global gzip on was
buffering text/event-stream responses. Pad each SSE event to 4 KB
with comment lines to push past any remaining proxy buffer threshold.
2026-03-14 19:45:33 +03:00
45a6f3d374 Merge pull request 'fix: eliminate SSE buffering through Nginx proxy' (#8) from fix/sse-proxy-buffering into main
Reviewed-on: #8
2026-03-14 14:31:16 +00:00