баг-фикс завершён

This commit is contained in:
Zuev
2026-07-19 20:16:12 +03:00
parent bc0e1ab1b4
commit ee876f1acd
43 changed files with 1228 additions and 258 deletions

View File

@@ -23,6 +23,21 @@ docker compose logs -f
Приложение доступно: **http://localhost:80**
### Обновление контейнерных артефактов
Базовые и служебные образы указываются как `точный-tag@sha256:manifest-digest`; сторонние
Actions — полным 40-символьным commit SHA. При обновлении версии одновременно обновите tag,
digest и комментарий версии, затем выполните:
```bash
bash scripts/test-artifact-pinning.sh
K8S_DIR=../k8s bash scripts/check-artifact-pinning.sh
```
Для скачиваемого исполняемого файла обязательны точная версия и проверка опубликованного
SHA-256 до установки. Отключать SBOM, provenance или блокирующее HIGH/CRITICAL-сканирование
ради прохождения pipeline запрещено.
### Пересборка после изменений
```bash
@@ -220,6 +235,18 @@ public class AbsenceController {
---
## Работа со временем
- Для абсолютного момента используйте `Instant`; в БД ему соответствует `TIMESTAMPTZ`.
- Для календарной даты без времени используйте `LocalDate`; текущую бизнес-дату получайте
через инъекцию `BusinessTimeService`, а не через `LocalDate.now()`.
- Новую бизнес-логику, зависящую от текущего времени, проверяйте фиксированным `Clock` на
границе московской полуночи.
- Во frontend не формируйте date-only через `Date.toISOString().slice(0, 10)`:
используйте `formatLocalDate()` или исходную строку `YYYY-MM-DD`.
---
## Работа с миграциями Flyway
### Правила