docs(dm): reconcile architecture and PM delivery requirements

This commit is contained in:
evgeny committed 2026-10-27 01:06:45 +01:00
1 parent ad577318d9
commit a00db6229f
3 files changed
+94 -18

No files matched your search

+6 -6
View File
@@ -117,8 +117,8 @@ int dm_send(struct UTUN_INSTANCE* inst, const char* conv_id, const char* content
struct dm_delete_req {
struct UTUN_INSTANCE* inst; /* Заимствованное ядро до завершения запроса. */
char conv_id[64]; /* Десятичный ID беседы с NUL. */
uint64_t generation; /* Ненулевое ожидаемое поколение. */
uint64_t request_id; /* Корреляция результата с запросом UI. */
uint64_t generation, /* Ненулевое ожидаемое поколение. */
request_id; /* Корреляция результата с запросом UI. */
};
void dm_delete_trampoline(void* arg);
/* После commit удаления отменить ожидающий invite этой беседы; квитанции/другие беседы не меняет. */
@@ -174,10 +174,10 @@ enum dm_invite_result {
};
struct dm_invite_req {
struct UTUN_INSTANCE* inst; /* Заимствованное ядро до итогового callback. */
uint64_t request_id; /* Ненулевой ID; cancel использует тот же ID. */
uint64_t peer_node_id; /* Фиксированный получатель, не локальный узел. */
uint64_t channel_id; /* Выбранная активная CHAT-группа отправителя. */
uint64_t generation; /* Заполняет uasync до регистрации; проверяет callback. */
uint64_t request_id, /* Ненулевой ID; cancel использует тот же ID. */
peer_node_id, /* Фиксированный получатель, не локальный узел. */
channel_id, /* Выбранная активная CHAT-группа отправителя. */
generation; /* Заполняет uasync до регистрации; проверяет callback. */
char source_ch_id[64]; /* общая группа для новой PM; из шапки PM может быть пустой */
char peer_name[128]; /* UTF-8 имя для новой беседы с NUL. */
int cancel; /* 0=создать, 1=отменить ожидающий request_id. */