Config policies (16 files): alert_routing, architecture_pressure, backlog, cost_weights, data_governance, incident_escalation, incident_intelligence, network_allowlist, nodes_registry, observability_sources, rbac_tools_matrix, release_gate, risk_attribution, risk_policy, slo_policy, tool_limits, tools_rollout Ops (22 files): Caddyfile, calendar compose, grafana voice dashboard, deployments/incidents logs, runbooks for alerts/audit/backlog/incidents/sofiia/voice, cron jobs, scripts (alert_triage, audit_cleanup, migrate_*, governance, schedule), task_registry, voice alerts/ha/latency/policy Docs (30+ files): HUMANIZED_STEPAN v2.7-v3 changelogs and runbooks, NODA1/NODA2 status and setup, audit index and traces, backlog, incident, supervisor, tools, voice, opencode, release, risk, aistalk, spacebot Made-with: Cursor
76 lines
1.7 KiB
Markdown
76 lines
1.7 KiB
Markdown
# Release Evidence Template (Sofiia Console)
|
||
|
||
Заповнювати після кожного релізу. Мета: мати короткий, відтворюваний артефакт виконаних дій і перевірок.
|
||
|
||
## 1) Release metadata
|
||
|
||
- Release ID:
|
||
- Date/Time UTC:
|
||
- Date/Time Europe/Kyiv:
|
||
- Operator:
|
||
- Target nodes: `NODA1` / `NODA2`
|
||
- Deployed SHAs:
|
||
- `sofiia-console`:
|
||
- `router`:
|
||
- `gateway`:
|
||
- `memory-service`:
|
||
- Change summary (1-3 bullets):
|
||
-
|
||
|
||
## 2) Preflight results
|
||
|
||
- Command:
|
||
- `bash ops/preflight_sofiia_console.sh`
|
||
- `STRICT=1 bash ops/preflight_sofiia_console.sh` (prod window)
|
||
- Status: `PASS` / `FAIL`
|
||
- WARN summary (if any):
|
||
-
|
||
|
||
## 3) Deploy steps performed
|
||
|
||
- NODA2 precheck: `OK` / `FAIL`
|
||
- Notes:
|
||
- NODA1 rollout: `OK` / `FAIL`
|
||
- Method (docker/systemd/manual):
|
||
- Notes:
|
||
- NODA2 finalize: `OK` / `FAIL`
|
||
- Notes:
|
||
|
||
## 4) Smoke evidence
|
||
|
||
- `GET /api/health`: status code / result
|
||
- `GET /metrics`: reachable `yes/no`
|
||
- Idempotency A/B smoke:
|
||
- Command: `bash ops/redis_idempotency_smoke.sh`
|
||
- Result: `PASS` / `FAIL`
|
||
- `message_id`:
|
||
- `/api/audit` auth checks:
|
||
- without key -> `401` confirmed: `yes/no`
|
||
- with key -> `200` confirmed: `yes/no`
|
||
|
||
## 5) Post-release checks
|
||
|
||
- Key metrics deltas (optional):
|
||
- `sofiia_rate_limited_total`:
|
||
- `sofiia_idempotency_replays_total`:
|
||
- Audit write/read quick check: `OK` / `FAIL`
|
||
- Retention dry-run:
|
||
- Command: `python3 ops/prune_audit_db.py --dry-run`
|
||
- `candidates=`:
|
||
- Notes:
|
||
|
||
## 6) Rollback plan & outcome
|
||
|
||
- Rollback needed: `no` / `yes`
|
||
- If yes:
|
||
- reason:
|
||
- rollback commands used:
|
||
- result:
|
||
- Final service state: `healthy` / `degraded`
|
||
|
||
## 7) Sign-off
|
||
|
||
- Reviewer / approver:
|
||
- Timestamp UTC:
|
||
- Notes:
|