AskaEth
28967d3435
refactor(channelbridge): 冷避例外②收窄为「真故障/求救」严格子集
塔 2026-10-15 改裁定:例外给了命中词「穿透 30 分钟冷避」的权力,噪声不再只是多回
一句话,而是直接削弱冷避本身 —— 而实测全表 14 条在 598 条真实 user 消息里只命中
1 次,且那次是假阳性(QQ 机器人卡片文案里的 `bug`,而该群本来就在放这种卡片)。
- 新增 coldShoulderPierceKeywords(具名常量,注释写明为什么比全表严、依据即那条
卡片假阳性)与 hasColdShoulderPierceKeyword:保留 报错/出错/故障/紧急/救命/求助/
帮帮我/urgent,剔出 ASCII `bug`/`error`/`help`(会命中结构化载荷/URL/卡片)与
情绪歧义的 `崩溃`/`坏了`/`坏掉`。
- 例外② 改用该子集;hasHighValueKeyword(基线,ruleLightJudge 用)**一字未改**,
两张表的分工写进注释,并有断言钉住「基线不许被这次收窄波及」。
- 例外矩阵新增三行:机器人卡片含 `bug` ⇒ 不穿透;英文 error/help ⇒ 不穿透;
情绪「我崩溃了」⇒ 不穿透(三行对上一提交均为红)。第 1/2 行继续用保留词 报错,
第 3/4/5/6 行原样保留;另加子集单元护栏(正例六条 / 反例六条)。
- 按项目「文件 ≤500 行」把冷避规则簇拆到 engage_coldshoulder.go(engage.go 528→376)。
红前绿证据:把例外判据临时还原成上一提交的 hasHighValueKeyword 全表(与该提交逐字
等价)⇒ 恰好上述三行变红、其余行与护栏保持绿;已还原(无残留)。
已知代价如实登记在案:用英文写的真求救不再穿透 —— 塔裁定以「宁可少穿透」为准;
全表(highValueKeywords)本身的收窄由塔另排切片,不在本片。
验收:go build ./... + go vet ./... + go test -count=1 ./... 全绿(73 包);
channelbridge / channel / cmd/cyrene 单独跑绿;darwin/arm64 交叉编译通过。
2026-10-15 19:04:48 +08:00
..
2026-10-04 19:55:18 +08:00
2026-09-06 04:26:02 +08:00
2026-10-13 19:21:49 +08:00
2026-10-13 20:38:12 +08:00
2026-10-13 23:09:19 +08:00
2026-10-04 10:54:07 +08:00
2026-10-06 15:59:16 +08:00
2026-09-08 21:36:03 +08:00
2026-10-05 13:11:04 +08:00
2026-10-03 15:22:03 +08:00
2026-10-04 12:49:40 +08:00
2026-09-06 04:17:20 +08:00
2026-10-13 23:21:25 +08:00
2026-10-15 19:04:48 +08:00
2026-10-06 18:46:27 +08:00
2026-10-04 12:07:51 +08:00
2026-09-06 08:10:35 +08:00
2026-09-05 23:09:26 +08:00