feat(acceptance): 建立同构验收与弹性容量体系

实现本地三节点 K3s 同构环境、脱敏生产快照、Gemini 图片和多参考图视频协议模拟、统一验收报告及故障注入。\n\n新增 Worker 容量控制器、资源与连接预算、任务恢复保护,并将生产验收拆分为 validation 执行和人工 CAS 放量。\n\n验证包括 Go 全量测试、PostgreSQL HTTP 集成测试、go vet、OpenAPI、ShellCheck、前端检查、迁移及发布脚本测试。
This commit is contained in:
2026-07-31 18:02:24 +08:00
parent 93d36d0e55
commit e05922b0f4
94 changed files with 12379 additions and 826 deletions
+43
View File
@@ -0,0 +1,43 @@
#!/usr/bin/env bash
set -euo pipefail
usage() {
cat <<'EOF'
Usage:
AI_GATEWAY_ACCEPTANCE_SNAPSHOT_DATABASE_URL='postgresql://...' \
scripts/acceptance/export-production-snapshot.sh \
--release-sha <full-sha> --output <snapshot.json>
This command is database read-only. The supplied role should have SELECT access
only. It never prints the database URL or candidate credentials.
EOF
}
script_dir=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
repository_root=$(cd "$script_dir/../.." && pwd)
[[ ${1:-} == --release-sha && ${3:-} == --output && $# -eq 4 ]] || {
usage >&2
exit 64
}
release_sha=$2
output=$4
database_url=${AI_GATEWAY_ACCEPTANCE_SNAPSHOT_DATABASE_URL:-}
[[ $release_sha =~ ^[0-9a-f]{40}$ ]] || {
echo 'release SHA must be a full lowercase Git SHA' >&2
exit 64
}
[[ -n $database_url ]] || {
echo 'AI_GATEWAY_ACCEPTANCE_SNAPSHOT_DATABASE_URL is required' >&2
exit 64
}
umask 077
(
cd "$repository_root/apps/api"
AI_GATEWAY_DATABASE_URL="$database_url" \
go run ./cmd/acceptance-snapshot export \
--release-sha "$release_sha" \
--output "$output"
)
chmod 0600 "$output"