Repository navigation
fix(core): #200 技能失败降信 —— 50败10胜 conf 0.95→0.18(新增失败计数 KV) - #1101
qingfengyu153781-star wants to merge 2 commits into
Conversation
沙箱 def-impl-4c 里该修复早已完成,但一直没提交(git push 通道不通)。 本次以 main 598eed2 完整树为底重建,只取 FuRongJun-1999#200 的文件: · tests/test_issue200_lose_then_win_guard.py · lingshu/core/core.py 全量逐文件自证:与 main 的差异集合恰好等于上述文件。
已修复并合并(维护侧实测)确认属实——本端在最新 main(合并前 修法(#1101 方案原样): 合并后 main( 致谢与署名:修法与守卫的净增量来自 @qingfengyu153781-star 的 PR #1101(原样保留);#1101 未直接合并的原因是其分支基线 598eed2 先于维护侧 #1138/#1143/#1146/#1153/#1154 系(直接合并会回退已合工作,净 diff -2659 行),已按净增量摘取重放。 感谢报告与修复——「Beta 平滑成功率」的选择(而非线性降信)与「engine_meta KV 不动表结构」的克制都到位。 |
问题
record_action_sequence用 LIKE 子串认技能,且失败从不降信。issue #200 四条指控里 ①②④ 在基线已修,③ 仍复现:
conf仍为 0.95,而 issue 判据要求 < 0.5。根因
技能命中只增信、不降信:成功/失败被混在同一个"出现次数"里,
失败路径没有任何扣除项,所以反复失败也压不下置信度。
改动(3 个文件,差异恰好)
lingshu/core/core.py_SKILL_OK_KEY/_SKILL_FAIL_KEY两个engine_meta前缀 +_bump_skill_counter();成功与失败分别计数,失败参与降信。不动SCHEMA_VERSION、不碰 skills 表结构(走 KV 表)tests/test_issue200_lose_then_win_guard.pydocs/intake/body-export-v0.1/_export_manifest.jsoncore.py指纹验证(本地实跑,非推断)
判别力:修复版
4 passed,main 原版2 failed, 2 passed⇒ 守卫有判别力。相关回归:引用被改模块
core的既有测试 290 个:全量逐文件自证:与 main 的差异集合恰好等于本 issue 的 3 个文件。
锚定:上游 main
598eed26(验证树底座与本提交的父提交同源)。说明
def-impl-4c,按当前 main 的真实 diff 重放(非整文件覆盖)。