fix: 给「寻路状态」进度日志加节流(1.11.1)
mineflayer-pathfinder 每用满一个 tick 的计算预算(tickTimeout,默认 40ms)就发一次 path_update,而原来的处理函数每次都记一条 —— 实测 4 分钟写了 3893 条(约 16 条/秒)。 既淹没了真正有用的日志(按 120 字节/行算一天能写上百 MB,而本服磁盘只剩 2.4G), 也让「寻路到底卡在哪」更难看清。 现在只在三种情况下记: 1. 状态发生变化(partial → success / noPath / timeout)—— 最要紧的信号; 2. 距上一条超过 2 秒; 3. 已探索节点数比上一条多出 1000 以上 —— 长规划里仍能看出推进速度, 不丢定位卡死所需的信息。 测试 480 → 481。
这个提交包含在:
+20
@@ -2,6 +2,26 @@
|
||||
|
||||
本项目遵循 [约定式提交](https://www.conventionalcommits.org/zh-hans/) 与 [语义化版本](https://semver.org/lang/zh-CN/)。
|
||||
|
||||
## [1.11.1] - 2026-10-01
|
||||
|
||||
给「寻路状态」进度日志加节流 —— 它一度是日志体积的主要来源。
|
||||
|
||||
### 修复
|
||||
|
||||
- **「寻路状态」进度日志刷屏**:mineflayer-pathfinder 每用满一个 tick 的计算预算
|
||||
(`tickTimeout`,默认 40ms)就发一次 `path_update`,而原来的处理函数**每次都记一条**。
|
||||
实测 4 分钟写了 **3893 条**(约 16 条/秒)—— 既淹没了真正有用的日志
|
||||
(按 120 字节/行算一天能写上百 MB,而本服磁盘只剩 2.4G),
|
||||
也让「寻路到底卡在哪」更难看清。
|
||||
现在只在三种情况下记:**状态发生变化**(partial → success / noPath / timeout,
|
||||
最要紧的信号)、**距上一条超过 2 秒**、**已探索节点数比上一条多出 1000 以上**
|
||||
(长规划里仍能看出推进速度,不丢定位卡死所需的信息)。
|
||||
|
||||
### 测试
|
||||
|
||||
新增 1 个用例(480 → 481):300 次 `partial` 被节流到十几条以内且不为零,
|
||||
状态变化时立刻记录。
|
||||
|
||||
## [1.11.0] - 2026-10-01
|
||||
|
||||
**修掉「机器人原地走之字形、净位移恒为 0」的朝向 bug** —— 这是扩地跑不完
|
||||
|
||||
在新工单中引用
屏蔽一个用户