test(release): 逐文件核对「发布包 == 打标签的树」(T-AND-018)
新增 build/check_tracked_release.py(纯标准库):对包内每个文件按路径决定比较基准 —— app-release.apk 比工作树构建结果,其余比 git show <tag>:<路径>;内容不一致 / 多余 / 构建产物缺失都会列出并退出 1。已接入 accept-release.sh(第 0 步)与 package-release.sh 提示。 实测(已发布的 v0.2.2 资产重新下载后): 包内 12 个文件:源码/文档 11(与 tag v0.2.2 比)+ 构建产物 1(APK 比工作树构建) ✓ 逐文件一致:0 处不一致 / 0 处多余 / 0 处缺失 同行产品级验收(版本元数据 0.2.2/202、native 体检、契约快照、验签)同时全绿。 踩坑:第一版把 BUILD_OUTPUTS 的键一律当目录前缀,而 APK 是单文件,拼出 app-release.apk/ 导致「工作树缺失」误报;现区分目录前缀与精确文件名。
This commit is contained in:
@@ -99,5 +99,6 @@ echo "分发:上传 $NAME.zip 与 SHA256SUMS 两个资产;用户下载后"
|
||||
echo " sha256sum -c SHA256SUMS && unzip $NAME.zip"
|
||||
echo " 再 adb install -r $NAME/app-release.apk(Android 10+)"
|
||||
echo ""
|
||||
echo "下一步(文档 §7.5:每次发布都要有一条读产物本身的验收):"
|
||||
echo "下一步(文档 §7.5 / §7.7:发布前必须做的验收,含逐文件核对):"
|
||||
echo " python3 build/check_tracked_release.py $ZIP --tag v$VERSION"
|
||||
echo " bash build/accept-release.sh $ZIP"
|
||||
|
||||
Reference in New Issue
Block a user