Repository navigation
笔记看板 v0.2.1 · Note board
笔记看板 v0.2.1 —— 会话级开关、去重修复、抄录义务
v0.2.0 之后的三个改动,都来自真实会话的取证,不是推演。
新增:会话级注入开关(两个入口)
- 看板绑定栏:右侧按钮「本会话不注入」/「注入已关闭 → 恢复注入」。
/note-board off|on|status:斜杠命令,可在发第一条消息之前使用——那时会话还不存在,
看板标签页也就没有,这是唯一能更早决定的入口。- 两者写同一份状态(registry 的
off名单),跨重启记住,且压过自动发现——否则下次装配
会把你刚关掉的笔记重新绑上。 - 关闭时注入一条作废声明:正文是已提交进会话历史的消息,而历史只追加,关不掉它,只能
声明它作废。
修复:同一次变更会投递两份正文
agent loop 的顺序是 claim → assemble → … → 提交进日志,所以下一次装配时,上一轮那条既不在
pending、也还不在 surface——朴素的「在不在」判断会再投一份。按平台自己的
RuntimeContextProjection 做法记住在途消息、由提交事件销掉标记。
标记的生命周期必须是「从入队到提交」:用观察来释放,会让「提交后立刻被压缩」的正文再也
补不回来——这正是先写失败测试时暴露出来的第二种情形。测试 harness 因此改为真实 loop 顺序
(claim → assemble → commit),先复现缺陷再修。
变更:注入正文的义务从「引用条目编号」升级为「逐字抄录 + 逐项自检」
实测(12 个会话):条目仅在上下文里时,模型遇到模糊提问会去读仓库笔记而完全不引用条目;
改成要求引用条目号后,模型引用了条目号却仍给出仓库那套旧式子——标签贴在错误公式上比
沉默更危险,因为它读起来像服从。
所以正文现在直接要求:先逐字抄录相关条目的表达式与分量定义,再在其基础上推进;若你要给出的
式子与条目不逐项一致(前置系数、实部还是模方、相位、求和变量与上下界都要比),先停下来说明
冲突,而不是另给一个式子。改后同一 prompt 在三家厂商的模型上均逐字复现冻结公式。
质量
- 测试 85 条 / 6 个文件(v0.2.0 为 66 条 / 5 个文件,新增
tests/command.spec.ts) npm run typecheck通过- 产物与 v0.2.0 相比,仅多出新命令模块
lib/types/host/command.* - 发布物已去敏化:源码、测试夹具与文档中不含任何具体研究内容(测试数据为合成)