182 lines
6.2 KiB
Markdown
182 lines
6.2 KiB
Markdown
# Ручной regression checklist
|
|
|
|
## 1. Назначение
|
|
|
|
Этот документ фиксирует post-integration baseline для Community UI, auth, secrets и REST/MCP slices.
|
|
|
|
Цель:
|
|
|
|
- дать воспроизводимый regression pass после крупных вертикальных срезов;
|
|
- отделить автоматический baseline от ручного smoke на стенде;
|
|
- не заставлять следующего агента заново собирать сценарии по всему проекту.
|
|
|
|
## 2. Автоматический baseline
|
|
|
|
Локальный regression baseline на `2026-04-07`:
|
|
|
|
- `cargo check --workspace` -> passed;
|
|
- `cd apps/ui && npm run e2e` -> `11 passed`;
|
|
- e2e стек поднимает:
|
|
- `postgres`;
|
|
- `admin-api`;
|
|
- `mcp-server`;
|
|
- локальный UI proxy.
|
|
|
|
Покрытые автоматикой сценарии:
|
|
|
|
- login;
|
|
- operations catalog;
|
|
- agents;
|
|
- api keys;
|
|
- logs;
|
|
- usage;
|
|
- workspace/settings;
|
|
- wizard;
|
|
- REST draft/test/publish flow.
|
|
|
|
## 3. Когда запускать этот pass
|
|
|
|
Запускать обязательно после изменений в:
|
|
|
|
- auth/session;
|
|
- workspace switching;
|
|
- operations/wizard;
|
|
- agents;
|
|
- secrets/auth profiles;
|
|
- MCP transport;
|
|
- deploy routing/UI routes.
|
|
|
|
## 4. Обязательные команды перед ручным проходом
|
|
|
|
```bash
|
|
cargo check --workspace
|
|
cd apps/ui && npm run e2e
|
|
```
|
|
|
|
Если одна из команд не проходит, ручной regression pass не считается завершенным.
|
|
|
|
## 5. Ручной smoke checklist
|
|
|
|
### 5.1. Auth и shell
|
|
|
|
- открыть `/login`;
|
|
- проверить, что страница не зацикливается на redirect;
|
|
- проверить invalid login;
|
|
- войти bootstrap admin-пользователем;
|
|
- убедиться, что после входа открывается `/`;
|
|
- проверить logout;
|
|
- войти повторно;
|
|
- проверить header identity;
|
|
- проверить language switch;
|
|
- проверить workspace switch в navbar.
|
|
|
|
### 5.2. Operations
|
|
|
|
- открыть `/`;
|
|
- убедиться, что demo operations загружены;
|
|
- проверить search;
|
|
- проверить protocol/category/agent filters;
|
|
- открыть edit существующей operation;
|
|
- удалить operation из demo workspace только если это безопасно для текущего стенда;
|
|
- проверить success/error toasts;
|
|
- проверить clean routes без `/html/...`.
|
|
|
|
### 5.3. Wizard
|
|
|
|
- открыть `/wizard/`;
|
|
- убедиться, что доступна только `REST` protocol card;
|
|
- для нового upstream проверить режимы auth:
|
|
- `No auth`
|
|
- `Use existing auth profile`
|
|
- `Create auth profile now`
|
|
- создать quick secret из wizard;
|
|
- создать quick auth profile из wizard;
|
|
- сохранить upstream;
|
|
- убедиться, что `execution_config.auth_profile_ref` попадает в draft/test flow;
|
|
- проверить sample upload;
|
|
- проверить YAML export/import;
|
|
- проверить `Test run`;
|
|
- проверить `Publish`.
|
|
|
|
### 5.4. Agents
|
|
|
|
- открыть `/agents`;
|
|
- проверить cards и lifecycle badges;
|
|
- открыть drawer;
|
|
- проверить bindings;
|
|
- создать или обновить agent;
|
|
- проверить publish/unpublish/archive flow;
|
|
- проверить copy MCP endpoint.
|
|
|
|
### 5.5. API Keys
|
|
|
|
- открыть `/api-keys`;
|
|
- создать key;
|
|
- убедиться, что raw key показывается один раз;
|
|
- проверить copy;
|
|
- проверить revoke;
|
|
- проверить delete;
|
|
- проверить `last_used_at` после реального machine-auth вызова при необходимости.
|
|
|
|
### 5.6. Secrets
|
|
|
|
- открыть `/secrets`;
|
|
- проверить list/create/rotate/delete;
|
|
- создать:
|
|
- `token`;
|
|
- `username_password`;
|
|
- `header`;
|
|
- `generic`;
|
|
- убедиться, что plaintext не возвращается после create/rotate;
|
|
- проверить usage references через auth profiles;
|
|
- проверить, что wizard quick-create синхронизируется с этой страницей.
|
|
|
|
### 5.7. Logs и Usage
|
|
|
|
- открыть `/logs`;
|
|
- проверить loading/error/empty states;
|
|
- проверить detail expansion;
|
|
- открыть `/usage`;
|
|
- проверить summary cards;
|
|
- проверить timeline chart;
|
|
- проверить CSV export.
|
|
|
|
### 5.8. Workspace и Settings
|
|
|
|
- открыть `/workspace-setup`;
|
|
- проверить редактирование имени, slug, описания и цвета единственного workspace;
|
|
- проверить, что интерфейса приглашений, ролей и управления пользователями нет;
|
|
- проверить export workspace;
|
|
- проверить, что delete workspace не отображается;
|
|
- открыть `/settings`;
|
|
- проверить profile update;
|
|
- проверить password change.
|
|
|
|
## 6. Protocol smoke pass
|
|
|
|
Для smoke-проверки MCP использовать готовый public target из [public-smoke-targets.md](public-smoke-targets.md).
|
|
|
|
Обязательный кейс:
|
|
|
|
- REST: [Frankfurter examples](../examples/frankfurter/README.md)
|
|
|
|
## 7. Acceptance criteria
|
|
|
|
Regression pass считается завершенным, если одновременно выполнены условия:
|
|
|
|
- `cargo check --workspace` passed;
|
|
- Playwright suite passed;
|
|
- login/shell/manual navigation не ломаются;
|
|
- `Secrets -> Auth Profiles -> Wizard -> Test run` связка работает;
|
|
- public REST smoke target проходит;
|
|
- нет критичных UI regressions на clean routes, i18n и auth redirects.
|
|
|
|
## 8. Если что-то падает
|
|
|
|
- сначала фиксировать failing automated spec;
|
|
- потом чинить ручной smoke regression;
|
|
- после фикса повторять:
|
|
- `cargo check --workspace`;
|
|
- `cd apps/ui && npm run e2e`;
|
|
- только потом фиксировать результат в текущем рабочем трекере.
|