Skip to content

v0.7.4 — v0.7.0 的「载具 + 触发器」只生效了一半。

Choose a tag to compare

@cayan0x cayan0x released this 26 Sep 12:53
· 99 commits to main since this release

v0.7.0 的「载具 + 触发器」只生效了一半。现场追踪(12 个会话、按时间线核对)给出了逐项证据:

  • lume_change(改动台账)0 次调用、ledger 表 0 行;lume_hypothesis 同理 0 行
  • 3 份真实任务契约的 expectCount / actualCount 全是 -1(「数量先估后回填」从未发生)
  • 项目知识有内容,但全落在 unknown 键下(跨会话按项目隔离失效)
  • 三分之二的触发器从未命中;「帮我重构…」被判成问答,方法层与阶段门控因此不生效

根因不是措辞不够,而是接线:工具型载具依赖模型自觉、数量是可选结构、项目键静默回落、
执行动词表缺口。本版逐条修掉,并且每处改动都配了「驱动真实事件 → 断言存储/注入真的变了」的测试。

  • fix(P0)改动台账由插件自动记:mutate 类工具一被调用就从入参里取路径写一条
    (状态 done、标注「(自动)由 修改」);同一文件重复改更新同一条,取不到路径则不记。
    实测语义:不再依赖模型自觉——这是 ledger 第一次能真正有内容。
  • fix(P0)项目键不再回落 unknown:projectKeyOf 拿不到工作目录返回 null;
    工具 exec / 会话事件里的 session 视图常常没有 cwd,因此改为「提示词上下文记录 → 后续调用复用」
    的多来源兜底;仍然拿不到就不写跨会话表并留诊断(宁可不记,也不串味)。
  • fix(P1)契约数量必填且可见:lume_contract 的 expectCount 在 schema 里必填
    (实测:旧测试因此立刻报 missing required property,证明约束生效);契约渲染始终显示数量行,
    未估标「未估」、估了没回填标「未回填」,交付对账用同一口径。
  • fix(P1)文案点名工具:影响面清单点名 lume_change;增量验证提醒带上「台账还有 N 项未验证」
    并点名 lume_change;验证降级阶梯点名 lume_project_note(kind=deadend,把环境死路记成项目知识)。
  • fix(P1)反思可观测:session/disposed 的每条跳过路径都写一行原因
    (历史不足 / 域不可用 / 无路由 / 无输出 / 解析失败)——上一版完全看不到「为什么没有产出」。
  • fix(P2)触发器判据与阈值:增量验证改为「轮内连击 或 台账未验证项数 ≥ 阈值」
    (连击在轮边界会被清零,跨轮改多处时永不触发);阈值 6 → 4;假设台账提醒不再要求「已有假设」
    (否则这个载具永远不会被启用)。
  • fix 执行动词表补 EXECUTE_EXTRA_RE:补「重构 / 重写 / 梳理 / 删掉 / 合并 / 迁移 / 适配…」
    (不含诊断类词,避免把排查误判成执行)。这是现场「重构被判成问答」的直接修复。
  • test 新增 test/apply-carriers.test.ts(11 例,全部驱动真实事件):
    自动台账(3 例)、项目键三态(3 例)、数量必填与注入可见(2 例)、
    方法块/提醒点名工具(2 例)、反思诊断(1 例)。测试数 332 → 349。
  • chore 发布门禁新增 5 条产物断言(project-key-null / auto-change-ledger /
    contract-count-required / execute-extra-re / triggers-name-tools),共 16 条,防止这些行为再退化。

与 0.7.0 的关系:这不是加功能,而是把 0.7.0 声明过、但实际没生效的部分补齐并锁住。


安装:dsh plugin add lume-dsh-plugin(指定版本:dsh plugin add github:cayan0x/Lume#v0.7.4)
npm:https://www.npmjs.com/package/lume-dsh-plugin/v/0.7.4