2.9 KiB
2.9 KiB
MODIFIED Requirements
Requirement: Upcoming events use complete source results
Система MUST возвращать только последний полностью успешно сформированный прогноз по доступному счёту. Если необходимые данные брокера или MOEX недоступны во время часового обновления, система MUST NOT заменять последний успешный прогноз частичным списком или изменять время его успеха. Инструменты, для которых источник не предоставляет поддерживаемые события, MUST пропускаться без синтетических строк «нет данных». Получение сохранённого прогноза MUST NOT запускать синхронизацию при открытии экрана; ошибку последней попытки MUST показывать отдельно.
Scenario: Недоступность источника
- WHEN необходимый источник данных брокера или MOEX временно недоступен при часовом обновлении
- THEN последний полный прогноз остаётся доступен с исходным временем, частичный список не публикуется, а ошибка отражается в статусе обхода
Scenario: Инструмент без поддерживаемых данных
- WHEN Portfolio содержит инструмент, для которого источник не предоставляет поддерживаемые будущие события
- THEN система не добавляет для него синтетическую строку в результат
Scenario: MOEX отвечает без запрошенного блока
- WHEN MOEX отвечает успешно, но не содержит запрошенного блока данных (например, дивидендов)
- THEN система трактует ответ как отсутствие данных по инструменту и не завершает обновление ошибкой
Scenario: Чтение при временном сбое обновления
- WHEN User открывает события доступного счёта после неудачного часового обновления и для счёта существует прежний полный прогноз
- THEN система возвращает прежний прогноз без ожидания источника и обозначает ошибку обновления отдельно