docs(history): record review fixes applied (2.18) and remaining work

This commit is contained in:
Repinoid
2026-10-10 17:08:28 +03:00
parent 4e2b462379
commit bb6dbfd349
+14 -2
View File
@@ -172,6 +172,18 @@
- Лимит по байтам (OOM, 🔴14): нужны RAM ВМ + число тенантов → cap на тенанта/очередь + глобальный предохранитель по RSS.
- Порядок исправления — §5 дока анализа.
### 2.18. Правки по ревью (применено, 3 коммита)
- `654e315` — 🔴1 (SaveQueue под queue.mu), 🔴8 (пустой ReceiptHandle), 🔴5 (dedup только после
успешной записи, single+batch), глобальный предохранитель HeapAlloc (`memory_guard.go`,
`SHARED_SQS_MAX_HEAP_MB`, 0=выключен).
- `1230149` — JWT: только prod-шлюз (убран test/dev); grace в `cache.go` ограничен `graceDeadline`
от последней успешной проверки (не продлевается бесконечно).
- `2187027` — fail-fast: при заданном `REDIS_ADDR` и недоступном Redis → `log.Fatalf`.
- build + vet + test — зелёные. Не задеплоено на ВМ (жду команды).
- НЕ сделано (нужны решения владельца): цифры лимита по байтам (RAM/тенанты); идентичность
JWT по `sub` вместо email (зависит от того, проверяет ли шлюз подпись). Порядок локов и I/O
под глобальным локом — осталось (более крупный рефакторинг).
## 3. Грабли (для повторного использования)
1. **`proxy_set_header Host $host` теряет порт** → SigV4 `SignatureDoesNotMatch`.
@@ -240,5 +252,5 @@ pkill -x shared-sqs
От этого — 🔴 или «доверяем шлюзу». См. `opus-report-analysis-2026-10-10.md` §3.
7. **Лимит по байтам (решение владельца):** нужны RAM ВМ 213 и целевое число тенантов для цифр cap.
См. `opus-report-analysis-2026-10-10.md` §4.
8. Подтверждённый критический набор к исправлению (🔴1/🔴5/🔴8 + lock order + fail-fast) —
ожидает команды на правку.
8. 🔴1/🔴5/🔴8 + fail-fast + JWT + heap-guard — **применены** (коммиты 654e315/1230149/2187027),
не задеплоено. Осталось: порядок локов + I/O под глобальным локом (рефакторинг).