Document confirmed GRANT acknowledgment without saved attachment key
This commit is contained in:
1 parent
030336eaeb
commit
52651cfa0d
2 files changed
+12
-3
No files matched your search
@@ -137,8 +137,15 @@ REQUEST=1, REQUEST_ACK=2, GRANT=3, DENY=4, RESULT_ACK=5
|
||||
контейнера. Конфликтующие ключи и результаты отклоняются.
|
||||
|
||||
REQUEST_ACK отправляется после сохранения запроса. GRANT/DENY появляются
|
||||
в outbox только после сохранения решения. Полученный ключ сохраняется до
|
||||
RESULT_ACK и до запуска расшифровки. Повторы возвращают прежнее решение и не
|
||||
в outbox только после сохранения решения. Штатно полученный ключ сохраняется до
|
||||
RESULT_ACK и до запуска расшифровки. Аудит 26.10.2026 выявил открытый дефект этого
|
||||
подтверждения: ошибка bind ключа при GRANT не проверяется. Получатель может
|
||||
зафиксировать `key=NULL` вместе со `state=2`, отправить настоящий RESULT_ACK,
|
||||
а автор — отметить доставку и удалить GRANT из outbox. Это проверено с точечным
|
||||
SQLITE_NOMEM на собственных узлах через реальный подписанный и зашифрованный обмен;
|
||||
при UPDATE-ошибке через SQL-триггер откат и повтор работают штатно.
|
||||
Подробности и граница проверки — в [chat_audit_findings.txt](chat_audit_findings.txt), аудит приёма GRANT.
|
||||
Повторы возвращают прежнее решение и не
|
||||
создают новых строк. Таймер обрабатывает ограниченную порцию очереди с
|
||||
backpressure и повтором через 5 секунд; restart продолжает очереди.
|
||||
|
||||
|
||||
@@ -2,7 +2,9 @@
|
||||
* send готовит контейнер и публикует сообщение; downloaded/want запускают получение ключа и расшифровку.
|
||||
* Автор отвечает на запрос через decide. Ключи и очередь доставки сохраняются в локальной БД.
|
||||
* Все вызовы, кроме identity, — uasync. init после media_async; quiesce до остановки workers, destroy после них.
|
||||
* Обмен ключами подписан и зашифрован; для доставки нужен живой маршрут обеих сторон. */
|
||||
* Обмен ключами подписан и зашифрован; для доставки нужен живой маршрут обеих сторон.
|
||||
* Известный дефект приёма GRANT: ошибка bind ключа может привести к RESULT_ACK при key=NULL.
|
||||
* Подтверждение пока не гарантирует сохранение ключа; см. doc/chat_audit_findings.txt, аудит приёма GRANT. */
|
||||
#ifndef CHAT_ATTACHMENT_H
|
||||
#define CHAT_ATTACHMENT_H
|
||||
#include "../media_async/attachment.h"
|
||||
|
||||
Reference in new issue
Block a user