Доходность счёта недоступна: история операций в часовом проходе заканчивается раньше снимка Portfolio #201

Open
opened 2026-11-11 09:11:23 +03:00 by codex-bot · 0 comments
Owner

Проблема

Часовой проход (TbankHourlyScheduler.refreshAccounts) диспатчит portfolio-работы и сразу запускает operations, не дожидаясь публикации Portfolio. Для крупных счетов snapshot публикуется позже (≈7 с), чем завершается coverage операций (≈1 с), поэтому coverage.to < portfolio.fetchedAt и hasPerformanceCoverage даёт OPERATIONS_HISTORY_INCOMPLETE («История операций ещё не получена полностью») при полностью загруженной истории.

Пример dev: Брокерский счёт/ИИС — snapshot 05:51:02, coverage до 05:50:55.

Acceptance Criteria

  • В часовом проходе синхронизация операций счёта стартует после завершения его portfolio-работы, coverage покрывает fetchedAt snapshot.
  • Ошибка/таймаут portfolio не блокирует остальные секции (поведение problems сохраняется).
  • Тест воспроизводит порядок: coverage to ≥ portfolio fetchedAt после прохода.

Связано: WealthLedger/main#54, WealthLedger/main#55.

## Проблема Часовой проход (`TbankHourlyScheduler.refreshAccounts`) диспатчит portfolio-работы и сразу запускает operations, не дожидаясь публикации Portfolio. Для крупных счетов snapshot публикуется позже (≈7 с), чем завершается coverage операций (≈1 с), поэтому `coverage.to < portfolio.fetchedAt` и `hasPerformanceCoverage` даёт `OPERATIONS_HISTORY_INCOMPLETE` («История операций ещё не получена полностью») при полностью загруженной истории. Пример dev: Брокерский счёт/ИИС — snapshot 05:51:02, coverage до 05:50:55. ## Acceptance Criteria - [ ] В часовом проходе синхронизация операций счёта стартует после завершения его portfolio-работы, coverage покрывает `fetchedAt` snapshot. - [ ] Ошибка/таймаут portfolio не блокирует остальные секции (поведение problems сохраняется). - [ ] Тест воспроизводит порядок: coverage `to` ≥ portfolio `fetchedAt` после прохода. Связано: WealthLedger/main#54, WealthLedger/main#55.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WealthLedger/backend#201