TASK-0047 — workspaces + default workspace; global/tenant канон; requireWorkspace на tenant API; migration 0024 (done, 2026-07-11).
- TASK-0047 — workspaces + default workspace; global/tenant канон; requireWorkspace на tenant API; migration 0024 (done, 2026-07-11).
- TASK-0015 — owner auth: users (login, email, scrypt hash), register/login/logout, sealed session (SESSION_SECRET), Nitro/UI guards, ops bind legacy workspace (done, 2026-07-12).
- TASK-0044 — AG Grid data-grid: server-side pagination/sort/filter, CRUD, Excel-навигация, pilots journal/expenses/income/snapshots (done, 2026-07-12).
- TASK-0046 — public/private IA: five private sections, 308 legacy redirects, /statistics + period-fill widget, unified /operations ledger (done, 2026-07-12).
Банки и портфель подтягиваются сами, закрытие месяца стало проще, интерфейс обновлён.
Банки и портфель
- Подключите Т‑Инвестиции и Т‑Банк — счета и балансы подтянутся в приложение.
- Портфель из Т‑Банка импортируется целиком, без ручного ввода каждой бумаги.
- При закрытии месяца приложение предлагает доходы из инвестиций — остаётся подтвердить или отклонить.
Закрытие месяца
- На валютных счетах вводите остаток в валюте — рублёвый эквивалент посчитается по курсу на конец месяца.
- Дивиденды и проценты учитываются отдельно и больше не искажают строку пополнения.
- На финальном шаге — сводка «Сверка»: изменение капитала, счета, прогресс к цели FIRE; месяц можно закрыть прямо оттуда.
- В итоге месяца видно тип каждого актива — акции, облигации, депозит, а не просто «деньги на счёте».
Расходы
- График инфляции нагляднее: сравнение с прошлым годом и с начала года — рядом с вашей целью.
Интерфейс
- Обновлённый стиль GO | FIRE — экраны аккуратнее и легче читаются.
- Понятные иконки в меню и разделах капитала.
- В меню появился раздел «Релизы» — что нового в каждой версии.
Semver веб-приложения: web/package.json version: 1.1.0 → публичный appVersion в Nuxt (правый нижний угол UI).
- Semver веб-приложения: web/package.json version: 1.1.0 → публичный appVersion в Nuxt (правый нижний угол UI).
- TASK-0037 — LLM Wiki in-repo pilot: слой docs/wiki/, правило .cursor/rules/llm-wiki.mdc, скилл .cursor/skills/llm-wiki-maintainer/SKILL.md. Детали — задача.
Нет отдельного артефакта версии 1.0.5 в web/package.json. См. поставку month-end scope в v1.2.0 (delivered 2026-07-04).
- Нет отдельного артефакта версии 1.0.5 в web/package.json. См. поставку month-end scope в v1.2.0 (delivered 2026-07-04).
TASK-0023 — Capital month-end: баланс, разбивка причин, синхронизация с карточкой счёта: см. задачу (в scope также auto-import wizard, subnav счетов/журнала/интеграций, главные плитки, заголовок рейтингов).
- TASK-0023 — Capital month-end: баланс, разбивка причин, синхронизация с карточкой счёта: см. задачу (в scope также auto-import wizard, subnav счетов/журнала/интеграций, главные плитки, заголовок рейтингов).
- TASK-0008 — Code simplifier (capital / web), пункты 1–10: см. задачу; фактическая поставка совпадает с деревом web/ версии приложения 1.0.4.
- Прочие файлы в коммите: накопленные правки веб-приложения, БД (0016, 0017), документации и инфраструктуры того же набора изменений рабочей копии.
- Версия в UI: runtimeConfig.public.appVersion задаётся из web/package.json → version при сборке (nuxt.config.ts читает package.json). В приложении показывается как v{version} (правый нижний угол); при сборке через Docker версия попадает в образ на шаге npm run build в web/Dockerfile.
Нет отдельного артефакта версии 1.0.3 в web/package.json. См. фактическую поставку в v1.0.4; scope доходов/интеграций/MOEX — v1.2.0 (delivered 2026-07-04); открытый релиз — v1.3.0.
- Нет отдельного артефакта версии 1.0.3 в web/package.json. См. фактическую поставку в v1.0.4; scope доходов/интеграций/MOEX — v1.2.0 (delivered 2026-07-04); открытый релиз — v1.3.0.
TASK-0021: Nitro plugin run-migrations; утилита runPendingSqlMigrations() с CREATE TABLE IF NOT EXISTS app_schema_migrations, последовательным применением *.sql, pg_advisory_lock, повтор попытки при временной недоступности PostgreSQL (ECONNREFUSED и др.).
- TASK-0021: Nitro plugin run-migrations; утилита runPendingSqlMigrations() с CREATE TABLE IF NOT EXISTS app_schema_migrations, последовательным применением *.sql, pg_advisory_lock, повтор попытки при временной недоступности PostgreSQL (ECONNREFUSED и др.).
- Надёжность раннера: при ошибке выполнения файла миграции — ROLLBACK на соединении перед повтором/выходом; строка в журнал не пишется; при фатальной ошибке плагин логирует и вызывает process.exit(1), чтобы контейнер не оставался в неконсистентном состоянии без явного падения.
- SQL: правка db/migrations/0005_capital_fire_init.sql — блок DO … вместо безусловного CREATE INDEX idx_accounts_institution_id … (institution_id), если колонки уже нет (типичный случай: журнал пуст, а схема уже после 0014_accounts_simplify_drop_institutions.sql).
- Docker: сборка nuxt с контекстом корня репозитория, Dockerfile копирует db/migrations в финальный образ.
- Документы: актуализирован DEPLOY.md под автомиграции при старте контейнера.
- Опционально: SKIP_DB_MIGRATIONS=1, MIGRATIONS_DIR для явного пути к каталогу миграций.
- Публичный appVersion — 1.0.2 (web/package.json).
IA / навигация: лэндинг на /, рейтинги на /ratings, CapitalSubnav, редирект /capital/input → /capital/snapshots, актуальное меню и активные состояния по префиксам.
- IA / навигация: лэндинг на /, рейтинги на /ratings, CapitalSubnav, редирект /capital/input → /capital/snapshots, актуальное меню и активные состояния по префиксам.
- Расходы — TASK-0012: миграция monthly_expenses.deleted_at, entry_source; разделение строк введённых с /expenses vs шагом месячного итога; API bulk-delete-preview / bulk-delete-execute; блок на странице /expenses.
- Месячный итог (TASK-0013): идемпотентный POST /api/capital/period/advance; отображение ошибок сохранения расходов в UI; GET /api/expenses/by-period и подтягивание сохранённой суммы расходов на шаг «1. Расходы» при выборе месяца (агрегат одна сумма на period_end).
- Версия сборки (публичный appVersion) — 1.0.1.
Синхронизация балансов локальных счетов из подключенных интеграций (checkpoint), улучшение UI действий sync по счетам и интеграциям.
- Синхронизация балансов локальных счетов из подключенных интеграций (checkpoint), улучшение UI действий sync по счетам и интеграциям.
- Реструктуризация release-документации (CHANGELOG + v1.0.0/RELEASE) и вывод версии v1.0.0 в веб-интерфейсе.