Files
xiaoxia-saas/scripts/format.sh
T
xiaoxia b08b571187
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 31s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 49s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 59s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m0s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m4s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 58s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m36s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 2m36s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m36s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 2m38s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 2m55s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 3m56s
CI/CD Pipeline / PR Build Worker Image (pull_request) Failing after 7m30s
AI Code Review / AI Code Review (pull_request) Successful in 8m33s
ci: Agent提交前自动格式化 + AI审查与auto-approve联动
P0-2: 新增 scripts/format.sh 一键格式化脚本(black + isort + eslint)
P0-3: pr_auto_scan.py 新增AI审查联动,发现严重问题时阻止自动审批
  - get_ai_review_result() 解析AI审查评论中的严重问题数量
  - 有严重问题时不自动审批,打 ai-review/需修改 标签
  - 新增 --skip-ai-review 参数可强制跳过AI检查
  - 人工仍可手动审批覆盖,不加硬门禁
2026-07-23 01:11:50 +08:00

34 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
# Agent提交前自动格式化脚本
# 用法:./scripts/format.sh [path1 path2 ...]
# 不传参数则格式化所有后端代码
set -euo pipefail
cd "$(dirname "$0")/.."
echo "=== 代码格式化 ==="
# 后端:black + isort(顺序:先isort后black,与pyproject.toml配置一致)
if command -v black &>/dev/null && command -v isort &>/dev/null; then
TARGETS="${@:-alembic apps packages tests scripts}"
echo "后端格式化: $TARGETS"
python3 -m isort $TARGETS
python3 -m black $TARGETS
echo "✅ 后端格式化完成"
else
echo "⚠️ 未安装black/isort,跳过后端格式化"
fi
# 前端:prettier + eslint --fix(如果有前端改动)
if [ -d "apps/web" ] && command -v npx &>/dev/null; then
if [ "$#" -eq 0 ] || echo "$@" | grep -q "apps/web"; then
echo "前端格式化: apps/web"
(cd apps/web && npx eslint src --ext .ts,.tsx --fix 2>/dev/null || true)
(cd apps/web && npx prettier --write "src/**/*.{ts,tsx,css,json}" 2>/dev/null || true)
echo "✅ 前端格式化完成"
fi
fi
echo "=== 格式化全部完成 ==="