Files
douyin-pc/docs/2026-09-08-10-26-pi-lens-ndjson-logger.md
T

1.4 KiB
Raw Blame History

pi-lens NDJSON logger 加载报错修复

现象

pi 加载 pi-lens 时出现:

createNdjsonLogger: incompatible options for shared path /home/rogee/.pi-lens/sessionstart.log

原因

pi-lens 4.1.3 的旧模块图创建的 sessionstart.log writer 没有 maxBytes/backupPath;升级到 4.1.4 后,新模块图复用同一个 Symbol.for 全局 writer 状态,但兼容性检查直接抛错,导致扩展加载失败。该问题发生在同一 Node 进程内重载/升级扩展时,日志文件本身不是根因。

修复

修改以下已安装文件中的 assertCompatibleWriterOptions

  • /home/rogee/.pi/agent/npm/node_modules/pi-lens/dist/index.js
  • /home/rogee/.pi/agent/npm/node_modules/pi-lens/dist/clients/ndjson-logger.js

当旧 writer 同时缺少 maxBytesbackupPath 时,升级时就地采用当前 writer 的边界配置;已有明确配置但不一致时仍保留原异常,避免掩盖真实配置冲突。

同时重新生成了 pi 使用的 jiti 缓存:

/tmp/jiti/dist-index.417a0980.mjs

验证

  • NDJSON writer 升级兼容场景通过;真实配置冲突仍抛错。
  • 两个 JS 文件 node --check 通过。
  • warm-loader-cache.mjs 执行成功。

修改安装目录中的文件会在重新安装/升级 pi-lens 时被覆盖;后续若升级包,应确认上游版本已包含同等修复。