docs: VERSION MAJOR.MINOR, IFT/stage=sha, health build identity

This commit is contained in:
2026-07-14 21:25:41 +03:00
parent acb9393f46
commit 176c327092
3 changed files with 39 additions and 2 deletions
+35
View File
@@ -164,6 +164,39 @@ Issue: https://git.sabilin.com/EventHub/EventHubBack/issues/24
---
## 6. Версии и деплой (IFT / stage)
### Product version (`VERSION`)
В корне `EventHubBack` и `EventHubFrontAdmin` лежит файл **`VERSION`** в формате **`MAJOR.MINOR`** (сейчас `0.1`).
- Бампается **вручную и редко** (релиз продуктовой линейки), не на каждый push.
- Patch-уровень SemVer **не** используется для stage-деплоев.
- Ручные git-теги `v*` для выкладки на stage **не** нужны.
### Идентичность сборки
| Поле | Откуда | Назначение |
|------|--------|------------|
| product version | `VERSION` | «линейка» продукта |
| git sha | `GITHUB_SHA` (12 символов) | точная сборка |
| built_at | время CI UTC | диагностика |
- **FrontAdmin:** bake в Vite (`VITE_APP_VERSION`, `VITE_GIT_SHA`, `VITE_BUILT_AT`) на шаге CI.
- **Back:** bake в Docker image (`EVENTHUB_VERSION`, `EVENTHUB_GIT_SHA`, `EVENTHUB_BUILT_AT`) → `GET /admin/health` и `GET /v1/admin/health` (`version`, `git_sha`, `built_at`).
- В UI (меню профиля): `Admin 0.1 (sha)` + `API 0.1 (sha)`.
### Registry / окружения
| Окружение | Тег образа | Когда |
|-----------|------------|--------|
| IFT / push CI | `sha-<12>` + floating `:ift` / `:dev` | после зелёного CI |
| Stage | тот же `sha-<12>` + floating `:stage` | auto после успешного CI на `master` (`deploy-stage.yml` → promote + SSH deploy) |
IFT и stage крутят **одну и ту же** сборку `sha-*`. Product version из `VERSION` на деплой не влияет.
---
## 4. Расширение правил
При появлении новой договорённости в работе:
@@ -186,6 +219,7 @@ Issue: https://git.sabilin.com/EventHub/EventHubBack/issues/24
- Секреты и токены не коммитить; Gitea token — только в env / `~/.cursor/secrets/`.
- **Git commit/push — через WSL** (`~/.cursor/eventhub/git-commit.sh`, `git-push.sh`); **push — только после подтверждения пользователя** (см. §2.1).
- Новая задача — **отдельный чат** с брифом по §5.
- **Версии/деплой:** product = `VERSION` (`MAJOR.MINOR`); IFT+stage = `sha-*` (+ floating `:ift`/`:stage`); без ручных stage-тегов и без patch++ на каждый push (см. §6).
---
@@ -193,6 +227,7 @@ Issue: https://git.sabilin.com/EventHub/EventHubBack/issues/24
| Дата | Изменение |
|------|-----------|
| 2026-07-14 | §6: VERSION MAJOR.MINOR + auto stage по sha после CI |
| 2026-07-07 | Git-скрипты Agent перенесены в `~/.cursor/eventhub/` (не в репозиториях) |
| 2026-07-07 | §5: шаблон передачи контекста в новый чат |
| 2026-07-07 | Push на remote — только после подтверждения пользователя |