chore(release-tooling): 新增 release-prep.mjs 打包+验收合一脚本(结构检查+真实安装+导入断言+双资产SHA);AGENTS.md 补三条发布纪律(同tag资产不可覆盖/结构+安装双验收/声明可证伪)

This commit is contained in:
Aisland
2026-09-04 00:02:45 +08:00
parent 747ff9cfd9
commit 4b384ef639
2 changed files with 130 additions and 0 deletions
+9
View File
@@ -18,6 +18,15 @@
「解包 / 复制 / 实跑用户路径」;「构建成功」「bundle 里有字符串」「退出码 0」不算验收。
- **发布前自跑最终产物清单**:干净目录安装、最终包逐文件核对、双资产哈希、关键行逐字
grep —— 先自查再报告,不等外部复审来抓。
- **发布包验收=结构检查 + 真实安装,两道都保留**:npm pack 标准格式(package/ 前缀 + files
白名单精确 7 文件,不含 src/、不含 .map)与「独立目录 npm install + import() 断言」
缺一不可。教训:v0.3.0 手工 tar 出无前缀平铺包且误卷源码树,「解包核对(文件都在)」发现不了,
只有 npm install 复现失败;「文件都在」 ≠ 「消费方(npm/dsh plugin add)能装」。
- **声明可证伪,不许写满**:验收结论只写已验证范围。「通知全覆盖」「等价端到端」这类表述会被
反向检查打脸——只写「版本比较逻辑上重新激活」「验证了安装与服务端模块导入」。
- **同 tag 资产不可覆盖(用户已拍板)**:坏包处理 = 发新版本号 + 旧 Release 正文标注问题,
默认不替换旧资产;仅经用户明确批准的紧急补救例外,且须:不改名(保持原 URL 名)、
用已验证包、不删不盖现有资产、上传后从完整 URL 下载核对、旧 Release 注明补救经过。
## 边界