Files
pangolin/.gitignore
T
wangjia f8f4ee0ce8 test(ci): 第6刀 — CI gate 补全(覆盖率闸 A1 + 集成测试 job A2)
A 类「闸的完整性」:

- A1 覆盖率闸(防断崖,非追高):
  · go-server job 加 -coverprofile,host 侧解析 total,< 30% 失败(当前 34.9%)。
  · flutter-client job 加 --coverage,host 侧 awk 解析 lcov,< 28% 失败(当前 32.7%)。
  阈值留 ~5% 缓冲,只拦回归断崖,不卡日常波动。

- A2 集成测试进 CI(新 go-integration job,Job 10):
  真 mysql:8/redis 经 testcontainers 跑 -tags integration(跨库可移植/按租户
  记账/配额/兑换/节点生命周期/migrate·时区——sqlite 单测覆盖不到的真库行为)。
  · 在 host-mode runner 宿主机直接跑 go(不套 golang 容器):testcontainers 要真
    docker,DooD 在 Docker Desktop(mac)上网络不通;依赖宿主 go + docker。
  · -p 1 串行:一次只起一个 mysql 容器,避免并发压垮 Docker Desktop。

covers/ 覆盖率产物入 .gitignore。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 21:19:34 +08:00

84 lines
1.8 KiB
Plaintext

# ---> AL
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
*.code-workspace
# Local History for Visual Studio Code
.history/
*.app
.snapshots/*
# 密钥与渲染产物 —— 绝不入库
deploy/secrets/
deploy/xray/config.json
deploy/singbox/config.json
# 备份系统密钥(age 私钥、AWS 凭据)—— 绝不入库
deploy/backup/backup.env
*.age-private*
age-keypair.txt
# infra/domains —— 签名私钥与发布产物绝不入库(公钥可入库)
*.ed25519.key
infra/domains/tools/_publish/
infra/domains/tools/_smoke/
# Terraform —— state/tfvars/缓存绝不入库
**/.terraform/
*.tfstate
*.tfstate.*
*.tfvars
!*.tfvars.example
*.tfplan
tf.plan
crash.log
# Terraform 状态与本地变量(含厂商/管理凭证)—— 绝不入库
infra/**/.terraform/
infra/**/.terraform.lock.hcl
*.tfstate
*.tfstate.*
infra/**/terraform.tfvars
*.auto.tfvars
# kernel 构建产物与临时源码(不入库,本地可重建)
app/kernel/dist/
app/kernel/.build/
# Go 编译产物(mock server 等)
server/mockserver
server/pangolin-server
# Flutter / Dart 构建产物与本地配置
client/android/local.properties
client/android/app/src/main/java/
client/ios/Flutter/ephemeral/
client/pubspec.lock
# Claude worktrees(临时工作目录,本地专用)
.claude/worktrees/
# 杂项
.DS_Store
*.log
*.bak
# 编译产物(不应跟踪)
/server/server
/server/nodectl
/server/agent
# 字体子集生成的中间产物(源字体/临时字表;产物 client/fonts/ 才入库)
tools/fonts/_*
# golden 测试失败时生成的对比图(临时产物)
client/test/golden/failures/
# Inno Setup 编译产物(安装包,本地生成不入库)
client/windows/installer/Output/
# 覆盖率产物(CI 覆盖率闸生成,临时不入库)
/server/cover.out
/server/coverage.txt
/client/coverage/