这是公网只读快照,批注存不进来——要写批注请开本机链接 http://localhost:8010/_root/docs/prd/deployment/deployment-PRD.html?annotate=1

这一页是给机器跑的,你不用看。回正文:deployment-PRD.html

功能 → 检查

所有命令都从仓库根跑:cd "/Users/jack/yummy-repos/Video Picker Git"。 统一 runner 是 tools/ops/deployment_prd_check.py(磁盘上已存在、已实测能跑): 不带参数跑全部,带 F 编号只跑一条;收据行 TOTAL: 0 failures 才算过。 写作当下(改 SKILL.md 之前)的实测基线是 TOTAL: 4 failures(F1-F4 红)—— 红的含义是"扩建还没做",扩建完成的判定就是它归零。

编号功能检查
F1分流表写进 SKILL.md(四条车道关键词齐)python3 tools/ops/deployment_prd_check.py F1 → PASS,收据 TOTAL: 0 failures
F2官网上生产道收编(唯一入口+违规红线+入口脚本还能跑)python3 tools/ops/deployment_prd_check.py F2 → PASS
F3三道闸接线(cf_write_gate·双签·ui-test-gate)python3 tools/ops/deployment_prd_check.py F3 → PASS
F4接缝双向声明(四个邻居互相点名)python3 tools/ops/deployment_prd_check.py F4 → PASS
F5重扫过闸(发布域无未声明重叠)python3 tools/ops/deployment_prd_check.py F5 → PASS(内部调 build_registry.py,不带 --proposed)
F6两道硬门出货(validate_skill + verify_skill_zip 均 exit 0)python3 tools/ops/deployment_prd_check.py F6 → PASS
F7Hao + Rohan 共管面写进 SKILL.md(清单+"写动作要他们点头")python3 tools/ops/deployment_prd_check.py F7 → PASS

逐条展开(同一套检查的手动版,给人核对用)

下面每条命令写之前都已核实点名的工具真的在磁盘上;标注的是本 PRD 写作当下(改 SKILL.md 之前)实测跑出来的结果, 只作为"这条命令确实能跑、不是编的"的证据——改完 SKILL.md 之后重跑,期望输出才是判定标准。

F1 · 分流表写进 SKILL.md
cd "/Users/jack/yummy-repos/Video Picker Git" && for kw in "worker" "tunnel" "deploy-netlify.sh" "sshops"; do grep -qi "$kw" skills/cloudflare-publish/SKILL.md && echo "OK: $kw" || echo "MISSING: $kw"; done

期望输出:四行,全部 OK: 关键词
写这份 PRD 时实测:OK: sshops,其余三个都是 MISSING——扩建工作要把这三条也写进 SKILL.md。

F2 · 官网上生产道被收编
cd "/Users/jack/yummy-repos/Video Picker Git" && grep -q "deploy-netlify.sh" skills/cloudflare-publish/SKILL.md && grep -qi "netlify deploy --prod" skills/cloudflare-publish/SKILL.md && echo PASS || echo FAIL

期望输出PASS(两个关键词都要出现——一个是唯一正确入口,一个是被点名为违规的裸命令)。
写这份 PRD 时实测:FAIL(两个关键词现在都不在 SKILL.md 里)。

补充:唯一正确入口脚本本身的语法完整性(这份 PRD 不改它,只验证它还在、还能跑):

bash -n "/Users/jack/yummy-repos/website/scripts/deploy-netlify.sh"; echo "exit=$?"

期望输出:exit=0。写这份 PRD 时实测已经是 exit=0

F3 · 三道闸接线写清楚
cd "/Users/jack/yummy-repos/Video Picker Git" && for gate in "cf_write_gate" "双签" "ui-test-gate"; do grep -q "$gate" skills/cloudflare-publish/SKILL.md && echo "OK: $gate" || echo "MISSING: $gate"; done

期望输出:三行,全部 OK: 门名
写这份 PRD 时实测:三个全部 MISSING

F4 · 跟四个邻居技能互相点名边界
cd "/Users/jack/yummy-repos/Video Picker Git" && for n in remote-server-ops share-and-feedback wefunder-campaign-deploy combine-web-pages; do
  a=$(grep -qi "$n" skills/cloudflare-publish/SKILL.md && echo Y || echo N)
  b=$(grep -qi "cloudflare-publish" "skills/$n/SKILL.md" && echo Y || echo N)
  echo "$n: cloudflare-publish提到它=$a  它提到cloudflare-publish=$b"
done

期望输出:四行,每行两个 Y
写这份 PRD 时实测:remote-server-ops 和 share-and-feedback 两边都已经是 Y Y; wefunder-campaign-deploy 和 combine-web-pages 那两行是 cloudflare-publish提到它=N—— 它们已经在自己描述里提过 cloudflare-publish,但 cloudflare-publish 还没提过它们,缺的是这一半。

F5 · 重扫过闸,没有未声明的重叠
cd "/Users/jack/yummy-repos/Video Picker Git" && python3 skills/skill-hub/scripts/build_registry.py --roots skills --out reports/skill-registry && python3 -c "
import json
d = json.load(open('reports/skill-registry/registry.json'))
bad = [e for e in d['edges'] if 'cloudflare-publish' in (e['a'], e['b']) and e['tier']=='OVERLAP' and not e['declared_seam']]
print('undeclared OVERLAP:', bad)
print('PASS' if not bad else 'FAIL')
"

期望输出:最后一行 PASSundeclared OVERLAP: [])。
写这份 PRD 时实测(不带 --proposed):确实是 PASS——已经放弃的 website-publish-governor 新技能提案不会再被这条命令翻出来(它只在专门传 --proposed 参数重放那次扫描时才会出现,日常重扫不要加这个参数)。

F6 · 两道打包硬门 + 重新打包
cd "/Users/jack/yummy-repos/Video Picker Git" && python3 skills/yummy-skill-creator/scripts/validate_skill.py skills/cloudflare-publish; echo "validate_skill exit=$?"
python3 skills/yummy-skill-creator/scripts/verify_skill_zip.py skills/cloudflare-publish skills/cloudflare-publish.skill; echo "verify_skill_zip exit=$?"

期望输出:两行都是 exit=0(改完 SKILL.md 要重新打包出 .skill, 再跑这条——旧 .skill 内容跟改完的源目录不一致,verify_skill_zip 会先报非零)。
注意参数顺序是先文件夹、后 .skillverify_skill_zip.py <skill 文件夹> <.skill 文件>—— 脚本自己的 --help 就是这么写的。

F7 · Hao + Rohan 共管面写进 SKILL.md
cd "/Users/jack/yummy-repos/Video Picker Git" && python3 tools/ops/deployment_prd_check.py F7

期望输出PASS F7,收据 TOTAL: 0 failures。 检查的是:Hao、Rohan 两个名字,设备远程升级(Mender),以及"写动作要他们点头"的规矩, 都要能在扩建后的 SKILL.md 里搜到。写这份 PRD 时实测:FAIL(都还没写进去)。