v0.7.4 — v0.7.0 的「载具 + 触发器」只生效了一半。
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