Tripo 配置改为启动期失败关闭,缺网关或密钥的进程拒绝启动

- api-server 新增启动期门禁:会提交或会执行 3D job 的角色(api / external-generation-worker / all)缺 TRIPO_BASE_URL 或 TRIPO_API_KEY、值为空白或网关不是合法 HTTP(S) 地址时直接拒绝启动;bgfilter-worker 与 external-generation-controller 不受影响
- 删除内置默认网关常量,AppConfig::default() 的 tripo_base_url 改为空串;请求路径不再把超时静默钳到 .max(1)、重试钳到 .min(10),坏值原样交给 TripoSettings 并映射 503,作为启动期之后的第二道防线
- 两个运行旋钮仍可缺省(沿用内置 60000 / 2),显式声明时零超时、非数字或重试超过 10 都判启动失败
- .env.example 与 deploy/env/api-server.env.example 补齐 TRIPO_* 必填说明;deploy/container/api-server.env.example 与 container-worker-smoke 生成 env 补占位值,避免容器压测与 Jenkins 分支预览起不来
- 文档:新增 ADR 0006 并登记 docs/README.md,同步外部生成 Worker 化方案、开发运维文档、CONTEXT.md、决策记录、踩坑记录与实施计划
This commit is contained in:
2026-09-24 13:53:43 +08:00
parent eb27bb9226
commit d1e11c705d
15 changed files with 346 additions and 15 deletions
+9
View File
@@ -101,6 +101,15 @@ ELEVENLABS_BASE_URL=https://api.elevenlabs.io
ELEVENLABS_API_KEY=
ELEVENLABS_REQUEST_TIMEOUT_MS=180000
# Tripo 3D 生成:两项都是必填,缺任意一项时 api-server / external-generation-worker
# 会在启动期直接拒绝启动(不兜底到任何默认网关)。网关没有内置默认值;
# 密钥按部署机约定放受保护文件或受保护 env,不要写进仓库,也不要把这一行留空后部署。
TRIPO_BASE_URL=https://openapi.tripo3d.com/v3
TRIPO_API_KEY=
# 可缺省(沿用内置 60000 / 2);显式给出时零值或越界值会让进程拒绝启动。
TRIPO_REQUEST_TIMEOUT_MS=60000
TRIPO_RETRIES=2
HYPER3D_BASE_URL=https://api.hyper3d.com/api/v2
HYPER3D_API_KEY=
HYPER3D_MODEL_REQUEST_TIMEOUT_MS=180000