# Proposal ## Why Сравнения с предыдущим периодом и годом ранее не помогают пользователю решить основную задачу страницы «Пассивный доход»: увидеть фактически полученные купоны и дивиденды за выбранный период. Они усложняют экран и требуют получения данных за дополнительные периоды. Купоны и дивиденды в истории операций, прогнозах и календарях инструментов представлены разными карточками; сходный вид при этом не обеспечивает единого представления выплаты и ясной границы между полученными деньгами и ожидаемым событием. ## What Changes - **BREAKING**: сравнения дохода с предыдущим периодом и годом ранее перестают рассчитываться, загружаться и предоставляться потребителям аналитики. - Страница «Пассивный доход» показывает выбранный период, итоги по исходным валютам и все включённые исполненные выплаты без блоков сравнений и их состояний. - Купоны и дивиденды во всех существующих местах показа выплат используют одно предметное представление. Оно явно различает исполненную выплату, прогноз и запись графика инструмента, сохраняя смысл дат и денежных величин. ## Scope ### In Scope - Аналитика дохода одного счёта и режима «Все счета»: удаление сравнения периодов из результата и связанных чтений, при сохранении дохода выбранного периода и самостоятельной сводки текущего месяца. - Карточки купонов и дивидендов в доходе, журнале и недавних операциях, личной истории инструмента, полном списке и превью будущих событий, календарях и истории выплат акций и облигаций. - Обновление нормативного поведения и согласование изменённого публичного контракта с потребителями. ### Out of Scope / Non-Goals - Возврат графика динамики либо прогноза на страницу дохода; удаление иных исторических данных аналитики, не относящихся к сравнению периодов. - Изменение отбора исполненных операций, расчёта итогов, налоговой трактовки, прогноза или правил происхождения календарных событий. - Унификация карточек сделок, налогов, комиссий, погашений и оферт. ## Capabilities ### New Capabilities - `specs/instrument-income-schedules/spec.md` — различимое представление будущих и прошедших событий графиков выплат акций и облигаций, не выдаваемых за подтверждённое личное зачисление. ### Modified Capabilities - `specs/brokerage-account-income-analytics/spec.md` — результат без сравнений и единое представление исполненных выплат. - `specs/brokerage-account-ledger/spec.md` — то же представление купонов и дивидендов в полном журнале, недавних операциях и истории инструмента. - `specs/brokerage-account-upcoming-events/spec.md` — то же представление прогнозных купонов и дивидендов на странице событий и в превью. ## Impact Пользователь видит более короткую страницу дохода и узнаваемую карточку купона или дивиденда на смежных экранах. Аналитика прекращает запрос дополнительных периодов для сравнения, меняется публичный ответ и его потребители. Исполненные операции, будущие события и графики инструментов сохраняют разные источники и статус достоверности. Затронуты поведение интерфейса, инвестиционная аналитика, публикация контракта и документация дохода и событий. ## Success Criteria - На странице дохода нет сравнений и сообщений об их недоступности; выбранный период, итоги, налоговое пояснение и отдельная карточка каждой фактической выплаты доступны как прежде. - Чтение и синхронизация дохода не требуют периодов сравнения, а ответ аналитики их не предоставляет. Полнота выбранного периода и итоги сохраняются. - Купон и дивиденд на перечисленных экранах представлены одним предметным компонентом; полученная сумма имеет исходный знак и валюту, прогноз может не иметь суммы, а календарное событие не называется полученным доходом. - Остальные типы операций и будущих событий не теряют своего представления. ## Assumptions / Dependencies - Изменение публичного ответа согласуется с его потребителями при поставке; удаление сравнений намеренно несовместимо с прежней формой ответа. - Одна карточка может показывать данные разной природы без ложного обещания зачисления: исполненная операция, прогноз и график остаются различимыми. - Планирование и реализация связаны с координирующей Issue `WealthLedger/main#33`.