Skip to content

v0.2.5 — 交接时不再吞掉刚发出的消息

Choose a tag to compare

@easerlee easerlee released this 22 Oct 03:41
· 3 commits to main since this release

修什么

交接后停老会话那一轮时,不再连带停掉「刚起的一轮」。

原先的逻辑是无条件停:老会话正在跑的那一轮会被打断。如果人刚发出消息、交接恰好在同一秒触发,那一轮会在发出后几毫秒内被停掉 —— 消息留在日志里,但没人回答。2026-10-17 真实发生过一次:消息入队 0.2 秒后触发交接,1 毫秒后这一轮被停。

现在的行为

  • 新增 liveGraceMs(默认 60000):老会话当前这一轮起不到这么久就跳过停止,让这一轮答完
  • 拖久了的轮次照停 —— 防「两个会话同时改同一批文件」的初衷不变
  • 交接结果里多了 stopSkipped(live-turn / disabled)和 turnAgeMs,事后能看出为什么没停

自检加了两例:刚起的一轮不停(stops 为空)、拖久了的一轮照停。