docs(sprint1): P0-1 done

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
nns 2026-05-27 02:47:12 +05:00
parent 422b7ad5ea
commit 744847661d

View file

@ -30,8 +30,12 @@
оставлены SuperAdmin — глобальный справочник). Закрывает «роли — фикция» из аудита. оставлены SuperAdmin — глобальный справочник). Закрывает «роли — фикция» из аудита.
Проверка: curl на :5091 (403/200/400) + e2e `roles` step08 — зелёный 8/8. Проверка: curl на :5091 (403/200/400) + e2e `roles` step08 — зелёный 8/8.
Rate-limit стал конфигурируемым (`RateLimiting:*`) — иначе повторные логины тестов → 429. Rate-limit стал конфигурируемым (`RateLimiting:*`) — иначе повторные логины тестов → 429.
4. [ ] **P0-1 OpenIddict prod-ключи** — signing+encryption сертификаты из пути в конфиге, 4. [x] **P0-1 OpenIddict prod-ключи** — signing+encryption сертификаты из пути в конфиге,
persistent self-signed если файла нет. Dev-поведение не ломать. Документировать. persistent self-signed если файла нет. Dev-поведение не ломать. Документировать.
`OpenIddictKeyConfigurator`: dev RSA-XML (без изменений), prod X509 из
`OpenIddict:SigningCertPath`/`EncryptionCertPath`/`CertPassword`, self-signed (5 лет) в
App_Data при отсутствии. Проверено: prod 5-сегм. JWE, persist через рестарт (тот же
fingerprint, pre-restart токен валиден); dev 3-сегм. JWT. `docs/openiddict-keys.md`.
5. [ ] **P0-6 Авто-бэкап**`deploy/food-market-backup.service` + `.timer`, скрипт 5. [ ] **P0-6 Авто-бэкап**`deploy/food-market-backup.service` + `.timer`, скрипт
backup+ротация 30 дней, `docs/backup-restore.md`. Только артефакты в репо. backup+ротация 30 дней, `docs/backup-restore.md`. Только артефакты в репо.
6. [ ] **P0-8**`deploy/.env.example` + `docs/secrets.md`. 6. [ ] **P0-8**`deploy/.env.example` + `docs/secrets.md`.