chore(release): 0.2.1 #20

Merged
codex-bot merged 4 commits from release/0.2.1 into main 2026-10-07 18:37:35 +03:00
7 changed files with 48 additions and 25 deletions
+2 -2
View File
@@ -1,7 +1,7 @@
# Copy to a restricted, untracked file. Never commit filled values. # Copy to a restricted, untracked file. Never commit filled values.
# Full release image references; use published version tags, not latest. # Full release image references; use published version tags, not latest.
FRONTEND_IMAGE=git.personal.ksv741.ru/wealthledger/frontend:0.1.0 FRONTEND_IMAGE=nexus.ksv741.keenetic.pro/wealthledger/frontend:0.2.0
BACKEND_IMAGE=git.personal.ksv741.ru/wealthledger/backend:0.1.0 BACKEND_IMAGE=nexus.ksv741.keenetic.pro/wealthledger/backend:0.2.0
FRONTEND_PORT=8080 FRONTEND_PORT=8080
FRONTEND_ORIGIN=https://wealthledger.example.com FRONTEND_ORIGIN=https://wealthledger.example.com
# Absolute directory, pre-created with owner UID/GID 1000:1000 and mode 0700. # Absolute directory, pre-created with owner UID/GID 1000:1000 and mode 0700.
+1
View File
@@ -28,6 +28,7 @@
!/.release-it.json !/.release-it.json
!/CHANGELOG.md !/CHANGELOG.md
!/commitlint.config.cjs !/commitlint.config.cjs
!/.gitleaksignore
!/renovate.json !/renovate.json
!/.gitea/ !/.gitea/
/.gitea/* /.gitea/*
+3
View File
@@ -0,0 +1,3 @@
# Reviewed historical local-development fixture: base64 of the deterministic
# string 0123456789abcdef repeated twice, never a runtime secret.
7e382d460be296b6c88e17084fff17bb7728f6ea:.env.development.example:generic-api-key:9
+14
View File
@@ -1,5 +1,19 @@
# Changelog # Changelog
## [0.2.1](https://git.personal.ksv741.ru/WealthLedger/main/compare/v0.2.0...v0.2.1) (2026-10-07)
### Bug Fixes
* **deps:** refresh release security baseline ([f27487b](https://git.personal.ksv741.ru/WealthLedger/main/commit/f27487b6a8cb59243a34e392059010dab38efd51))
### Documentation
* link production deployment repository ([9fbc23f](https://git.personal.ksv741.ru/WealthLedger/main/commit/9fbc23f7570ecb6ea13f7fae5490504d1a0d9ba8))
### Maintenance
* point container images to Nexus [#15](https://git.personal.ksv741.ru/WealthLedger/main/issues/15) ([80fa254](https://git.personal.ksv741.ru/WealthLedger/main/commit/80fa254a31d525dbc98bb3fe2d949f78c8e5872b))
## [0.2.0](https://git.personal.ksv741.ru/WealthLedger/main/compare/v0.1.0...v0.2.0) (2026-09-16) ## [0.2.0](https://git.personal.ksv741.ru/WealthLedger/main/compare/v0.1.0...v0.2.0) (2026-09-16)
### Features ### Features
+7 -8
View File
@@ -68,15 +68,14 @@ Nest работает в watch mode. Host `node_modules` и `.env` не монт
Данные development хранятся отдельно в named volume `development-data` проекта `wealthledger-dev`; Данные development хранятся отдельно в named volume `development-data` проекта `wealthledger-dev`;
обычные restart/down их сохраняют. Изменение dependencies/config требует rebuild. обычные restart/down их сохраняют. Изменение dependencies/config требует rebuild.
Production использует `compose.yaml` и restricted env по `.env.compose.example`: Production использует отдельный [репозиторий deploy](https://git.personal.ksv741.ru/WealthLedger/deploy):
две ссылки на опубликованные версии images, persistent absolute host data path, его Git-тег закрепляет пару images, а `./deploy.sh vX.Y.Z` выполняет обновление.
постоянные JWT/encryption secrets и публичный HTTPS origin. Каталог данных Рабочие данные, сертификат T-Bank и постоянные ключи находятся вне checkout.
должен существовать и принадлежать UID/GID 1000:1000. Только frontend публикует Только frontend публикует `127.0.0.1:8080`; серверный Caddy направляет туда весь
`127.0.0.1:8080`; серверный Caddy направляет туда весь домен. Backend port домен. Backend port остаётся внутренним. Корневой Compose сохраняется для development.
остаётся внутренним, migration service использует тот же backend image.
Полная процедура установки, независимых обновлений, stopped-backend backup Пошаговая процедура установки, обновления и восстановления — README `deploy`;
и explicit restore — [документация](https://git.personal.ksv741.ru/WealthLedger/docs), архитектурные границы — [документация](https://git.personal.ksv741.ru/WealthLedger/docs),
страница `architecture/deployment.md`. страница `architecture/deployment.md`.
Перед backend update обязательны остановка, backup и успешная migration. Перед backend update обязательны остановка, backup и успешная migration.
Image rollback не восстанавливает старую базу. Публикация component images Image rollback не восстанавливает старую базу. Публикация component images
+14 -14
View File
@@ -1,12 +1,12 @@
{ {
"name": "wealth-ledger-workspace", "name": "wealth-ledger-workspace",
"version": "0.2.0", "version": "0.2.1",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "wealth-ledger-workspace", "name": "wealth-ledger-workspace",
"version": "0.2.0", "version": "0.2.1",
"devDependencies": { "devDependencies": {
"@commitlint/cli": "21.2.2", "@commitlint/cli": "21.2.2",
"@commitlint/config-conventional": "21.2.2", "@commitlint/config-conventional": "21.2.2",
@@ -1446,9 +1446,9 @@
} }
}, },
"node_modules/basic-ftp": { "node_modules/basic-ftp": {
"version": "5.3.1", "version": "6.2.2",
"resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.3.1.tgz", "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-6.2.2.tgz",
"integrity": "sha512-bopVNp6ugyA150DDuZfPFdt1KZ5a94ZDiwX4hMgZDzF+GttD80lEy8kj98kbyhLXnPvhtIo93mdnLIjpCAeeOw==", "integrity": "sha512-LIkJcf/F6bTTfvE3k2YcTxrJsLKKVXiEpHZYkQP6JoqTb7khng7c13ckRTDQbqRh5IkehVH3F00sSlAa2F6DwA==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"engines": { "engines": {
@@ -2124,9 +2124,9 @@
} }
}, },
"node_modules/fast-uri": { "node_modules/fast-uri": {
"version": "3.1.7", "version": "3.1.8",
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.7.tgz", "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.8.tgz",
"integrity": "sha512-dOvZVzjdZdz7phd9v6jCbwxrBW3fK6n8Rc0CtdmM4bumzMnxywBYhuph6J819RRw/ku+rLbelwfMunktuzVVHg==", "integrity": "sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==",
"dev": true, "dev": true,
"funding": [ "funding": [
{ {
@@ -2355,9 +2355,9 @@
} }
}, },
"node_modules/ip-address": { "node_modules/ip-address": {
"version": "10.7.0", "version": "10.7.3",
"resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.0.tgz", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.3.tgz",
"integrity": "sha512-BGFsyJd5mpXp3rK6jIdADLNgpJUK1jnjzvYF8lK+VyDab9JAmqN0YOKDdP17HlgKb2+ehPgDc8EtnRLbGCAMhA==", "integrity": "sha512-A1kdq/tSb5QjvKvAMgIoEvDBIgL7qaqVP/jkvSwYYRZ9iEzvPpopxp2wQfu3SuZRHtpHNxMn8Fs0bS+gf5Xmwg==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"engines": { "engines": {
@@ -3439,9 +3439,9 @@
} }
}, },
"node_modules/undici": { "node_modules/undici": {
"version": "7.29.0", "version": "7.29.1",
"resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz", "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.1.tgz",
"integrity": "sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==", "integrity": "sha512-RYONW2MeafgYlkVOKYKkA/Ag7BmXqgIWCa8t1m0JcxrQg9pI9lEqRhAOruOBCbAohOa/gkCF+iPi9hrgvTzu6Q==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"engines": { "engines": {
+7 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "wealth-ledger-workspace", "name": "wealth-ledger-workspace",
"version": "0.2.0", "version": "0.2.1",
"private": true, "private": true,
"engines": { "engines": {
"node": "24.21.0" "node": "24.21.0"
@@ -16,5 +16,11 @@
"@release-it/conventional-changelog": "12.0.0", "@release-it/conventional-changelog": "12.0.0",
"conventional-changelog-conventionalcommits": "10.4.0", "conventional-changelog-conventionalcommits": "10.4.0",
"release-it": "21.0.2" "release-it": "21.0.2"
},
"overrides": {
"basic-ftp": "6.2.2",
"fast-uri": "3.1.8",
"ip-address": "10.7.3",
"undici": "7.29.1"
} }
} }