{"repo": "chadbi/moment-campus-opengauss", "files": {"deploy/.env.prod.example": {"16140c743c53366ab4d0aa9e9746ada5eeb80462": {"t": 1785746430.6164684, "n": 1481, "h": "4a659bf305a53714", "c": "# 此刻校园 - 生产环境配置\n# 复制此文件为 .env.prod 并修改以下值\n\n# 域名(必填!替换为你的实际域名,例如:example.com 或 moment.example.com)\nDOMAIN=your-domain.com\n\n# 数据库配置(生产环境请修改密码!)\nDB_USER=gaussdb\nDB_PASSWORD=Gaussdb@123_Change_Me\nDB_PASSWORD_ENCODED=Gaussdb%40123_Change_Me\nDB_NAME=moment_campus\n\n# JWT密钥(生产环境必须修改为随机字符串!)\n# 在服务器上生成方式:openssl rand -hex 32\nSECRET_KEY=change-this-to-a-strong-random-secret-key-in-production-please-use-openssl\n\n# 其他配置\nAPP_ENV=production\nDEBUG=false\n\n# ============================================================\n# AI-01: AI Provider 配置(P2-011 补齐 9 项)\n# 生产环境推荐 openai;未配置时自动降级为 mock(AI 功能不可用,但不影响主流程)\n# 密钥仅服务端环境变量,不进前端、不进日志、不进 git\n#\n# 兼容方案示例(DeepSeek,兼容 OpenAI API):\n# AI_PROVIDER=openai\n# AI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n# AI_API_BASE=https://api.deepseek.com\n# AI_MODEL=deepseek-v4-flash\n# ============================================================\n# Provider 类型:mock / openai(生产推荐 openai;mock 仅用于无 Key 的演示/测试)\nAI_PROVIDER=mock\n# OpenAI API Key(仅 openai 模式必填;mock 模式留空)\n# 建议使用网关代理后的 Key,避免直接暴露原始 OpenAI Key\nAI_API_KEY=\n# OpenAI API Base URL(可选,用于兼容代理/自建网关,例如 https://api.openai.com/v1 或 https://api.deepseek.com)\nAI_API_BASE=\n# 模型名(OpenAI: gpt-4o-mini;DeepSeek: deepseek-v4-flash)\nAI_MODEL=gpt-4o-mini\n# 超时(秒,单次请求;网络抖动场景可适当调大)\nAI_TIMEOUT=15.0\n# 单次请求最大输出 Token(控制成本;发布建议/搜索摘要 1024 已足够)\nAI_MAX_TOKENS=1024\n# 最大重试次数(指数退避:1s, 2s, 4s);不含首次调用\nAI_MAX_RETRIES=3\n# 熔断:连续失败次数达到阈值后熔断(防止雪崩)\nAI_CIRCUIT_FAILURE_THRESHOLD=5\n# 熔断恢复时间(秒,超过此时间后半开尝试)\nAI_CIRCUIT_RESET_SECONDS=60\n"}, "09faa8771b01d4bc40207a63e3844b31e539564f": {"t": 1785764128.7830489, "n": 1481, "h": "4a659bf305a53714", "c": "# 此刻校园 - 生产环境配置\n# 复制此文件为 .env.prod 并修改以下值\n\n# 域名(必填!替换为你的实际域名,例如:example.com 或 moment.example.com)\nDOMAIN=your-domain.com\n\n# 数据库配置(生产环境请修改密码!)\nDB_USER=gaussdb\nDB_PASSWORD=Gaussdb@123_Change_Me\nDB_PASSWORD_ENCODED=Gaussdb%40123_Change_Me\nDB_NAME=moment_campus\n\n# JWT密钥(生产环境必须修改为随机字符串!)\n# 在服务器上生成方式:openssl rand -hex 32\nSECRET_KEY=change-this-to-a-strong-random-secret-key-in-production-please-use-openssl\n\n# 其他配置\nAPP_ENV=production\nDEBUG=false\n\n# ============================================================\n# AI-01: AI Provider 配置(P2-011 补齐 9 项)\n# 生产环境推荐 openai;未配置时自动降级为 mock(AI 功能不可用,但不影响主流程)\n# 密钥仅服务端环境变量,不进前端、不进日志、不进 git\n#\n# 兼容方案示例(DeepSeek,兼容 OpenAI API):\n# AI_PROVIDER=openai\n# AI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n# AI_API_BASE=https://api.deepseek.com\n# AI_MODEL=deepseek-v4-flash\n# ============================================================\n# Provider 类型:mock / openai(生产推荐 openai;mock 仅用于无 Key 的演示/测试)\nAI_PROVIDER=mock\n# OpenAI API Key(仅 openai 模式必填;mock 模式留空)\n# 建议使用网关代理后的 Key,避免直接暴露原始 OpenAI Key\nAI_API_KEY=\n# OpenAI API Base URL(可选,用于兼容代理/自建网关,例如 https://api.openai.com/v1 或 https://api.deepseek.com)\nAI_API_BASE=\n# 模型名(OpenAI: gpt-4o-mini;DeepSeek: deepseek-v4-flash)\nAI_MODEL=gpt-4o-mini\n# 超时(秒,单次请求;网络抖动场景可适当调大)\nAI_TIMEOUT=15.0\n# 单次请求最大输出 Token(控制成本;发布建议/搜索摘要 1024 已足够)\nAI_MAX_TOKENS=1024\n# 最大重试次数(指数退避:1s, 2s, 4s);不含首次调用\nAI_MAX_RETRIES=3\n# 熔断:连续失败次数达到阈值后熔断(防止雪崩)\nAI_CIRCUIT_FAILURE_THRESHOLD=5\n# 熔断恢复时间(秒,超过此时间后半开尝试)\nAI_CIRCUIT_RESET_SECONDS=60\n"}, "40aeb4a77903e43efd0db04cd3318c40c530ad14": {"t": 1785764130.2587094, "n": 1266, "h": "9eedfd34cfdfe371", "c": "# 此刻校园 - 生产环境配置\n# 复制此文件为 .env.prod 并修改以下值\n\n# 域名(必填!替换为你的实际域名,例如:example.com 或 moment.example.com)\nDOMAIN=your-domain.com\n\n# 数据库配置(生产环境请修改密码!)\nDB_USER=gaussdb\nDB_PASSWORD=Gaussdb@123_Change_Me\nDB_PASSWORD_ENCODED=Gaussdb%40123_Change_Me\nDB_NAME=moment_campus\n\n# JWT密钥(生产环境必须修改为随机字符串!)\n# 在服务器上生成方式:openssl rand -hex 32\nSECRET_KEY=change-this-to-a-strong-random-secret-key-in-production-please-use-openssl\n\n# 其他配置\nAPP_ENV=production\nDEBUG=false\n\n# ============================================================\n# AI-01: AI Provider 配置(P2-011 补齐 9 项)\n# 生产环境推荐 openai;未配置时自动降级为 mock(AI 功能不可用,但不影响主流程)\n# 密钥仅服务端环境变量,不进前端、不进日志、不进 git\n# ============================================================\n# Provider 类型:mock / openai(生产推荐 openai;mock 仅用于无 Key 的演示/测试)\nAI_PROVIDER=mock\n# OpenAI API Key(仅 openai 模式必填;mock 模式留空)\n# 建议使用网关代理后的 Key,避免直接暴露原始 OpenAI Key\nAI_API_KEY=\n# OpenAI API Base URL(可选,用于兼容代理/自建网关,例如 https://api.openai.com/v1 或自建网关)\nAI_API_BASE=\n# 模型名(推荐 gpt-4o-mini 性价比高;如需更强能力可换 gpt-4o)\nAI_MODEL=gpt-4o-mini\n# 超时(秒,单次请求;网络抖动场景可适当调大)\nAI_TIMEOUT=15.0\n# 单次请求最大输出 Token(控制成本;发布建议/搜索摘要 1024 已足够)\nAI_MAX_TOKENS=1024\n# 最大重试次数(指数退避:1s, 2s, 4s);不含首次调用\nAI_MAX_RETRIES=3\n# 熔断:连续失败次数达到阈值后熔断(防止雪崩)\nAI_CIRCUIT_FAILURE_THRESHOLD=5\n# 熔断恢复时间(秒,超过此时间后半开尝试)\nAI_CIRCUIT_RESET_SECONDS=60\n"}, "ba7bf4bb00e60f390abdd62d0543b30dbe8a158f": {"t": 1785764131.4299638, "n": 442, "h": "bef1c7901bc947d9", "c": "# 此刻校园 - 生产环境配置\n# 复制此文件为 .env.prod 并修改以下值\n\n# 域名(必填!替换为你的实际域名,例如:example.com 或 moment.example.com)\nDOMAIN=your-domain.com\n\n# 数据库配置(生产环境请修改密码!)\nDB_USER=gaussdb\nDB_PASSWORD=Gaussdb@123_Change_Me\nDB_PASSWORD_ENCODED=Gaussdb%40123_Change_Me\nDB_NAME=moment_campus\n\n# JWT密钥(生产环境必须修改为随机字符串!)\n# 在服务器上生成方式:openssl rand -hex 32\nSECRET_KEY=change-this-to-a-strong-random-secret-key-in-production-please-use-openssl\n\n# 其他配置\nAPP_ENV=production\nDEBUG=false\n"}, "619ea1f44bd19160067e4e29896530751ab6630f": {"t": 1786067759.6389303, "n": 1481, "h": "4a659bf305a53714", "c": "# 此刻校园 - 生产环境配置\n# 复制此文件为 .env.prod 并修改以下值\n\n# 域名(必填!替换为你的实际域名,例如:example.com 或 moment.example.com)\nDOMAIN=your-domain.com\n\n# 数据库配置(生产环境请修改密码!)\nDB_USER=gaussdb\nDB_PASSWORD=Gaussdb@123_Change_Me\nDB_PASSWORD_ENCODED=Gaussdb%40123_Change_Me\nDB_NAME=moment_campus\n\n# JWT密钥(生产环境必须修改为随机字符串!)\n# 在服务器上生成方式:openssl rand -hex 32\nSECRET_KEY=change-this-to-a-strong-random-secret-key-in-production-please-use-openssl\n\n# 其他配置\nAPP_ENV=production\nDEBUG=false\n\n# ============================================================\n# AI-01: AI Provider 配置(P2-011 补齐 9 项)\n# 生产环境推荐 openai;未配置时自动降级为 mock(AI 功能不可用,但不影响主流程)\n# 密钥仅服务端环境变量,不进前端、不进日志、不进 git\n#\n# 兼容方案示例(DeepSeek,兼容 OpenAI API):\n# AI_PROVIDER=openai\n# AI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n# AI_API_BASE=https://api.deepseek.com\n# AI_MODEL=deepseek-v4-flash\n# ============================================================\n# Provider 类型:mock / openai(生产推荐 openai;mock 仅用于无 Key 的演示/测试)\nAI_PROVIDER=mock\n# OpenAI API Key(仅 openai 模式必填;mock 模式留空)\n# 建议使用网关代理后的 Key,避免直接暴露原始 OpenAI Key\nAI_API_KEY=\n# OpenAI API Base URL(可选,用于兼容代理/自建网关,例如 https://api.openai.com/v1 或 https://api.deepseek.com)\nAI_API_BASE=\n# 模型名(OpenAI: gpt-4o-mini;DeepSeek: deepseek-v4-flash)\nAI_MODEL=gpt-4o-mini\n# 超时(秒,单次请求;网络抖动场景可适当调大)\nAI_TIMEOUT=15.0\n# 单次请求最大输出 Token(控制成本;发布建议/搜索摘要 1024 已足够)\nAI_MAX_TOKENS=1024\n# 最大重试次数(指数退避:1s, 2s, 4s);不含首次调用\nAI_MAX_RETRIES=3\n# 熔断:连续失败次数达到阈值后熔断(防止雪崩)\nAI_CIRCUIT_FAILURE_THRESHOLD=5\n# 熔断恢复时间(秒,超过此时间后半开尝试)\nAI_CIRCUIT_RESET_SECONDS=60\n"}, "ba629171e64092df13b02368a5adf48845b12ba6": {"t": 1786068495.514399, "n": 1481, "h": "4a659bf305a53714", "c": "# 此刻校园 - 生产环境配置\n# 复制此文件为 .env.prod 并修改以下值\n\n# 域名(必填!替换为你的实际域名,例如:example.com 或 moment.example.com)\nDOMAIN=your-domain.com\n\n# 数据库配置(生产环境请修改密码!)\nDB_USER=gaussdb\nDB_PASSWORD=Gaussdb@123_Change_Me\nDB_PASSWORD_ENCODED=Gaussdb%40123_Change_Me\nDB_NAME=moment_campus\n\n# JWT密钥(生产环境必须修改为随机字符串!)\n# 在服务器上生成方式:openssl rand -hex 32\nSECRET_KEY=change-this-to-a-strong-random-secret-key-in-production-please-use-openssl\n\n# 其他配置\nAPP_ENV=production\nDEBUG=false\n\n# ============================================================\n# AI-01: AI Provider 配置(P2-011 补齐 9 项)\n# 生产环境推荐 openai;未配置时自动降级为 mock(AI 功能不可用,但不影响主流程)\n# 密钥仅服务端环境变量,不进前端、不进日志、不进 git\n#\n# 兼容方案示例(DeepSeek,兼容 OpenAI API):\n# AI_PROVIDER=openai\n# AI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n# AI_API_BASE=https://api.deepseek.com\n# AI_MODEL=deepseek-v4-flash\n# ============================================================\n# Provider 类型:mock / openai(生产推荐 openai;mock 仅用于无 Key 的演示/测试)\nAI_PROVIDER=mock\n# OpenAI API Key(仅 openai 模式必填;mock 模式留空)\n# 建议使用网关代理后的 Key,避免直接暴露原始 OpenAI Key\nAI_API_KEY=\n# OpenAI API Base URL(可选,用于兼容代理/自建网关,例如 https://api.openai.com/v1 或 https://api.deepseek.com)\nAI_API_BASE=\n# 模型名(OpenAI: gpt-4o-mini;DeepSeek: deepseek-v4-flash)\nAI_MODEL=gpt-4o-mini\n# 超时(秒,单次请求;网络抖动场景可适当调大)\nAI_TIMEOUT=15.0\n# 单次请求最大输出 Token(控制成本;发布建议/搜索摘要 1024 已足够)\nAI_MAX_TOKENS=1024\n# 最大重试次数(指数退避:1s, 2s, 4s);不含首次调用\nAI_MAX_RETRIES=3\n# 熔断:连续失败次数达到阈值后熔断(防止雪崩)\nAI_CIRCUIT_FAILURE_THRESHOLD=5\n# 熔断恢复时间(秒,超过此时间后半开尝试)\nAI_CIRCUIT_RESET_SECONDS=60\n"}}}}