docs: record compatibility runs, decisions and session reasoning

This commit is contained in:
Naeel
2026-04-10 20:27:59 +03:00
parent ebcb20475a
commit c9d9231efc
4 changed files with 122 additions and 0 deletions
+46
View File
@@ -318,6 +318,52 @@ Email из токена показывается в UI справа вверху
### Диагностика
1. **Первая гипотеза**: gorilla/mux route ordering — `r.PathPrefix("/ui")` static handler перехватывает `/ui/api/auth`.
---
## Сессия 5
# Agent: GitHub Copilot (GPT-5.3-Codex)
### Задача
1. Закрыть оставшиеся security/perf хвосты
2. Прогнать compatibility тесты для выявления новых расхождений
3. Подготовить документированный статус для managed SQS roadmap
### План перед действиями
- Сначала закрыть критичные и высокие уязвимости с минимальными точечными правками
- Затем закрыть medium риски, влияющие на managed эксплуатацию
- После этого прогнать compatibility scripts against production endpoint
- По итогам разделить реальные дефекты и устаревшие ожидания тестов
### Что сделано
- Исправлены security issues в auth, admin, gosqs, tenant, persistence, router
- Добавлена SigV4 подпись верификация для header и presigned запросов
- Закрыт IDOR в UI API: доступ только к собственному tenant id
- Убраны race и persistence рассинхроны в batch/send/delete/admin операциях
- Оптимизирован long polling в receive handler
- Изменения закоммичены и запушены в ветку fix/critical-high-security-2026-04-10
### Compatibility прогоны
- tests/shared_sqs_test.sh: PASS=28 FAIL=0
- tests/quick_test.sh: PASS=12 FAIL=7
- tests/hardcore_test.sh: PASS=90 FAIL=14
### Анализ результатов
1. Основной SQS поток совместимости (AWS CLI + awscurl + tenant isolation) стабилен
2. Большинство падений quick/hardcore связано с тем, что старые UI-сценарии идут без JWT
3. Это не regression сервиса, а рассогласование тестов с текущей security моделью
4. Часть проверок ожидает strict reject, тогда как текущая логика использует clamp
### Выводы
- Для managed SQS следующий блок работ: привести compatibility suite к актуальному auth контракту
- Нужны отдельные воркфлоу:
- SQS compatibility suite (без UI auth assumptions)
- UI compatibility suite (обязательный login через /ui/api/auth)
### Следующие шаги
1. Обновить tests/quick_test.sh под JWT-aware UI сценарий
2. Обновить UI-блоки tests/hardcore_test.sh
3. Добавить стабильный multi-run тест для big payload кейсов
- Перенёс `/ui/api/auth` на subrouter вместо root router HandleFunc.
- Собрал v0.1.16, задеплоил → **всё ещё 404**