> 兑现 #184 回复中的承诺:单工具防漂移护栏(memory_get 复用共享 schema + 回归断言)已落地(#186),这里补系统性的一层。 ## 背景 #184 的根因是 memory_get 的 output schema 内联副本与 toApiList 实际产出的 DTO 漂移(v0.8.1 给 DTO 加了 scope 来源三键,内联副本没跟上,`additionalProperties: false` 让任何被标注过的行都过不了 in-process 校验)。#186 修了 memory_get 这一处,但同样的漂移可以在任何工具身上重演——每加一个 DTO 字段,都要人肉记得同步 N 处 schema。 ## 期望 一个测试级(或 CI 级)的系统性断言:**对每个 defineTool 的 output schema,取若干真实 DTO 样本(toApiList / 各自构造路径的产出),断言其键集 ⊆ schema properties、类型一致、且 additionalProperties 约束下必过校验**。 - 优先覆盖共享 toApiList 的三件套(memory_get / memory_search / memory_list)+ 其余有 output schema 的工具; - 新增 DTO 字段时若漏改 schema,测试直接红并列出缺失键名; - 可选加强:宿主校验器(assertSupportedJsonSchema / validateJsonSchemaValue)已在测试依赖中,直接复用可保证与生产同判据。 ## 非目标 不约束「schema 必须与 DTO 逐键相等」——output schema 允许是有意的子集,方向只验 DTO ⊆ schema。
Activity
test(tools): 全工具矩阵的 DTO 键集 ⊆ output schema 断言(issue #195) (#240)
feat(organize): expose the organizer to agents as memory_organize (sl…