2.1 KiB
2.1 KiB
Кодер 2 (review + доработка)
Отчёт по анти-чеклисту:
sessionsflow uses single-query projection — проверено — чисто (переход наgetUnifiedSessionsSummaryFlow).- Single-query projection does not perform N individual subqueries — проверено — чисто (подзапросы в SELECT компилируются в один SQL statement, Room видит 1 запрос, тест
SessionListQueryCountTestпроходит). - Memory release clears maps — проверено — чисто (в
releaseSession). - Session host mutexes are cleaned up — проверено — чисто (очищаются в
releaseSession). toolToMessageMapis cleaned up upon message completion — проверено — чисто.- Strict
messageIdmatching handles fallback gracefully — проверено — чисто (добавлен безопасный fallback при пустом id). - Auto-scroll follows active streaming smoothly — нарушено — удаление параметра lastMessageLength из
LaunchedEffectпривело к тому, что автопрокрутка не реагировала на изменение длины текста при потоковой передаче.- Исправление: В
ChatScreen.ktвосстановлено отслеживание длины текста последнего сообщения (messages.lastOrNull()?.content?.length) внутриsnapshotFlow, чтобы прокрутка возобновлялась во время стриминга.
- Исправление: В
- Before/after measurements are verified on the same dataset/scenario — проверено — чисто.
- Verification commands actually executed with exit codes captured — проверено — чисто.
Вердикт: LOW severity finding (Регресс с автопрокруткой, исправлено). Все тесты и команды верификации зелёные. Изменения минимальны и закрывают задачу.