9.0 KiB
Why
WealthLedger показывает инвестиции и пассивный доход, но пользователю также нужен раздел личных банковских карт: сколько денег на каждой карте, какие операции происходили и к каким категориям относятся повседневные траты.
Первая итерация позволяет самостоятельно добавить карты и вести операции. Пользователь выбрал последовательную подготовку SDD-артефактов: сначала концепция и требования, затем Design, Tasks и реализация.
What Changes
Статус: ответы Q1–Q9 согласованы. Delta Specs дополнены правилами целостного ручного учёта для рассмотрения вместе с Design. Конкретизация требований ниже не является дословным ответом пользователя на каждый частный случай и не означает начала реализации.
Согласованный результат
- Q1: каждая вручную добавленная карта имеет независимые баланс и историю.
- Q2: баланс рассчитывается из начального остатка и внесённых операций.
- Q3: первая версия поддерживает дебетовые карты в рублях.
- Q4: доступны расход, пополнение, перевод между своими картами и возврат покупки. Перевод вводится одним действием и не считается расходом.
- Q5: есть начальный набор категорий; пользователь может добавлять и переименовывать свои категории без вложенных подкатегорий.
- Q6: журнал дополняется месячной сводкой расходов по категориям для выбранной карты и всех банковских карт пользователя вместе.
- Q7: отрицательный учётный баланс допустим, в том числе до внесения пропущенного пополнения.
- Q8: операции можно исправлять и удалять с пересчётом результатов; ненужную карту можно убрать в архив с сохранением истории.
- Q9: возврат уменьшает расходы месяца, в котором он произошёл; сводка отдельно показывает расходы, возвраты и итог после возвратов.
Целостность пользовательского сценария
Пользователь задаёт начало учёта и начальный остаток, вносит операции с категориями и датами, исправляет ошибки и видит согласованные баланс, историю и месячные сводки. Частичные возвраты связаны с исходной покупкой. Архив скрывает неиспользуемую карту из обычного списка, сохраняя её вклад в исторические сводки; для новых операций и финансовых исправлений карту нужно вернуть из архива.
Раздел банковских карт доступен после входа в WealthLedger независимо от подключения инвестиционного счёта. Пользовательские данные сохраняются при повторном входе и перезапуске приложения, остаются доступны только владельцу и защищены от дублирования при повторной отправке и от потери одновременных изменений. Повтор создания карты или операции после потерянного ответа сохраняет один результат, включая начальный остаток карты.
Термины
Карта: добавленная пользователем дебетовая банковская карта в рублях, для которой он отдельно ведёт баланс и историю операций. Она не является брокерским счётом или общим счётом нескольких карт.
Баланс карты: сумма денег по данным ручного учёта, рассчитанная из начального остатка и внесённых операций. Она не подтверждает текущий остаток в банковском приложении: пропущенные движения могут привести к расхождению.
Итог расходов после возвратов: расходы выбранного месяца за вычетом возвратов, произошедших в этом месяце; итог может быть отрицательным.
После реализации определения дополнят существующий глоссарий; отдельный постоянный глоссарий не создаётся.
Границы первой итерации
Не входят автоматическая загрузка данных из банков, кредитные карты, другие валюты, общий денежный баланс нескольких карт, объединение банковских денег с инвестициями, прогнозы и бюджеты. Не предусмотрены вложенные подкатегории, удаление категорий и безвозвратное удаление карт.
Произвольной операции «исправить баланс» нет: расхождение исправляется изменением начального остатка либо внесением или исправлением реальной операции. Месячная сводка всех карт показывает траты и возвраты, сохраняя независимый баланс каждой карты.
Capabilities
New Capabilities
specs/manual-bank-cards/spec.md: ручное добавление и архив банковских карт, точный баланс по операциям, расходы и категории, пополнения, переводы, связанные возвраты, исправления и месячные сводки.
Modified Capabilities
Нет. Новый раздел сохраняет поведение существующих инвестиционных представлений и не расширяет понятие Brokerage Account банковскими картами.
Impact
- Пользователь получает учёт банковских карт и повседневных трат с историей и возможностью исправить введённые данные.
- Frontend: отдельный раздел карт, формы операций и исправлений, архив, категории и месячные сводки.
- Backend: сохранение пользовательского ручного учёта, точный расчёт и защита целостности, приватности и одновременных изменений.
- Specs: проверяемый контракт новой возможности через SDD.
- Docs: описание новой предметной области и обновление глоссария при поставке.
Существующие брокерские счета получаются через инвестиционное подключение; банковские счета исключены их контрактом. Текущий журнал операций описывает историю брокера для чтения и не рассчитывает остаток после операции. Правила нового ручного учёта определяют Delta Specs этого изменения.