food-market/tests/e2e/reports/security-edge-2026-05-26T07-03-49-977Z.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

68 lines
2.1 KiB
Markdown
Raw 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.

# E2E report: security-edge
Запущен: 2026-05-26T07:03:45.792Z
Длительность: 2.7с
**Итог:** 6 ✓ / 0 ✗ / 0 ⚠ / 0 ◯ (всего 6)
## ✓ Step step01_protected_require_auth: Защищённые эндпоинты без токена → 401
Длительность: 46мс
| Тип | Проверка | Результат |
|---|---|---|
| api | Все защищённые GET без токена → 401 | ✓ проверено 8 |
## ✓ Step step02_anonymous_open: Анонимные эндпоинты (/health) доступны без токена
Длительность: 36мс
| Тип | Проверка | Результат |
|---|---|---|
| api | /health без токена → 200 | ✓ status=200 |
| api | /connect/token анонимен (400, не 401) | ✓ status=400 |
## ✓ Step step03_path_traversal_uploads: Path-traversal /uploads/..%2f..%2fetc/passwd → не 200 (404)
Длительность: 18мс
| Тип | Проверка | Результат |
|---|---|---|
| api | Path-traversal не отдаёт системные файлы | ✓ все отбиты (404) |
## ✓ Step step04_sql_injection_safe: SQL-инъекция в quick-search безопасна, таблица цела
Длительность: 1846мс
| Тип | Проверка | Результат |
|---|---|---|
| api | quick-search с инъекцией не падает (нет 5xx) | ✓ |
| db | Таблица products цела (count не изменился) | ✓ before=1 after=1 |
## ✓ Step step05_tenant_404_not_403: GET товара чужого тенанта → 404 (не 403, не 200)
Длительность: 781мс
| Тип | Проверка | Результат |
|---|---|---|
| api | Товар чужого тенанта → 404 (не 200/403) | ✓ status=404 |
## ✓ Step step06_cors_evil_origin: CORS не отражает Origin http://evil.com
Длительность: 10мс
| Тип | Проверка | Результат |
|---|---|---|
| api | ACAO не равен http://evil.com | ✓ ACAO=(нет) |
## Summary
- Passed: 6
- Failed: 0
- Warnings: 0
- Skipped: 0
## Critical bugs
Нет.