Skip to content

v0.8.1 hotfix:双语 description YAML 兼容修复 + 守门 YAML 门加固

Latest

Choose a tag to compare

@fishzjp fishzjp released this 07 Sep 12:58
· 4 commits to main since this release

页首数字口径见 README 实测效果

本版要点(hotfix)

  • 修复 0.8.0 缺陷:0.8.0 的 8 个双语 skill description 以 YAML 裸值书写,值内含 ASCII ": " 序列——我方手写解析器全部放行,但宿主侧标准 YAML 解析器(js-yaml / yaml npm 包 / PyYAML)实测全部拒绝。装了 0.8.0 的宿主可能无法加载这批 skill,skills.sh 索引面同样受影响。本版按 YAML 规范将全部 12 个 frontmatter description 以双引号包裹并转义,解析值与 0.8.0 逐字符等价(零内容变化)。建议 0.8.0 用户立即升级或改用 ./install.sh
  • 同族"守门骗绿"根除:本次事故与既往两例(YAML 门降级跳过、链接检查盲区)同族——校验器此前用手写行解析 frontmatter,与标准解析器口径分裂。现 validate_skills 增加 strict YAML 门(标准解析 + 手写解析值比对不一致即 FAIL;缺 PyYAML 时整门 FAIL 不放行),CI 安装依赖上移至首个校验之前,并新增 4 个正反例回归测试钉住。
  • dsh 插件同步加固:parseSkill 剥引号后反转义转义序列,避免字面反斜杠进入宿主上下文。
  • examples 溯源表去内部链路指纹(披露最小化,数字与选样口径不变)。

门判定披露

  • 修复前后解析值逐字符等价(8 个双语单元对拍 ✓),触发面无内容变化;X26 路由屏复跑 33/35,经归因为本地采样方差(仪器已改显式 temperature=0,后续可复现),其中 R28 样本定性为边界样本、其根因(qa-memory 语义竞争)已在 0.8.0 披露并持续回炉。
  • 验证:双校验器 / 全仓 pytest 154 / 安装冒烟 / npm pack 43 files 全绿。

Summary (English)

Hotfix for 0.8.0: the bilingual skill descriptions used a raw YAML plain-scalar form containing ASCII ": " sequences — our hand-rolled parsers accepted them, but standard YAML parsers used by hosts (js-yaml / yaml npm / PyYAML) reject them, so these skills could fail to load on 0.8.0. All 12 frontmatter descriptions are now properly double-quoted (parsed values byte-identical to 0.8.0). The validator gained a strict YAML gate (fail-loud without PyYAML, plus cross-check against the hand parser) with 4 regression tests; the dsh plugin unescapes quoted scalars. Upgrade recommended.