fix(contract): align CLI surface, docs, and executable release checks - #196
Open
titanwings wants to merge 1 commit into
Open
titanwings wants to merge 1 commit into
titanwings wants to merge 1 commit into
Conversation
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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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-test,dot-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.md、README.md、ROADMAP.md、tests/fixtures/public-corpus/README.md。数字来自本 PR 重跑。合成访谈字幕是 38 条 cue。docs/v2/GATES.md。docs/evidence/pr-*.md顶部标明描述的是按会话转录重建的ds/NN-*分支快照,不是本栈。pr-13与pr-16里 planned-channel 句子改成历史说明。scripts/check_release.mjs第 1、2、3、6 项改为执行。scripts/audit-objective.mjs第 1 项改读verify.yml与run-gates --list --json。.github/workflows/ci.yml。src/commands/index.mjs去掉「本分支」「最小版」。parse-doc与src/parse/office.mjs拒绝 pdf,code 为office/unsupported-format。parse-archive摘要改回归档自己的话。--help不承诺 pdf。基线只删变绿或关掉的行。Blast Radius
命令面只硬拒绝
.pdf。docx 与 xlsx 路径不变。采集渠道表不变。不删src/collect/*。不改credentialed.mjs、doctor.mjs、SKILL.md、presets.mjs、view.mjs、blind-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):本 PR 头摘要(Node 22.14.0):
tests/release-check.test.mjs与tests/package-payload.test.mjs先红后绿。父提交上新断言失败。实现后node --test tests/release-check.test.mjs3/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 migrateenumerations: +consent: verifyenumerations: +consent: pruneenumerations: -parse-doc: pdferror-codes: -collect/planned-channel documented but no source emits itYou see。
parse-doc fake.pdf --person p --base-dir $W --json退出 2,codeoffice/unsupported-format,remedy 含note --from,工作区只有那份 pdf。全局 help 的命令总览没有「本分支」。23 个已注册命令--help都含## English。git ls-files .github/workflows在删除纳入索引后只剩publish-package.yml与verify.yml。门禁:
node scripts/run-gates.mjs --without playwright→8/8 gates passed。# tests 397# fail 0。8/8 gates passed。DISTILLY_PLAYWRIGHT_ROOT=/tmp/pw-root node scripts/run-gates.mjs --requires playwright→3/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 文件。