food-market/tests/e2e/reports/superadmin-console-2026-05-26T07-03-38-197Z.md
nns 6098c03e1a docs(e2e): итоговый отчёт 2026-05-26 — 15 сценариев зелёные (124 шага)
Полная регрессия всех сценариев + 6 новых областей этой сессии (employees,
roles, superadmin-console, platform-smtp, auth-password, security-edge).
За день исправлено 4 бага: уволенный сотрудник логинится (P0), конкурентное
проведение приёмки ломает инвариант (critical), refresh не гасится после
ротации (high), change-owner принимал короткий reason (medium). Нереализованный
по ТЗ функционал (отчёты/склад-документы/POS/permission-authz/login-ratelimit)
зафиксирован как Logic gaps.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 12:05:23 +05:00

3.9 KiB
Raw Blame History

E2E report: superadmin-console

Запущен: 2026-05-26T07:03:32.749Z Длительность: 4.0с

Итог: 6 ✓ / 0 ✗ / 0 ⚠ / 0 ◯ (всего 6)

✓ Step step01_create_org_audited: Создание орг1 → 200 + запись CreateOrg в audit-log

Длительность: 1064мс

Тип Проверка Результат
api Создание орг1 → 200 ✓ status=200
api audit-log содержит CreateOrg ✓ actions=CreateOrg

✓ Step step02_archive: Архив: неверное имя → 400, верное → 204, IsArchived=true + ArchiveOrg

Длительность: 268мс

Тип Проверка Результат
api Архив с неверным именем → 400 ✓ status=400
api Архив с верным именем → 204 ✓ status=204
db IsArchived=true, ArchivedAt задан ✓ IsArchived=t
api audit-log содержит ArchiveOrg

✓ Step step03_restore: Восстановление → 204, IsArchived=false + RestoreOrg

Длительность: 260мс

Тип Проверка Результат
api Восстановление → 204 ✓ status=204
db IsArchived=false ✓ IsArchived=f
api audit-log содержит RestoreOrg

✓ Step step04_change_owner: Смена владельца: без reason → 400, reason<10 → 400, валидно → 204 + ChangeOwner

Длительность: 1064мс

Тип Проверка Результат
api Второй пользователь орг1 создан (кандидат во владельцы)
api change-owner без reason → 400 ✓ status=400
api change-owner reason<10 → 400 ✓ status=400
api change-owner валидный reason → 204 ✓ status=204
db AccountOwnerUserId обновлён на нового владельца ✓ owner=72dc5c01-7e75-4fac-bb50-ae39bd958a6a
api audit-log содержит ChangeOwner ✓ actions=ChangeOwner,RestoreOrg,ArchiveOrg,CreateOrg

✓ Step step05_hard_delete: Hard-delete: не-архив → 409, до retention → 409, retention=0 + верное имя → 204, юзеры деактивированы

Длительность: 1269мс

Тип Проверка Результат
api Орг2 создана
api Удаление неархивной орг → 409 ✓ status=409
api Удаление до retention → 409 ✓ status=409 {"error":"Доступно через 30 дней архива."}
api Удаление с неверным именем → 400 ✓ status=400
api Удаление архивной (retention=0, верное имя) → 204 ✓ status=204
db Организация физически удалена ✓ rows=0
db Юзеры отвязаны/деактивированы (нет привязки к удалённой орг) ✓ before=1 stillLinked=0

✓ Step step06_audit_log_filters: audit-log: фильтр по org и actionType, ChangeOwner хранит reason

Длительность: 55мс

Тип Проверка Результат
api audit орг1 содержит CreateOrg/ArchiveOrg/RestoreOrg/ChangeOwner ✓ actions=ChangeOwner,RestoreOrg,ArchiveOrg,CreateOrg
api Фильтр actionType=DeleteOrg для орг2 возвращает запись ✓ count=1
api Фильтр actionType отсекает прочее (все строки DeleteOrg) ✓ types=DeleteOrg
api ChangeOwner в журнале хранит reason ✓ reason=Передача владения по тикету поддержки #4242

Summary

  • Passed: 6
  • Failed: 0
  • Warnings: 0
  • Skipped: 0

Critical bugs

Нет.