代 #6350 回补审计的 dev 提交(它当时被 GitHub 限流,无法自行立单;正文为其原文,由 domain:spec-tooling 座位转录并补做查重)。未认领、未定级。
⚠️ 这是可复现的前向门禁缺陷,不是观察类 —— 它今天就能把一个作者卡死。
缺陷
findMigrationPrescription 会匹配**「指出迁移说明在哪里」的散文**,而不是迁移说明本身。
存量里的活体标本:.changeset/v17-rc-anchor.md(v17 发版锚点),其唯一的迁移相关文本是:
Migration: each breaking change's own changeset carries its FROM → TO guide (grep the CHANGELOG for !: entries)
这是一个指路牌,不是改写处方。该 changeset 根本没有退役任何面,它存在的唯一目的是把版本号顶上去。审计据此把它报成 residue 候选。
为什么是活缺陷,而不只是审计噪音
对这样一条 changeset,作者在门禁面前四条路全堵死:
| 处置 |
为何不可用 |
not-required (no-migration-prescription) |
被门禁的矛盾检查拒绝(脚本约 :1226,判词「contradicts the changeset's own body」)—— 正文里明明有 FROM → TO 字样 |
registered |
没有任何面被退役,无可登记之物 |
unpublished |
@objectstack/spec 是已发布包,不成立 |
already-registered |
指不出任何真实条目 id |
⇒ 今后任何一条「正文引用了别处 FROM → TO 指南」的 changeset,都会让它所在的 PR 变成不可合并,且没有任何可选的处置。
同族,方向相反
探测器此前已修过三次,全部是漏报方向(把真处方读成非处方):
本条是它们的镜像:把一个对处方的引用读成了处方。同一个探测器,反方向的误判。
修法方向(建议,不主张)
要求被框定的区域含有具体的改写对,并排除宾语是「指南本身」的句子。
查重(由座位补做,dev 当时无法执行)
findMigrationPrescription / prescription detector / no-migration-prescription 三个关键词检索 open issue:除本座位贴 #6018 外零命中,无同题单。按 #4949 纪律执行。
出处
#6350 的存量回补审计(会话 session_01AZgRyPVwi1jLb1mNNuUQ9o 派发)。审计本身的实测数据与 needs_decision 记录在 #6350 线程。
代 #6350 回补审计的 dev 提交(它当时被 GitHub 限流,无法自行立单;正文为其原文,由
domain:spec-tooling座位转录并补做查重)。未认领、未定级。缺陷
findMigrationPrescription会匹配**「指出迁移说明在哪里」的散文**,而不是迁移说明本身。存量里的活体标本:
.changeset/v17-rc-anchor.md(v17 发版锚点),其唯一的迁移相关文本是:这是一个指路牌,不是改写处方。该 changeset 根本没有退役任何面,它存在的唯一目的是把版本号顶上去。审计据此把它报成 residue 候选。
为什么是活缺陷,而不只是审计噪音
对这样一条 changeset,作者在门禁面前四条路全堵死:
not-required (no-migration-prescription):1226,判词「contradicts the changeset's own body」)—— 正文里明明有FROM → TO字样registeredunpublished@objectstack/spec是已发布包,不成立already-registered⇒ 今后任何一条「正文引用了别处 FROM → TO 指南」的 changeset,都会让它所在的 PR 变成不可合并,且没有任何可选的处置。
同族,方向相反
探测器此前已修过三次,全部是漏报方向(把真处方读成非处方):
no-migration-prescription矛盾检查匹配的是占位符FROM/TO,不是真实处方 —— 写得越好的处方越照不到 #6419 / PR fix(tooling): the ADR-0087 prescription detector reads real prescriptions, not the FROM/TO placeholder (#6419) #6432 —— 匹配到字面FROM/TO占位符not-required (no-migration-prescription)可被合法豁免绕过,存量已见 4 条同形 #6497 / PR fix(ci): ADR-0087 迁移说明探测器读得懂「无箭头的改写表」(#6497) #6558 —— 要求箭头本条是它们的镜像:把一个对处方的引用读成了处方。同一个探测器,反方向的误判。
修法方向(建议,不主张)
要求被框定的区域含有具体的改写对,并排除宾语是「指南本身」的句子。
查重(由座位补做,dev 当时无法执行)
findMigrationPrescription/prescription detector/no-migration-prescription三个关键词检索 open issue:除本座位贴 #6018 外零命中,无同题单。按 #4949 纪律执行。出处
#6350 的存量回补审计(会话
session_01AZgRyPVwi1jLb1mNNuUQ9o派发)。审计本身的实测数据与 needs_decision 记录在 #6350 线程。