ci: PR构建验证 + Agent提交格式化 + buildx清理 #690
Reference in New Issue
Block a user
Delete Branch "ci/pr-build-validation-plus"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
变更内容
1. PR阶段Docker构建验证(核心修复)
build-prjob,pull_request事件触发2. auto-merge门禁升级
3. buildx builder自动清理
4. Agent提交格式化脚本
scripts/agent-commit.sh5. PR构建专用脚本
scripts/ci/docker_build_only.sh预期收益
🚀 预览环境已部署
CI全绿,自动审批通过。
CI全绿,自动审批通过。
代码审查结果 - PR #690
⚠️ 问题(4个需要修改)
find命令使用了head -100,导致如果项目中有超过100个 Python 文件,超出的文件将被忽略,不会进行格式化和检查。这会导致代码质量检查不完整。grep -c "^"统计的是输出行数而非错误数量,且判断逻辑if [ "$RUFF_ERRORS" -le 2 ]极其不可靠(例如:如果 ruff 输出包含 3 行警告信息,脚本会报错退出;但如果只有 1 行包含 10 个错误的描述,脚本反而会通过)。这会导致代码质量门禁失效。set -e模式下,如果black或isort没有对文件做任何修改(即代码已经是格式化的),git commit会因为 "nothing to commit" 而报错退出,导致脚本中断,用户体验差且逻辑不严谨。BUILD_ARGS="$BUILD_ARGS --build-arg $arg"。如果构建参数的值中包含空格(例如APP_VERSION="1.0.0 beta"),会导致 Docker 命令解析错误,构建失败。💡 建议(2个可选)
$TARGETS)时未加引号(例如第26行black $TARGETS)。如果路径中包含空格,命令会执行失败。建议对所有变量引用添加双引号。curl ... | bash的方式下载代码,这是一种潜在的安全风险(中间人攻击或仓库被入侵时可能执行恶意脚本)。建议使用 Gitea/GH Actions 标准的actions/checkout,或者至少校验下载脚本的 Hash 值。✅ 格式检查通过 | ❌ 逻辑审查需修改 | ⚠️ 建议关注性能
🤖 由 AI 代码审查机器人自动生成 | 2026-07-22 00:23:15 | 模型:
🗑️ 预览环境已清理
PR #690 已关闭或合并,对应的预览环境已被清理。