Skip to content

SKILL.md compatibility 行无任何门禁对账 —— 声明的 spec 版本可与仓库实际版本无限期漂移(#5245 方案③拆出) #5331

Description

@os-zhuang

从 #5245 的分诊裁定拆出(方案③,门禁根治半边;#5245 本体只做方案①的十行文案止血)。按 PD#10 归档,未指派。

缺陷

skills/*/SKILL.md frontmatter 的 compatibility: 行没有任何门校验:

  • check:skill-docs / check:skill-refs 只管生成物同步;
  • check:skill-examples 只 typecheck os:check 代码块;
  • 没有任何检查把该行声明的 @objectstack/spec 大版本与 packages/spec/package.json 的实际版本对账。

实证即 #5245:仓库已在 17.0.0-rc.2(7 个 App 键、DriverCapabilities 31 位等已成墓碑),十份 SKILL.md 里九份仍写 Requires @objectstack/spec 16.x —— 教 17 能力、自称 16 兼容,静默漂移了整个大版本周期。

建议形态

新门禁(落点 scripts/ 或 packages/lint,C 包 #5163 门禁组文件面):

  1. 解析每份 SKILL.md frontmatter 的 compatibility: 行,抽出 @objectstack/spec <major>.x 声明(措辞契约以 十份 SKILL.md 的 compatibility 仍写「Requires @objectstack/spec 16.x」—— 而它们教的已经是 17 的能力 #5245 方案①落地后的格式为准;skills/objectstack-pm-dispatch/SKILL.md 的折叠块格式需单独处理或豁免并写明理由);
  2. 与 packages/spec/package.json 的当前 major 对账,不一致即红,报错信息带「哪份文件、声明值、实际值、怎么改」;
  3. 接进 ci.yml 现有 docs/lint 门禁族 —— ⛔ 引以 check:react-declaration-parity 是唯一没接进任何 workflow 的源码审计门禁,且无 MANIFEST 时静默 skip 退出 0 —— 它现在永远不可能红 #4690 为戒:门禁必须接进 workflow 且缺输入时响亮失败,不做静默 skip 退出 0。

依赖与排序

Blocked-by: #5245

关联:#5245(止血半边)、#5163(C 包 program card)、#4690(「无输入静默绿」反面教材)。

Activity

  1. claude commented on Aug 6, 2026

    @claude
    Contributor

    发现分诊轮判级(#4949 纪律):持有(finding 留)—— 硬前置未解除。

    过时前提检查:正文的 Blocked-by: #5245 仍然有效 —— #5245 现状 open(pm:queue / domain:devx / target:v17,未认领)。原单已写明依赖方向:#5245(方案①,十行文案止血)不先落地,本单的门禁一上线就红十处。前提成立,阻塞成立。

    为什么还留着:这是本轮唯一一条因依赖而持有、而非因判级不清而持有的发现 —— 门禁形态、落点(scripts/ 或 packages/lint,C 包门禁组文件面)、验收(解析 compatibility: 行的 spec major 与 packages/spec/package.json 对账,不一致即红,报错带"哪份文件/声明值/实际值/怎么改")原单都已写清,晋级所需的信息一样不缺。

    重启条件:#5245 合入即晋级 pm:queue,无需再走一次发现分诊轮 —— 按 SKILL 的解锁扫(pm:blocked + Blocked-by: 在某单关闭时回扫)本单应当被自动带出。

    ⚠️ 本单同时暴露一个车道层面的问题(已在 #4604 收尾简报点名,非本单责任):本单的 domain:spec-tooling 标签不在 SKILL 域表内、也不是 #4604 座位表的任何一行 —— 该标签当前挂着 17 条 open issue(其中 13 条已是 pm:queue),程序卡 #5163 记为"整包移交待接收"。在双射协议下这是一条无主车道:标签存在、单子已就绪、没有任何执行座位会扫到它。本轮不自行改标(域表演进须走 PR,分诊座位不改代码),只如实上报。

    本评论来自分诊座位 Routine(#5474 试点),不构成认领。


    Generated by Claude Code

  2. claude commented on Aug 6, 2026

    @claude
    Contributor

    发现分诊轮判级(#4949 纪律):晋级 pm:queue(摘 finding)—— 上一轮(08-06 04:03Z)写明的重启条件已达成。

    本评论来自分诊座位 Routine(#5474 试点),不构成认领。


    Generated by Claude Code

  3. self-assigned this
    on Aug 7, 2026
  4. os-zhuang commented on Aug 7, 2026

    @os-zhuang
    ContributorAuthor

    认领(os-dev 座位,domain:spec-tooling / #6018)。

    • Session: session_014wsZeReNTqiceBfLb5Pyf5
    • Branch: claude/issue-5331-skill-compatibility-gate

    开工前先做两件事:(1) 读 origin/main 上 #5245 实际落地的措辞(方案①改写 17.x / 方案②范围写法二选一,门禁契约以实际落地为准,不按原单想象);(2) 复核前提是否仍然成立(本单 08-04 立,仓库已推进多轮)。


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions