Skip to content

fix(contract): align CLI surface, docs, and executable release checks - #196

Open
titanwings wants to merge 1 commit into
atomic/pr-9-node-installersfrom
atomic/pr-10-contract-align
Open

titanwings wants to merge 1 commit into
atomic/pr-9-node-installersfrom
atomic/pr-10-contract-align

Conversation

@titanwings

Copy link
Copy Markdown
Owner

Why

契约仍承诺本树做不到的面。parse-doc 把 pdf 写进用法,实际只读 docx 与 xlsx。check_release 第 2、3、6 项靠 grep 文本,第 6 项还读已过时的 ci.yml。STATUS 与 README 的数字停在 391 与 15/15。本 PR 按 D6 选项 a 把未实现条款移出契约,让 pdf 响亮拒绝,并把发布检查换成执行式判据。

栈停在 dot-skill-testdot-skill 保留。本树父提交是 PR-9 #187。没有把 PR-1 至 PR-8 merge 进来。

Scope

  • docs/v2/CONTRACT.md。去掉 pdf。consent 加上 verify 与 prune。单独列出 skill migrate。删掉 python3 转发。axe 与坏链移到 ROADMAP.md。第 25 行渠道名单不动。
  • docs/v2/STATUS.mdREADME.mdROADMAP.mdtests/fixtures/public-corpus/README.md。数字来自本 PR 重跑。合成访谈字幕是 38 条 cue。
  • 新建 docs/v2/GATES.md
  • 每份 docs/evidence/pr-*.md 顶部标明描述的是按会话转录重建的 ds/NN-* 分支快照,不是本栈。pr-13pr-16 里 planned-channel 句子改成历史说明。
  • scripts/check_release.mjs 第 1、2、3、6 项改为执行。scripts/audit-objective.mjs 第 1 项改读 verify.ymlrun-gates --list --json
  • 删除 .github/workflows/ci.yml
  • src/commands/index.mjs 去掉「本分支」「最小版」。parse-docsrc/parse/office.mjs 拒绝 pdf,code 为 office/unsupported-formatparse-archive 摘要改回归档自己的话。
  • T13 改为断言 pdf 被拒绝且 --help 不承诺 pdf。基线只删变绿或关掉的行。

Blast Radius

命令面只硬拒绝 .pdf。docx 与 xlsx 路径不变。采集渠道表不变。不删 src/collect/*。不改 credentialed.mjsdoctor.mjsSKILL.mdpresets.mjsview.mjsblind-test.mjs。仍红的审计行留下。

Verification

T13 由红转绿。对应基线行 R23 \parse-doc` advertises pdf alongside docx and xlsx (CONTRACT §1 line 22)` 已删。

node scripts/run-gates.mjs --id audit-tests 父提交摘要(Node 22.14.0):

PASS audit-tests  (5.4s, exit 1)
     ratchet failing 21, baseline 21

本 PR 头摘要(Node 22.14.0):

PASS audit-tests  (5.1s, exit 1)
     ratchet failing 20, baseline 20

tests/release-check.test.mjstests/package-payload.test.mjs 先红后绿。父提交上新断言失败。实现后 node --test tests/release-check.test.mjs 3/3,node --test tests/package-payload.test.mjs 通过。

node scripts/check-entry-surface.mjs 不带基线。pdf、migrate、verify、prune、python3 转发、axe、planned-channel 那些 finding 消失。留下 9 行。带基线 RESULT PASS findings 9 known 9 new 0 stale-baseline 0

删掉的 entry-surface 基线行:

  • commands: +skill migrate
  • enumerations: +consent: verify
  • enumerations: +consent: prune
  • enumerations: -parse-doc: pdf
  • error-codes: -collect/planned-channel documented but no source emits it

You see。parse-doc fake.pdf --person p --base-dir $W --json 退出 2,code office/unsupported-format,remedy 含 note --from,工作区只有那份 pdf。全局 help 的命令总览没有「本分支」。23 个已注册命令 --help 都含 ## English

git ls-files .github/workflows 在删除纳入索引后只剩 publish-package.ymlverify.yml

门禁:

  • Node 22.14.0 node scripts/run-gates.mjs --without playwright8/8 gates passed# tests 397 # fail 0
  • Node 20.20.2 同上 8/8 gates passed
  • Node 22.14.0 DISTILLY_PLAYWRIGHT_ROOT=/tmp/pw-root node scripts/run-gates.mjs --requires playwright3/3 gates passed。三份语料 验收结果:18/18 通过。us-house 含 FAIL · units=2744 speakers=18 attributed=175

STATUS.md 每个数字都对应上面这些命令的输出。

Rollback

git revert 本 PR 的单个提交。基线行会回到父提交的 21 行与 14 行。ci.yml 会回来。pdf 会重新被当成跳过的非 OOXML 文件。

Refuse PDF on parse-doc with office/unsupported-format. Replace text-grep
release criteria with executed migrate, install, and run-gates checks.
Delete ci.yml. Refresh STATUS to the atomic stack that stops at
dot-skill-test.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants