Files
microdao-daarion/docs/runbook/rehearsal-v1-30min-checklist.md
Apple 55a5e541df docs(dev): add v1 30-min rehearsal execution checklist
includes preflight, restart, smoke, observation, evidence steps

defines success criteria and metrics to collect for next-step decision

Made-with: Cursor
2026-03-03 03:54:53 -08:00

117 lines
3.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Rehearsal v1.0 — 30-minute execution plan
Контрольований rehearsal без змін коду: перевірка **процесу релізу** (preflight → restart → smoke → observation → evidence).
**Release window:** виділений слот 3060 хв (наприклад сьогодні 20:0021:00 UTC або завтра зранку).
---
## ⏱ 05 хв — Preflight
```bash
STRICT=1 bash ops/preflight_sofiia_console.sh
```
**Очікування:** PASS або лише не-критичні WARN. Якщо FAIL → зупиняємось і виправляємо.
**Зафіксувати:** результат (PASS / WARN / FAIL), коротко що було.
---
## ⏱ 510 хв — Controlled Restart
Перезапусти sofiia-console (як прийнято: systemd/docker).
Після старту:
```bash
curl -i http://127.0.0.1:8002/api/health
curl -i http://127.0.0.1:8002/metrics
```
**Очікування:** 200 OK, без 500, metrics доступні.
---
## ⏱ 1015 хв — Smoke (функціональний)
### Idempotency A/B (якщо Redis backend)
```bash
bash ops/redis_idempotency_smoke.sh
```
**Очікування:** `message_id` однаковий, `replayed=true` на другому запиті.
### Audit auth
Без key:
```bash
curl -i http://127.0.0.1:8002/api/audit
```
**401**
З key:
```bash
curl -H "X-API-Key: <key>" http://127.0.0.1:8002/api/audit
```
**200**
---
## ⏱ 1525 хв — Observation Window
Спостерігай 10 хв. Мінімум перевірити:
- Чи є 5xx?
- Чи росте `sofiia_rate_limited_total` неочікувано?
- Чи росте `sofiia_idempotency_replays_total` аномально?
- Чи відповідає send стабільно?
Якщо можливо — зафіксуй приблизний p95 latency (на око по логах достатньо).
---
## ⏱ 2530 хв — Evidence
```bash
bash ops/generate_release_evidence.sh
```
Перевір, що файл створено. Доповни вручну: smoke A/B, post-release checks, rollback notes (якщо були).
---
# Критерії успіху rehearsal
| Перевірка | Результат |
|-----------|-----------|
| Preflight | PASS |
| Health + metrics | OK |
| Idempotency smoke | PASS |
| Audit strict auth | 401 без key / 200 з key |
| 5xx | нема |
| Rate-limit / replay сплески | нема дивних |
Якщо все зелено — **v1 процес релізу вважається стабільним**.
---
# Після rehearsal — що принести далі
Для decision-матриці (Phase 6 / HA / policy / dashboards) потрібно:
- 5xx count (total + send)
- replay delta
- rate_limit delta (chat / operator)
- приблизна latency (p95)
- audit events volume
- будь-які WARN з preflight
- friction моменти (що було неочевидним)
Див. також: `docs/release/sofiia-console-post-release-review-template.md`.