214 Commits

Author SHA1 Message Date
2462f2122c feat: add broker account display models 2026-06-19 06:08:17 +03:00
5cb51e44f2 chore: sync broker portfolio contract 2026-06-19 06:00:15 +03:00
8aea56cbbf feat: expose broker position counts 2026-06-18 23:15:32 +03:00
da6d05e425 chore: ignore local worktrees 2026-06-18 23:10:25 +03:00
be24184e4f docs: approve broker account sections plan 2026-06-18 23:07:42 +03:00
62cef9b1c4 docs: plan broker account sections 2026-06-18 23:04:47 +03:00
30922aaa28 docs: link broker account feature to roadmap 2026-06-18 22:51:08 +03:00
0c12e6d610 docs: specify broker account sections 2026-06-18 22:47:24 +03:00
5b9d7f3a27 docs: fix historical files to new structure and update
All checks were successful
CI / ci (pull_request) Successful in 3m20s
CI / ci (push) Successful in 3m1s
2026-06-18 22:04:09 +03:00
dca8418843 feat: добавил инструкции к SDD подходу 2026-06-18 21:50:38 +03:00
af135d5640 test: add isFetching to mock return values
All checks were successful
CI / ci (push) Successful in 2m59s
2026-06-18 07:29:35 +03:00
2d671669d4 feat: pass isFetching to BrokerOperationsTable 2026-06-18 07:29:35 +03:00
26371381e0 feat: add loading overlay and spinner to BrokerOperationsTable 2026-06-18 07:29:35 +03:00
90e9c468de feat: add loading overlay and spinner to PositionGroupTable 2026-06-18 07:29:35 +03:00
510ee91fab style: add loading-spinner and overlay CSS classes 2026-06-18 07:29:35 +03:00
ce538ff443 docs: add pagination loading overlay design spec (C3) 2026-06-18 07:29:35 +03:00
b9ace3ed5e ci: merge lint/test/build into single job, add frontend tests
Some checks are pending
CI / ci (pull_request) Successful in 3m6s
CI / ci (push) Has started running
2026-06-18 06:39:06 +03:00
feaff2103e perf(broker): parallel instrument name loading with per-service rate limit queues
- Split single p-queue (5 req/s) into 3 isolated queues:
  operations (5/s), instruments (20/s), users (5/s)
- Removed dead instruments param from mapBrokerPortfolio
- portfolio/positions endpoints share raw GetPortfolio cache
- Docs: T_BANK_INSTRUMENTS_RATE_LIMIT, CACHE_TBANK_POSITIONS_TTL,
  rate limiting section in tbank-invest.md
2026-06-18 06:34:55 +03:00
49ee364856 feat(broker): per-type positions pagination with independent tables
All checks were successful
CI / lint (pull_request) Successful in 2m9s
CI / test (pull_request) Successful in 1m56s
CI / build (pull_request) Successful in 2m6s
CI / lint (push) Successful in 1m56s
CI / test (push) Successful in 1m55s
CI / build (push) Successful in 2m19s
- Add type query param to GET /accounts/:accountId/positions endpoint
- Backend filters T-Bank portfolio positions by instrument type before pagination
- Each instrument type (share, bond, etf, fund) has its own frontend table with
  independent cursor-based pagination and skeleton loading
- Groups with no positions are automatically hidden
- Cache key includes type for correct per-type caching
- Remove centralized positions pagination state from BrokerAccountDetailPage
- 94 backend tests / 112 frontend tests pass
2026-06-18 06:02:54 +03:00
5ccd421259 test(frontend): update broker tests for positions hook and removal from portfolio 2026-06-17 14:50:35 +03:00
e25daa931a feat(frontend): add skeleton cards to broker accounts page 2026-06-17 14:47:10 +03:00
28579321a9 feat(frontend): add positions hook and skeleton loading to account detail page 2026-06-17 14:46:48 +03:00
2670097a5e feat(frontend): add shimmer loading and instrument name in operations table 2026-06-17 14:46:06 +03:00
e0c9d97ded feat(frontend): add pagination and skeleton to BrokerPositionsSection 2026-06-17 14:45:27 +03:00
d7b5a376a0 feat(frontend): add SkeletonBlock and TableSkeleton components 2026-06-17 14:44:15 +03:00
608e521674 feat(frontend): add BrokerPositionsPage types, API, and hook 2026-06-17 14:43:50 +03:00
33199a8749 feat(frontend): add shimmer animation and .skeleton CSS class 2026-06-17 14:42:49 +03:00
4b87eccba4 test(tbank): update portfolio tests, add getPositions tests, fix operation fixture name 2026-06-17 14:41:32 +03:00
8b202ef7d3 feat(tbank): add GET /positions endpoint with cursor pagination 2026-06-17 14:39:30 +03:00
6b3bdd2aec fix(tbank): include cursor/limit in positions cache key, add tbankPositionsTtl config 2026-06-17 14:38:51 +03:00
bb7fef8deb feat(tbank): add getPositions() method to BrokerPortfolioService 2026-06-17 14:36:32 +03:00
05f1e792c5 feat(tbank): extract mapBrokerPosition, add mapBrokerPositionsPage, add name to operation 2026-06-17 14:34:02 +03:00
953c7c29a6 feat(tbank): add positions page types/DTOs and operation name field 2026-06-17 14:30:48 +03:00
0517501415 chore: address review feedback - consistent style, spec accuracy, test regex 2026-06-17 13:50:36 +03:00
cc8ff0a088 feat: add keepPreviousData for smooth pagination 2026-06-17 13:48:00 +03:00
a8bce856d9 fix: add back BrokerOperationImpact type import for moneyColor 2026-06-17 13:47:34 +03:00
2e0c0e7df8 feat: remove impact badges, add + prefix, style pagination buttons 2026-06-17 13:45:07 +03:00
8e2151fc34 test: update broker page tests for new UI expectations 2026-06-17 13:43:43 +03:00
4682586002 refactor: remove unused getBrokerOperationImpactLabel helper 2026-06-17 13:41:17 +03:00
d16078fce9 docs: add broker operations UI improvements spec 2026-06-17 13:37:52 +03:00
bd8d6c11fe feat: improove ui
All checks were successful
CI / lint (pull_request) Successful in 2m3s
CI / test (pull_request) Successful in 2m5s
CI / build (pull_request) Successful in 2m0s
CI / lint (push) Successful in 1m55s
CI / test (push) Successful in 8m13s
CI / build (push) Successful in 2m8s
2026-06-17 13:15:01 +03:00
a8715258ca fix: avoid stale tbank grpc deadlines
All checks were successful
CI / lint (pull_request) Successful in 2m15s
CI / test (pull_request) Successful in 2m2s
CI / build (pull_request) Successful in 2m7s
CI / lint (push) Successful in 2m2s
CI / test (push) Successful in 2m10s
CI / build (push) Successful in 2m7s
2026-06-17 12:08:48 +03:00
8c2a6c9e3c fix: trust tbank grpc root certificate
All checks were successful
CI / lint (pull_request) Successful in 2m11s
CI / test (pull_request) Successful in 1m58s
CI / build (pull_request) Successful in 2m3s
CI / lint (push) Successful in 1m57s
CI / test (push) Successful in 2m4s
CI / build (push) Successful in 2m8s
2026-06-17 07:39:37 +03:00
ea916dfec9 fix: restrict and expose tbank broker sync 2026-06-17 06:57:49 +03:00
b10a2cfb0d docs: document tbank invest integration 2026-06-17 06:49:09 +03:00
3fe4e7a4ec fix: harden tbank operation sync 2026-06-17 06:47:18 +03:00
6e30177294 feat: persist tbank broker operations 2026-06-17 06:44:45 +03:00
ead40bff6f feat: add broker portfolio UI 2026-06-16 23:05:52 +03:00
50bff3dbe7 feat: add broker frontend api hooks 2026-06-16 22:56:20 +03:00
b848d256d1 fix: load tbank proto contracts at runtime 2026-06-16 22:54:21 +03:00