1.4 KiB
1.4 KiB
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 同时缺少 maxBytes 和 backupPath 时,升级时就地采用当前 writer 的边界配置;已有明确配置但不一致时仍保留原异常,避免掩盖真实配置冲突。
同时重新生成了 pi 使用的 jiti 缓存:
/tmp/jiti/dist-index.417a0980.mjs
验证
- NDJSON writer 升级兼容场景通过;真实配置冲突仍抛错。
- 两个 JS 文件
node --check通过。 warm-loader-cache.mjs执行成功。
修改安装目录中的文件会在重新安装/升级 pi-lens 时被覆盖;后续若升级包,应确认上游版本已包含同等修复。