孙海燕 TS0M012582 牙16;18;28;47 是残根,分配矩阵已正确落在「拔牙治疗」列 (POTENTIAL_LABEL_RULES: K03 + EXTRACTION_NAME_KEYWORDS → extraction), 卡片上的目标标签却是「充填 / 嵌体」—— 残根没法充填。 根因:focusCategory = recCats[0],而 K03 类目序固定为 [restorative, prosthodontic, surgical],同码内不区分「补得回来」(楔状缺损/ 牙体缺损)与「补不回来」(残根/残冠)。跟 K00 那次(乳牙早失被打「目标·外科」) 是同一形状的问题。 做法:把 refineCategoriesForDiagnosis 从 K00 专用改成表驱动 (LEAD_CATEGORY_RULES_BY_CODE),新增 K03_LEAD_CATEGORY_RULES。⭐ 词表直接复用 EXTRACTION_NAME_KEYWORDS —— 分配标签与召回目标同源, 不会再出现「进了拔牙列、卡片写充填」这种自相矛盾。 只挪位不增删,排除闸不受影响;K03 无 implant,年龄闸空转不会挪回去。 前端 reason-line / 目标标签共用同一函数,自动跟随。 存量 plan 靠 reason-refresh 的 unchanged 就地刷新拿到新 focusCategory, 不升版本、不丢认领。 测试:新增 22 条(含 K00 回归 + 标签⟺目标同源断言),全量 1487 条通过; type-check 17 个错为 main 既有,本次引入 0 个。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>