Files
MemRelay/projects/25464650-ed5d-440e-b362-190f2852d451/Checkpoint 2026-09-30 06-05-17 UTC [71e209885b].md
T
memrelay ae532aed3a create: Checkpoint 2026-09-30 06:05:17 UTC [71e209885b]
MemRelay-Operation: checkpoint-save:nixmsg-ckpt-review-issues-20260930-a1
MemRelay-Resource: 54a62a28-b34b-47bf-bde5-cadb6b0a012b
2026-09-30 14:05:20 +08:00

5.0 KiB
Raw Blame History

title, type, permalink, stable_id, scope, memory_type, project_id, usage_profile_id, status, revision, request_id, created_at, updated_at, tags
title type permalink stable_id scope memory_type project_id usage_profile_id status revision request_id created_at updated_at tags
Checkpoint 2026-09-30 06:05:17 UTC [71e209885b] checkpoint main/projects/25464650-ed5d-440e-b362-190f2852d451/checkpoint-2026-09-30-06-05-17-utc-71e209885b 54a62a28-b34b-47bf-bde5-cadb6b0a012b project checkpoint 25464650-ed5d-440e-b362-190f2852d451 0c9feb46-d06e-43cd-9ef0-c5813c84a998 active 1 nixmsg-ckpt-review-issues-20260930-a1 2026-09-30T06:05:17.526035+00:00 2026-09-30T06:05:17.526035+00:00
review-issues-ready
review-2026-09-30
handoff

检查点:全量复审完成,58 个工作包已提交 Gitea issue,等负责人审核

完成内容

  • 基线 main 4059a15,审查全程只读,没有改仓库代码、没有推送任何分支。
  • 5 个区并行审查(A 管理后台与网页、M 消息核心、I 身份群在线、P 传输平台部署、S SDK,约 114 条原始发现),总审查人另做 mochi 配额死锁、慢消费者、#3 对照三组实证,合并成 58 个互不冲突的工作包。
  • Gitea:总览 #7(清单表、并行分工与合并顺序、跨线依赖、共享文件归属、统一取舍、故意设计清单、待核实);新建 #8–#64;T-01 复用并改写 #3(原描述用 details 保留在正文末尾,另加评论 id 203)。依赖行用半角「 (#n)」,已验证可点击。
  • 标签:P0-critical / P1-high / P2-medium / P3-low;lane/broker、listener、store、message、identity、admin、web、sdk、test-docs;review-2026-09-30;tracking。
  • 统计:critical 7(B-01 B-02 B-05 K-01 K-02 K-03 K-04),high 13(B-03 B-09 B-10 B-11 L-01..L-04 C-01..C-04 U-01),medium 29,low 9。
  • 清理:诊断工作树 diag3 与本地分支 diag/issue3-scratch 已删;已合入 main 的 fix1/2/4/5/6、merge-fixes 本地工作树和本地分支已删(远端 feat/fix-* 分支保留);E:\code\NixMsg-wt\fix3 按负责人要求保留(不合入)。E:\code\NixMsg-wt 下还有 a、m、q2、wire 等未登记到 git 的旧目录,来自更早的开发阶段,未动。

编号→issue

总览=#7;T-01=#3;B-01..B-12=#8..#19;L-01..L-07=#20..#26;D-01..D-05=#27..#31;C-01..C-07=#32..#38;U-01..U-05=#39..#43;H-01..H-07=#44..#50;W-01..W-06=#51..#56;K-00..K-05=#57..#62;T-02=#63;T-03=#64。

建议合并顺序(待审核)

  • 测试与文档:T-01 最先合入 → T-03;T-02 随修复推进,最后定稿。
  • broker 下行:B-01 → B-02 → B-07 → B-03 → B-06 → B-04 → B-08。
  • broker 生命周期:B-05 → B-09 → B-10 → B-11 → B-12。
  • 监听:L-02 → L-01 → L-04 → L-05 → L-06 → L-07 → L-03。
  • 存储:D-01 → D-02 → D-04 → D-05 → D-03。
  • 消息:C-04 → C-05 → C-06 → C-01 → C-02 → C-03 → C-07。
  • 身份:U-01 → U-03 → U-04 → U-05 → U-02。
  • 管理后端:H-01 → H-03 → H-04 → H-05 → H-06 → H-07 → H-02。
  • 网页:U-01 界面部分 → W-01 → W-04 → W-05 → W-02 → W-03 → W-06。
  • SDK:K-00 → K-01..K-04 并行 → K-05。
  • 跨线:B-02→C-01;B-08、D-02、C-01→L-03;D-02→C-03;C-01、C-02→D-03;C-04→U-02、C-07;B-04→H-07;B-05→B-09→B-10;K-00→K-01..K-04;B-03 与 C-01 以 PublishDown 签名不变为契约并行。

统一取舍(写在总览 #7,尚未经负责人确认,确认前不当作决定)

大帧名额按 PacketID 在 PUBACK/丢弃/断线归还、只在 broker 保留一份;broker 每连接异步下发 + 消息线每连接推送 worker;握手前推送主修 C-01、B-06 兜底;限速由 message.AllowRequest 在 uplink 分发前统一检查;presence 以 broker 已握手状态为准;fatal 后断开只留一条路径(broker 提供写出后断开原语,去掉固定 sleep);作废投递终态统一由 RejectPendingTx/TryFinalizeTx 处理;对话密码锁键 {发送方, 对方};直连 TLS 包装连接实现 ConnectionState();mochi 在 OnConnect 把发送配额置 0、不 fork;#3 按测试客户端缺陷修,不合入 fix3。

下一步

  • 等负责人审核 issue(可能调整范围、方案、优先级);审核通过后由 Grok 团队按总览 #7 的分工并行修复。审核前不改代码。
  • 负责人需确认的两点(总览「待核实」末尾):消息详情返回的 meta 是否算正文;记录保留 0 天时迟到的 ack 拿不到撤回结果,是否接受并记入 DEVIATIONS。

给下个会话

  • 审核意见如果改了某个方案,要同步检查总览 #7 的「共享文件归属」和「跨线依赖」,避免两条线改同一函数。改 issue 正文时,引用写成半角「 (#n)」才会链接。
  • 不要删除 E:\code\NixMsg-wt\fix3(负责人留给工程师)。
  • 经验已存:项目 experience「WebSocket 上的 MQTT:测试客户端拆包/写锁导致误判死锁…」;全局 experience「Windows PowerShell 5.1 脚本与中文」「Gitea 批量创建 issue 与 #n 引用链接」。
  • 生成 issue 的脚本和草稿在 %TEMP%\nixmsg-review,提交完成后已删除;以后以 Gitea 上的 issue 正文为准。