通信、会话与投递模型

消息如何获得稳定身份、进入会话并经历可验证的投递生命周期。

confirmed4 elements

模型判断

Meshtastic、MeshCore 与 Reticulum 的线协议不同,但用户消息不能因此分裂成三套业务模型。统一发生在意图与投递事件层;协议差异停留在 backend 边界。

不变量

  1. 重复 RX/ACK 不创建第二条业务消息。
  2. 终态只能由可验证事件驱动,UI 不猜测。
  3. 重试不改变原消息业务身份。
  4. 协议 namespace 参与持久化与去重键。

领域元素

ChatMessage / Conversation — 用户可见的消息与上下文。

ChatMessageLedger — 投递事实唯一提交入口。

ReceivePacketService — 接收验证与业务提交边界。

源码证据

modules/core_chat/include/chat/delivery/chat_message_ledger.h
modules/core_chat/src/delivery/chat_message_ledger.cpp
modules/core_mesh/include/mesh/usecase/receive_packet_service.h

下钻:消息投递生命周期