From d47b62c33731cabcb3292a04043bbf1b3521ccc5 Mon Sep 17 00:00:00 2001 From: obroccolio Date: Wed, 12 Aug 2026 19:08:26 +0800 Subject: [PATCH] =?UTF-8?q?feat(config):=20=E6=8E=A5=E5=85=A5=E8=AF=8D?= =?UTF-8?q?=E4=BA=91=E5=B9=B3=E5=8F=B0=20WORDCLOUD=5FAPI=5FURL/WORDCLOUD?= =?UTF-8?q?=5FTIMEOUT=5FMS=20=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.example | 7 +++++++ src/config/configuration.ts | 6 ++++++ src/config/validation.schema.ts | 4 ++++ 3 files changed, 17 insertions(+) diff --git a/.env.example b/.env.example index 2b36ecc..c511079 100644 --- a/.env.example +++ b/.env.example @@ -35,3 +35,10 @@ COS_SECRET_ID= COS_SECRET_KEY= COS_BUCKET= COS_REGION=ap-guangzhou + +# ── 词云平台(下单后 WCD 生产任务,R4)──────────────── +# 词云服务(FastAPI)地址;留空视为未配置: +# 下单后的 WCD 派单返回结构化 "not_configured",不做假成功(详见 docs/wordcloud-contract.md) +WORDCLOUD_API_URL= +# 请求词云平台超时(毫秒),可选,默认 30000 +WORDCLOUD_TIMEOUT_MS=30000 diff --git a/src/config/configuration.ts b/src/config/configuration.ts index 90cb26c..fd6010b 100644 --- a/src/config/configuration.ts +++ b/src/config/configuration.ts @@ -35,4 +35,10 @@ export default () => ({ bucket: process.env.COS_BUCKET ?? '', region: process.env.COS_REGION ?? 'ap-guangzhou', }, + wordcloud: { + // 词云平台(FastAPI)服务地址;为空视为未配置,下单后的 WCD 派单返回 not_configured + apiUrl: process.env.WORDCLOUD_API_URL ?? '', + // 请求 wordcloud 超时(毫秒) + timeoutMs: parseInt(process.env.WORDCLOUD_TIMEOUT_MS ?? '30000', 10), + }, }); diff --git a/src/config/validation.schema.ts b/src/config/validation.schema.ts index 31344bb..88fe297 100644 --- a/src/config/validation.schema.ts +++ b/src/config/validation.schema.ts @@ -28,4 +28,8 @@ export const validationSchema = Joi.object({ COS_SECRET_KEY: Joi.string().allow('').default(''), COS_BUCKET: Joi.string().allow('').default(''), COS_REGION: Joi.string().default('ap-guangzhou'), + + // 词云平台:允许为空(未配置时下单派单返回 not_configured,见 wordcloud-contract.md) + WORDCLOUD_API_URL: Joi.string().allow('').default(''), + WORDCLOUD_TIMEOUT_MS: Joi.number().default(30000), });