Skip to content

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 02 Jul 06:21

[v1.3.0] — 2026-07-02

ОБЯЗАТЕЛЬНО СДЕЛАЙТЕ БЕКАП! Перед обновлением сохраните копию базы (data/buhgalter.db) и каталога backups/.

Добавлено

Пользователи и админка

  • Статус пользователя: active / pending / banned; саморегистрация → pending без сессии; PUT /api/v1/admin/users/{id}/status; меню «⋯» в /admin/users; плашка и попап ?moderate=; уведомление админам user_registration (api/user-status.md, миграция 029_user_status.sql)

Счета

  • Кредитная карта (type=credit_card): лимит, счёт погашения, блок credit_cards_summary на главной, «Оплатить» / «Списать комиссию», импорт Cubux (ui-credit-cards.md, 033_credit_card_accounts.sql)
  • Архивация и мягкое удаление: archived / deleted, автоперевод остатка для cash/bank, правила для credit_card, вкладки «Архивные» / «Удалённые» (accounts-archive-delete.md, 040_account_deleted_status.sql)
  • Автопополнение (bank): порог, цель, счёт списания; hook после операций; уведомление auto_topup_disabled (balance-maintenance.md, 041_account_auto_topup.sql)

Кредиты

  • Учёт суммы займа в балансе при создании потребительского кредита: principal_affects_balance, операция дохода на debit_account_id; блокировка при платеже в графике с датой в прошлом (031_credit_principal_income.sql)

Бюджет

  • Помесячные лимиты (scope: category / subcategory / all_expense), copy_forward, CRUD и GET /budgets/summary; страница /budget; виджет на главной; колонки в /stats; триггер budget_threshold (budget.md, ui-budget.md, миграции 034039, 036, 037)

Уведомления

  • Недостаток средств: trigger_negative_balance, шаблон balance_shortfall, суффикс к credit_payment / planned_operation / debt_* (notifications.md, 032_notification_balance_shortfall.sql)
  • Ссылки в шаблонах: {debt_url}, {credit_url}, {transaction_url}, {budget_url}, {moderation_url} и др. — urls.go

UI/UX

  • MoneyDisplay — единый компонент read-only сумм; formatMoneyForDisplay для i18n (transactions-display.md)

Изменено

UI/UX

  • Верхнее меню: пункт «Бюджет»; на мобильных — drill-down подменю «Настройки» / «Админка» вместо длинного accordion (ui-navigation.md)
  • Главная: счета под спойлером на < sm; индикатор автопополнения у bank-счетов
  • /stats: блоки «По категориям» и «По периодам» — full-width строками (категории выше периодов); сводка без колонки «Разница» (ui-stats.md)
  • Ширина контента на десктопе: max-w-5xl (80rem, --container-5xl в layout.css)
  • Категория дохода «Кредиты» при principal_affects_balance — суффикс «(Доход)» в фильтрах и статистике

Backend

  • Доменный SQL — через sqlc (server/queries/); CI make inline-sql-check (sql-access.md)

Исправлено

Уведомления

  • {settings_url} в шаблоне test — канонический путь /settings/notifications (не устаревший ?tab=)

Долги

  • Удаление операции «Взял/Дал в долг»: единственная начальная операция удаляет долг; погашение — пересчёт остатка; начальную операцию нельзя удалить при наличии погашений (debt/transaction_delete.go)

Техническое

  • Миграции 029041
  • Unit: money-display.test.ts, credit-card.test.ts, account_delete_test.go, notify/balance tests
  • e2e: budget.spec.ts, budget-home.spec.ts, budget-stats.spec.ts, credit-card.spec.ts, credits-principal-income.spec.ts, accounts-management.spec.ts, dashboard-accounts.spec.ts, admin-advanced.spec.ts (модерация)
  • docs/release-notes-v1.3.0.md
  • Версия 1.3.0

Коммиты

Changelog

  • 0e3eb8d v1.3.0
  • 9a39c9f Merge branch '1.3.0' into master
  • e5fe1ea Автопополнение одного счёта с другого
  • afeaa43 Сделал основной размер страницы шире для десктоа
  • 88790d6 Удаление/архивация счетов. Переработка логики.
  • eb1e1b2 Меню в мобильной версии
  • c52b2b4 Перевёрстка /stat
  • 4405a00 На главной (в мобильной версии) счета скрыты под спойлер
  • 459248d Единый компонент отображения сумм
  • 6646f49 fix after merge
  • 5de25df Merge branch 'master' into 1.3.0
  • f5a36d9 Бюджет. Доделки
  • 9f82063 Бюджет
  • eebd477 1. Добавлен тип счёта "Кредитная карта" 2. Восстановлена страница "Архивных" счетов
  • cdacf71 Исправлен баг при удалении операции долга. Операция удалялась, долг оставался
  • b3572e1 Уведомления: Сообщение об отрицательном балансе, настройки, UI-доработки, URL в уведомлениях
  • f92ac36 Merge branch 'v1.3.0' into master
  • 42eee98 Учёт денег кредита в балансе (типа кредит наличными)
  • 3f548f1 SQL-спецификации, вынос SQL из основного кода Go
  • ed47c59 Статус пользователя — модерация регистрации, блокировка, меню «⋯» в админке, уведомления админам и плашка
  • 3fa9436 Фильтр запросов, уменьшение нагрузки на логи

Docker

Вложения docker-compose.yaml, .env и .env.example — compose из репозитория; .env с BUHGALTER_IMAGE_TAG=1.3.0. При необходимости: cp .env.example .env.

docker pull ghcr.io/kai-zer-ru/buhgalter:1.3.0
docker compose -f docker-compose.yaml up -d

Или без compose:

docker run -d --name buhgalter \
  -p 8765:8765 \
  -v buhgalter-data:/app/data \
  -v buhgalter-backups:/app/backups \
  --restart unless-stopped \
  ghcr.io/kai-zer-ru/buhgalter:1.3.0