Skip to content

v0.1.2

Latest

Choose a tag to compare

@jkrandom-sudo jkrandom-sudo released this 14 Aug 10:16
c5b8376

变更 / Changes

本次为三 agent 代码审查(核心逻辑 / 宿主集成与安全 / 测试质量,共 20 项发现)的修复版本。无 P0;含 1 个 P1 产品 bug、全部值得修的 P2 与关键 P3。

Fixes

  • watcher:基线误报(P1) — 基线轮询失败不再把历史红色运行误报为 NEW CI FAILURE;基线只由成功轮询建立,建立前抑制检测
  • watcher:超时与取消时机 — sleep 以剩余存活时长为上限、醒后复查 deadline;poll 在途时的 cancel 优先于检测结果
  • runtime:jobs 服务懒解析(与 shell/storageDomain 同一挂载时序理由);单个 job 日志拉取失败不再中止整个诊断(以 logError 呈现);maxLines 硬上限 2000
  • 安全:日志摘录围栏加固 — 四反引号围栏 + 折叠内容中 4+ 反引号连写,关闭 prompt-injection 破栏通道;ghBin 统一 shell 引号
  • config:resolveConfig 拒绝 NaN/Infinity/越界值(schemastery number 校验放行它们,NaN 间隔会把 watch 退化成 1ms 热轮询)
  • signatures:保留并解包 ##[error] 规范失败行(此前被噪声过滤丢弃);sha256 长度 hex 纳入掩码,跨运行签名 id 稳定
  • ledger:record() 串行化 — 并发诊断不再丢 seenCount 增量

Tests

  • 85 → 102createShellRunner 直接单测(宿主形状适配层,此前零覆盖);经真实 apply() 接线的 ci_diagnose 端到端测试(钉住 4MB 捕获预算与 ghBin 引号);watcher 三条回归(基线失败/deadline cap/poll 在途取消);账本并发测试;ci_watch 测试清理空转轮询循环
  • verify-web-profile.mjs 账本持久化检查新增 mtime 断言,杜绝陈旧文件虚空通过

验证结论 / Verification

  • pnpm format:check / typecheck / build ✅;单元测试 102/102
  • 真实环境:本机 web profile 进程内 boot() 19/19 ✅(含新增 mtime 防空洞检查;cli/cli run #31782742089 实时诊断、真实 watch job 基线与 kill、账本本运行重写落盘)

Full Changelog: v0.1.1...v0.1.2