# QuoteForge v1.5.4 Дата релиза: 2026-03-16 Тег: `v1.5.4` Предыдущий релиз: `v1.5.0` ## Ключевые изменения - pricing tab переработан: закупка и продажа разделены на отдельные таблицы с ценами за 1 шт.; - экран прайслиста переработан под разные типы источников; удалены misleading-колонки `Поставщик` и `partnumbers`; - runtime и startup ужесточены: локальный клиент принудительно работает только на loopback, конфиг автоматически нормализуется; - добавлены действия с вариантом и унифицированы правила именования `_копия` для вариантов и конфигураций; - исправлен CSV-экспорт прайсинговых таблиц в конфигураторе под Excel-совместимый формат Excel-friendly; - таблица проектов переработана: дата последней правки, tooltip с деталями, отдельный автор, компактные действия и ссылка на трекер; - sync больше не подменяет `updated_at` проектов временем синхронизации; - добавлена одноразовая утилита `cmd/migrate_project_updated_at` для пересинхронизации `updated_at` проектов из MariaDB в локальную SQLite; - runtime config, release notes и `bible-local/` очищены и приведены к актуальной архитектуре; - `scripts/release.sh` больше не затирает существующий `RELEASE_NOTES.md`. ## Summary ### UI и UX - вкладка ценообразования теперь разделена на отдельные таблицы закупки и продажи; - список проектов переработан: новая колонка даты, отдельный автор, tooltip с деталями, компактные действия, ссылка на трекер; - для вариантов добавлены действия переименования, переноса и копирования; - копии вариантов и конфигураций теперь именуются единообразно: `_копия`, `_копия2`, `_копия3`. ### Прайслисты и экспорт - экран прайслиста переработан под разные типы источников; - из прайслистов убраны misleading-колонки `Поставщик` и `partnumbers`; - CSV-экспорт прайсинговых таблиц в конфигураторе приведён к Excel-совместимому формату. ### Runtime и sync - локальный runtime нормализует `server.host` к `127.0.0.1` и переписывает некорректный runtime config; - sync перестал подменять `updated_at` проектов временем локальной синхронизации; - добавлена утилита `cmd/migrate_project_updated_at` для восстановления локальных дат проектов с сервера. ### Документация и release tooling - `bible-local/` сокращён до актуальных архитектурных контрактов; - release notes и release-структура приведены к одному формату; - `scripts/release.sh` теперь сохраняет существующий `RELEASE_NOTES.md` и не затирает его шаблоном. ## Затронутые области - `cmd/qfs/`; - `cmd/migrate_project_updated_at/`; - `internal/localdb/`; - `internal/services/project.go`; - `internal/services/sync/service.go`; - `internal/handlers/pricelist.go`; - `web/templates/pricelist_detail.html`; - `web/templates/index.html`; - `web/templates/project_detail.html`; - `web/templates/projects.html`; - `web/templates/configs.html`; - `bible-local/`. ## Совместимость - схема данных не меняется; - серверные SQL-миграции не требуются; - для уже испорченных локальных дат проектов можно один раз запустить `go run ./cmd/migrate_project_updated_at -apply`.