chore(test): проверить удержание отправок с неизвестным исходом

This commit is contained in:
Denozordec committed 2026-10-08 14:09:17 +07:00
1 parent 507c7010ad
commit ffe44dc938
6 files changed
+98 -4

No files matched your search

+11 -1
View File
@@ -1,6 +1,6 @@
# UX/UI: журнал реализации
Актуальное продолжение 2026-10-08: 12.5.38 проверил production settlement на PostgreSQL: отказ INSERT истории оставляет unknown без автоматического повтора; ошибка подтверждения после реального COMMIT сохраняет sent и одну историю. Ответ Telegram подменён, реальных сообщений нет. Следующий блок 12.5.39 — неопределённый ответ отправителя и отказ сохранения unknown. Runtime backend8782054/frontendf194e72 прежний; внешняя приёмка 12.5 остаётся открытой.
Актуальное продолжение 2026-10-08: 12.5.39 подтвердил отсутствие автоматического повтора при неопределённом ответе отправителя: unknown при успешном hold, processing при отказе его записи. Production dispatcher и SQL проверены на отдельной PostgreSQL БД; внешний fetch подменён, реальных сообщений нет. Следующий блок 12.5.40 — явный отказ отправителя, задержка повтора и исчерпание попыток. Runtime backend8782054/frontendf194e72 прежний; внешняя приёмка 12.5 открыта.
Общий план: [UX/UI по этапам и пятичасовым окнам](ux-ui-plan.md). План задаёт объём, этот журнал фиксирует выполненные блоки и ограничения. Записи расположены от новых к старым; подробная история этапа12 также сохранена в [ux-ui-stage-12.md](ux-ui-stage-12.md).
@@ -34,6 +34,16 @@
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Завершён в границах локальной приёмки 2026-10-03; ограничения и evidence в11Б.7 |
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в описанных границах:12.3.83,main1186/1186,context221/221. Этап остаётся в работе: стенд12.5.1–3 развёрнут,bootstrap/smoke проверены;остальные сценарии12.5 не выполнены. |
## 12.5.39 — неопределённый ответ отправителя и отказ записи unknown (2026-10-08)
[Отчёт PostgreSQL](ux-ui/acceptance/outbox-unknown-2026-10-08.json): production dispatchPendingOutbox из backend8782054, отдельная БД mmapp_acceptance_20261007. Fetch вместо внешнего запроса бросает исключение: это управляемая проверка отсутствия ответа, а не физический сетевой timeout и не доказательство доставки в Telegram.
В первом случае dispatcher вернул sent=0/failed=0/held=1, строка стала unknown без увеличения retry_count, история отсутствует. Повторный dispatcher не вызывает отправителя. Во втором случае реальный PostgreSQL trigger отклонил UPDATE unknown: строка осталась processing, API результата сообщает, что сохранение не подтверждено и автоматического повтора нет. После удаления триггера повторный dispatcher тоже не отправил сообщение. Два вызова перехваченного отправителя соответствуют двум явно подготовленным синтетическим сценариям; реальных сообщений — ноль.
Тестовые записи и объекты БД удалены, исходные настройки Telegram восстановлены из памяти с сохранением точного updated_at, fetch восстановлен, pool и контейнер закрыты. Отдельный SQL-запрос подтвердил ноль fixture-записей, ноль тестовых триггеров и функций для блоков 38–39. Основной стенд не затрагивался. Q-3 принят только на границе поведения production sender/PG; реальный чат, UI этого состояния и многопроцессное восстановление отдельно не проверены.
Следующий блок 12.5.40 — явный отказ отправителя, задержка повтора и исчерпание попыток, без реальных сообщений. Документы синхронизированы; локальный коммит без push.
## 12.5.38 — ошибки сохранения после принятого ответа отправителя (2026-10-08)
[Отчёт PostgreSQL](ux-ui/acceptance/outbox-settlement-2026-10-08.json): production dispatchPendingOutbox из backend8782054, отдельная БД mmapp_acceptance_20261007. Telegram fetch перехвачен внутри изолированного процесса и возвращает ok=true; реальных сообщений не отправлено.