docs: add staging regression notes template

This commit is contained in:
a.tolmachev
2026-04-07 12:42:11 +03:00
parent f1042877b2
commit b26ab3d85c
4 changed files with 150 additions and 5 deletions
+1
View File
@@ -47,6 +47,7 @@ Crank - платформа для публикации внешних API в в
- `docs/runtime-config.md` - конфигурация окружения.
- `docs/deployment.md` - деплой, reverse proxy и CI/CD.
- `docs/deploy-and-staging-smoke.md` - канонический post-deploy smoke pass для staging/production-like окружения.
- `docs/staging-regression-notes.md` - журнал реальных замечаний и результатов post-deploy проверок на стенде.
- `docs/demo-runbook.md` - демонстрационный сценарий.
- `docs/public-smoke-targets.md` - готовые публичные upstream-сервисы и payload-ы для smoke-проверки MCP.
- `docs/secrets-auth-plan.md` - целевая модель upstream secrets, auth profiles и пошаговый план реализации.
+5 -5
View File
@@ -2,18 +2,18 @@
## Current
### `feat/deploy-and-staging-smoke`
### `feat/staging-regression-notes`
Status: completed
DoD:
- deploy/staging smoke checklist exists
- checklist covers server health, proxy routing, auth, UI pages, secrets, MCP, streaming
- deployment, demo and README docs link to the same smoke runbook
- staging regression log template exists
- deploy smoke runbook links to the regression log
- README references the regression log as the canonical post-deploy notes location
## Next
- `feat/staging-regression-notes`
- `feat/next-live-staging-pass`
## Backlog
+2
View File
@@ -9,6 +9,8 @@
- быстро проверить, что свежий deploy реально жив, а не просто "docker compose up -d завершился";
- дать следующему агенту и оператору один канонический сценарий проверки после релиза.
Результаты прохождения этого checklist нужно заносить в [staging-regression-notes.md](/home/a.tolmachev/code/rust/mcpaas/docs/staging-regression-notes.md).
## 2. Когда использовать
Запускать после:
+142
View File
@@ -0,0 +1,142 @@
# Staging Regression Notes
## 1. Назначение
Этот документ фиксирует результаты ручных проверок на staging/production-like окружении после deploy.
Он нужен для трех задач:
- хранить пост-деплойные замечания вне чата;
- отличать разовые сбои окружения от продуктовых регрессий;
- дать следующему агенту нормальный handoff по реальному состоянию стенда.
Использовать вместе с:
- [deploy-and-staging-smoke.md](/home/a.tolmachev/code/rust/mcpaas/docs/deploy-and-staging-smoke.md)
- [manual-regression-checklist.md](/home/a.tolmachev/code/rust/mcpaas/docs/manual-regression-checklist.md)
## 2. Как вести записи
Каждый deploy или ручной regression pass должен добавляться новым блоком в начало документа.
На один блок фиксировать:
- дата и время;
- окружение;
- commit/tag/image;
- кто запускал pass;
- какие smoke steps прошли;
- какие дефекты подтверждены;
- какие наблюдения являются только инфраструктурными;
- какие follow-up fixes нужны.
Если замечание исправлено, не удалять его из истории, а отметить:
- `status: fixed`
- `fixed_by: <commit>`
## 3. Формат записи
Использовать такой шаблон:
```md
## YYYY-MM-DD HH:MM TZ — <environment>
- deploy commit: `<sha>`
- checked by: `<name>`
- smoke status: `passed | partial | failed`
- scope:
- auth
- ui shell
- operations
- wizard
- agents
- api keys
- secrets
- logs
- usage
- streaming
- mcp smoke
### Passed
- ...
### Findings
1. `<severity>` `<short title>`
- area: `<page/service>`
- symptom: `...`
- reproduction: `...`
- expected: `...`
- actual: `...`
- status: `open | fixed | accepted`
- fixed_by: `<sha or ->`
### Infra notes
- ...
### Follow-up
- ...
```
## 4. Severity model
Использовать только 4 уровня:
- `critical`
deploy unusable, login broken, MCP unavailable, data corruption risk
- `high`
primary flow broken, но система частично работает
- `medium`
заметный UX/runtime дефект с обходным путем
- `low`
косметика, wording, layout, docs mismatch
## 5. Что считать finding, а что нет
### Считать finding
- broken routing;
- redirect loop;
- wrong auth/session behavior;
- page-level JS exception;
- incorrect MCP result;
- secret/auth profile flow mismatch;
- deploy route returning HTML instead of JSON;
- streaming session/job inconsistency.
### Не считать product finding
- разовый сетевой timeout;
- локальный browser glitch без воспроизведения;
- внешний upstream outage из публичного smoke target;
- предупреждения, не влияющие на flow;
- заранее известные `planned` capability blocks.
Такие случаи писать в `Infra notes`, а не в `Findings`.
## 6. Open follow-up inventory
Пока документ создается как шаблон, без зафиксированных staging defects.
Первый реальный проход должен заполнить минимум:
- auth/login status;
- clean routes status;
- `Secrets -> Auth Profiles -> Wizard -> Test run` статус;
- `REST`, `GraphQL`, `gRPC` smoke results;
- streaming pages status;
- WebSocket/SOAP note:
- `not exercised`
- или `failed/passed` с причиной.
## 7. Последняя актуальная запись
На момент создания документа:
- automated baseline локально зеленый;
- канонический post-deploy smoke runbook существует;
- staging findings еще не занесены.