Files
specs/openspec/changes/reduce-screen-sync-polling/proposal.md
T
ksv741 a1b0e99bdd
Specs security / security (push) Successful in 8s
Specs verify / verify (push) Successful in 10s
spec: add reduce-screen-sync-polling change
OpenSpec change: screen sync status polling and observe reads run
every five seconds during active sync; terminal state observes
resources immediately.
2026-10-07 14:25:16 +03:00

3.3 KiB

Why

Пока экран ожидает синхронизацию T-Bank, клиент опрашивает её состояние каждую секунду. Каждый новый ответ запускает наблюдение всех ресурсов открытого экрана. На экранах с несколькими финансовыми выборками это создаёт непропорционально много запросов при том, что пользователь готов увидеть промежуточный результат с небольшой задержкой.

What Changes

  • Во время выполняющейся экранной синхронизации приложение реже проверяет её состояние и обновляет наблюдаемые финансовые ресурсы не чаще одного раза за пять секунд.
  • После terminal state синхронизации приложение сразу наблюдает ресурсы открытого экрана, чтобы отобразить итоговый результат без дополнительной задержки.
  • Существующие состояния ожидания, доступные частичные результаты, автоматическое восстановление чтения и прекращение работы после ухода с экрана сохраняются.

Ожидаемый результат: длительная синхронизация создаёт существенно меньше фоновых HTTP-запросов, а пользователь получает промежуточные результаты с задержкой не более пяти секунд и итоговые данные сразу после завершения.

Non-goals:

  • Изменять запуск синхронизации, её scope, доступ к данным или финансовые расчёты.
  • Добавлять новые пользовательские элементы, ручное управление частотой или отдельный канал доставки изменений.
  • Гарантировать обновления финансовых данных в реальном времени.

Capabilities

New Capabilities

Modified Capabilities

  • specs/frontend-data-resilience/spec.md: ограниченная частота наблюдения ресурсов во время выполняющейся синхронизации и немедленное наблюдение после terminal state.

Impact

Изменение затрагивает финансовые экраны, использующие экранную синхронизацию: счета, детали счёта, операции, доходы, события и страницы инструментов. Оно сокращает фоновый HTTP-трафик при продолжающейся синхронизации, сохраняя автоматическое отображение готовых данных и существующие правила устойчивости.