docs: describe RUB-only behavior (WealthLedger/main#55) (#68)
Docs security / security (push) Successful in 7s
Docs verify / verify (push) Successful in 13s

This commit was merged in pull request #68.
This commit is contained in:
2026-11-11 09:19:49 +03:00
parent f504a0f566
commit 7fbd4273ba
18 changed files with 89 additions and 105 deletions
+14 -17
View File
@@ -10,9 +10,10 @@
## Снимок и связанные области
Снимок состоит из позиций по инструментам, доступных денежных остатков,
валютных итогов и структуры активов. Позиция означает ненулевое количество
итоговой суммы в RUB и структуры активов. Позиция означает ненулевое количество
обычного инструмента в брокерском портфеле. Торгуемая валютная позиция
`CURRENCY` и свободные деньги имеют разный смысл и передаются раздельно.
`CURRENCY` и свободные деньги имеют разный смысл и передаются раздельно;
в итоге учитываются только деньги в RUB.
Точный смысл сумм и неизвестных значений раскрыт в
[справочнике данных](data-reference.md).
@@ -34,18 +35,15 @@ Backend получает данные через серверную
## Как читать экран
Валютная сводка показывает отдельную карточку для каждого полученного итога.
Деньги уже включены в итог своей валюты. RUB, USD и EUR обозначены ₽, $ и €;
другие валюты сохраняют ISO-код. Вспомогательным технологиям доступны полное
Сводка показывает одну карточку с итоговой суммой в RUB. Деньги уже включены
в итог. Сумма обозначена ₽; вспомогательным технологиям доступны полное
значение и название валюты. Суммы сохраняют все исходные цифры, знак и
дробные позиции, включая `-0,5`; длинные значения переносятся без обрезания.
Карточки не интерактивны и занимают одну колонку на узком экране,
две или три на широком. Отсутствующая валюта не получает искусственную
нулевую карточку. Пустые итоги не скрывают доступный состав портфеля.
Карточка не интерактивна. Отсутствующая итоговая сумма не получает искусственный
ноль. Пустой итог не скрывает доступный состав портфеля.
Структура после сводки распределяет известную стоимость по акциям,
облигациям, другим активам и свободным деньгам. При нескольких валютах
пользователь выбирает одну; при одной отдельного переключателя нет.
облигациям, другим активам и свободным деньгам в RUB.
Кольцевая диаграмма дополнена текстовым списком сумм и долей и подсказкой;
на узком экране список расположен под ней. Неизвестная оценка, отрицательные
составляющие или нулевой итог ограничивают возможность показать доли —
@@ -73,14 +71,14 @@ Backend получает данные через серверную
Существует расхождение: [согласованная спецификация представления позиций](https://git.personal.ksv741.ru/WealthLedger/specs/src/commit/9e227a563dda67620f0ad78228aa8a4c18bf35a0/openspec/specs/portfolio-view/spec.md#requirement-представление-карточек-позиций-на-клиенте)
требует доступности всех иных типов в отдельной секции, а текущие frontend
и его проверка исключают `CURRENCY` только из списка карточек. Такие позиции
остаются в ответе, валютных итогах, структуре и знаменателе долей остальных
позиций. Это описание фактического ограничения; выбор между изменением
интерфейса и согласованием требований остаётся отдельной задачей.
остаются в ответе, но не входят в итоговую сумму, структуру; их учёт в знаменателе
долей остальных позиций требует проверки. Выбор между изменением интерфейса и
согласованием требований остаётся отдельной задачей.
## Свежесть и границы
При первом запросе экран показывает каркас заголовка, сводки и разделов.
Три формы валютных карточек в каркасе не обещают наличие трёх валют.
Каркас итоговой карточки не обещает наличие суммы.
Загрузка обозначена для вспомогательных технологий; декоративные элементы
не содержат данных и не получают фокус. При обычном фоновом обновлении
сохраняются предыдущие суммы и время успешного получения в UTC.
@@ -95,10 +93,9 @@ Backend получает данные через серверную
Правила времени и ошибок приведены в [потоке загрузки](flows/portfolio-loading.md).
Отдельного чтения истории стоимости нет, но каждый полный снимок
сохраняет точку оценки по счёту и валюте для будущих поддерживаемых
сохраняет точку оценки по счёту в RUB для будущих поддерживаемых
представлений; публичного графика в текущем решении нет. Нет также
валютной конвертации, учёта виртуальных позиций или заблокированных
средств. Последний полный снимок сохраняется после перезапуска;
учёта виртуальных позиций или заблокированных средств. Последний полный снимок сохраняется после перезапуска;
обновлением личных данных владеет часовой обход, рассчитанный на один
экземпляр backend. Действие «Обновить» выполняет только локальное
перечитывание открытого экрана и не запускает работу с T-Bank.