Repository navigation
Releases: JiewiW/dsh-cot-anchor
Release list
v0.4.2
v0.4.1
v0.4.0
v0.3.3
dsh-cot-anchor v0.3.2
文本泄漏循环修复:①行动提议型 churn 拦截 ②n-gram 语义指纹循环检测 ④调查前缀收紧
dsh-cot-anchor v0.3.1
v0.3.1
设置页 UI 改造:每个设置项名称下方显示源码内部变量名(源码键:xxx),并将大量参数折叠进「高级参数(N 项)」区,默认收起。
- 总开关与关键判定项保留前台(enableSoftCut / enableRepeat / minReasoningChars 等 11 项)
- 其余 50 项参数按功能分组折叠(数字流 / 重复循环 / 语义空转 / 转折句 / LLM 提炼 / CoT 采集 / CoT 分析 / CoT 增补)
- 折叠区展开/收起交互正常
- 此版本已在隔离 profile 独立端口验证通过,无插件加载异常
v0.3.0
v0.3.0 — 锚点去重接线 + 转折判定三层加固(误抓推理草稿治理)
背景
线上实例出现一类异常注入:模型推理草稿里引用的样句(如审计报告正文中的「现在写正式报告。」)被转折句检测器当成阶段边界宣告,整段工作草稿被软切、草稿里的「因此……」句被摘成锚点注入;同一锚点随后反复注入同一会话。定位到四个结构性缺陷:锚点去重逻辑从未接线(定义了哈希表与判定函数但无调用点)、间距守卫在结论开启词缺失时 fail-open、分句正则无引号感知、转折词表过宽(裸「现在」即命中)且已注入锚点文本会参与下一轮判定形成自反馈环。
变更
- 锚点去重接线(P0):转折判定分支在切断前按会话查询已注入锚点内容哈希,命中即放弃本次切断并发射去重事件
cot-anchor/anchor-dedup-skipped(此前该事件与查询/记录函数均已定义但零调用点)。点文本同步记入按会话隔离的剥离表。 - 间距守卫 fail-closed(P0):「结论-转折间距」守卫在间距不可计算(结论开启词缺失或超出尾部窗口)时由放行改为拒绝软切。
- 切句引号感知(P1):
splitSentences先遮蔽引号对内句读(私用区占位符)再切分、切后还原,引号内的句号不再产生以「因此/现在」开头的伪结论句;句文本本身不变。 - 转折词表收紧(P1):中文转折触发词后必须跟随执行动词(写/改/删/生成/落地/替换/调用/跑/更新/修复/输出/创建/执行/开始等约 80 个,不含讨论/回顾类);英文对应
(now|next|then) … (i will|let me|…) <verb>形态;过渡桥接窗收窄。状态陈述句("Now I have the full chain.")不再命中。 - 已注入锚点剥离(P1):转折判定的四个检测调用(转折扫描、结论开启词、间距守卫、结论提取)改用剥离副本——先把本会话已注入锚点文本从检测文本中移除,再跑判定;逐字节重复检测与打转检测仍读原文,不受影响。
验证
node --check lib/index.js 通过;仓库既有测试逐个运行退出码 0;新增专项验证(E2E 场景 6/6:长锚点首切通过 / 同会话回声放弃切断 / 同回声新会话照切 / 短锚点首切通过 / 同文再现触发去重事件 / 同短锚点新会话照切;间距守卫 fail-closed 1/1;引号遮蔽 5/5;转折词表正误例 18/18)。
兼容性
对外注入接口与既有设置项不变,无新增设置项;softCutGapThreshold 语义在结论开启词缺失时收紧。锚点重复时行为由「切断并重复注入」变为「放弃切断并记录事件」,对使用者表现为更少的误切断与更少的重复锚点。
安装
dsh plugin --profile <你的profile> add github:JiewiW/dsh-cot-anchor#v0.3.0v0.2.4
v0.2.4 — 软切误判治理:结论-转折间距守卫 + cutClass 分类预算接线
变更
- 「结论-转折最大间距」守卫(新增设置
softCutGapThreshold,默认 80):转折句判定链新增一级守卫——在尾部扫描窗口内取最后一个 Tier-1 结论开启词与最后一个转折宣告的字符距离,超过阈值即判定为「子阶段小结论 + 后续分析 + 转折宣告」的经典误判形态,拒绝软切。此前"所以 X 是根因"这类中途小结论会让"所以"与"接下来"各自命中检测器、软切落在整个子阶段中间,白白切断一段正常分析。 - cutClass 分类预算接线补全:
apply()内全部切断返回点补齐cutClass字段(此前只返回budgetClass,内核softCutBudgetKey只消费cutClass,导致所有命中恒按启发式归类,字节级确证的confirmed-repeat也被 6 次/回合的启发式额度耗尽抑制——实测出现过单回合 328 次budget-exhausted)。分类:外部干预分支heuristic、伪工具文本分支pseudoTool、repeat/numberRunaway 分支confirmed-repeat、churn/transition 分支heuristic。 - README 设置表同步:新增「结论-转折最大间距」设置行与说明。
验证
node --check lib/index.js 通过;test-budget-class.mjs 五个切断返回点各补 cutClass 断言。已知环境前置:test-kernel-budget.mjs 等 5 个测试期望内核软切补丁的新版(含 createSoftCutBudget/SOFT_CUT_LIMITS),本机内核当前仍是旧版补丁,该组测试在 v0.2.3 时代基线即失败,与本次改动无关。
兼容性
对外注入接口与既有设置项不变;新增设置 softCutGapThreshold(默认 80,范围 0–400)仅在开启转折句判定时生效。
安装
dsh plugin --profile <你的profile> add github:JiewiW/dsh-cot-anchor#v0.2.4v0.2.3 设置面板文案人类化
这一版做了什么
把「思考过程锚点」插件的设置面板与能力提示,从内部代号与钩子名改成普通中文。
设置面板
- 两个原本需要手打内部取值的选项改为下拉选择,写明每种模式的差异:
- 思考与正文如何分开:按字数阈值自动分开(默认)/ 不分开,整段当作正文处理(内核支持后生效)。
- 锚点插入时机:思考强度高时不插(默认,推荐)/ 每次都插 / 完全不插。
- 说明文字中不再出现内部事件名与工单编号,改为直白的做法描述。
- 数值项的范围提示只在有真实上下限时显示,改为「可选范围 X ~ Y」。
能力提示
- 「生成中途截停」能力的三档提示改为:可用 / 当前内核不具备 / 暂时无法确认,正文改为「叫停模型」「判断该不该叫停」等日常说法。
兼容性
- 只改显示层与控件形态。内部取值、配置文件格式与检测逻辑完全不变,非法取值仍按原规则回退默认。
升级方式:覆盖插件目录后重启 DSH 即可。
v0.2.2
v0.2.2 — 合并两条演进线(空转治理整改 + 命令执行纪律快照化)
变更
- 命令执行纪律快照化:取消
tools/post-execute随锚点单独注入的纪律块,改为经ctx.inject(['systemPrompt'])注册为运行时上下文快照固定段(dsh:cot-anchor-exec-discipline, order=20000),位于记忆规则段之后、naonao 段之前。 - 保留 FIX-09 纪律开关并门控快照段:
enableExecDisciplineBlock(默认开)开时全文、关时空文本(内核装配省略该段)。 - 空转治理整改(FIX-02/03/04/08/09):打转识别、伪工具治理、数字流检测、软切移植工具。
验证:node --check 通过;31 个测试文件全部 exit 0。
安装:
dsh plugin add github:JiewiW/dsh-cot-anchor#v0.2.2