chore(deploy): finalize 0309 SAE rollout updates
Sync deployment documentation to the final successful SAE state and clear pending deployment checklist items. Include backend/frontend/R hardening and diagnostics improvements required for stable production behavior. Made-with: Cursor
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
> **用途**: 开发过程中实时记录所有待部署的变更,下次部署时按此清单逐项执行
|
||||
> **维护规则**: 每次修改 Schema / 新增依赖 / 改配置时,**立即**在此文档追加记录
|
||||
> **Cursor Rule**: `.cursor/rules/deployment-change-tracking.mdc` 会自动提醒
|
||||
> **最后清零**: 2026-03-09(0309 部署完成后清零)
|
||||
> **最后清零**: 2026-03-09(0309 二次部署完成后清零)
|
||||
|
||||
---
|
||||
|
||||
@@ -15,24 +15,19 @@
|
||||
|
||||
| # | 变更内容 | 迁移文件 | 优先级 | 备注 |
|
||||
|---|---------|---------|--------|------|
|
||||
| DB-1 | AIA 新增 `attachments` 持久化表(附件文本真相源) | `prisma/migrations/20260309_add_aia_attachments_persistence/migration.sql` | 高 | 解决“附件仅缓存”导致偶发“内容已过期或不存在”,支持缓存 miss 回源数据库 |
|
||||
| — | *暂无* | | | |
|
||||
|
||||
### 后端变更 (Node.js)
|
||||
|
||||
| # | 变更内容 | 涉及文件 | 需要操作 | 备注 |
|
||||
|---|---------|---------|---------|------|
|
||||
| BE-1 | 移除全部 SSE 端点 `Connection: keep-alive` 响应头(HTTP/2 禁止头部) | `chat.routes.ts`, `session.routes.ts`, `workflow.routes.ts`, `OpenAIStreamAdapter.ts`, `ExtractionController.ts`, `researchController.ts`, `conversationController.ts`, `chatController.ts`×2, `StreamAIController.ts` | 重新构建镜像 | 修复 SAE 环境下 SSE 流式响应 `ERR_HTTP2_PROTOCOL_ERROR` |
|
||||
| BE-2 | 优雅停机增强:健康检查停机时返回 503 + 30s 强制超时兜底 | `healthCheck.ts`, `health/index.ts`, `index.ts` | 重新构建镜像 | CLB 在滚动更新时不再向濒死 Pod 派发请求 |
|
||||
| BE-3 | AIA 附件链路稳定性修复(上传落库 + 发送回源 + 错误分层) | `aia/services/attachmentService.ts`, `aia/services/conversationService.ts` | 重新构建镜像 | 上传阶段持久化附件文本与提取状态;发送时缓存未命中自动回源 DB 并回填,显著降低“对话中途上传附件无法识别”概率 |
|
||||
| BE-4 | 生产环境缓存安全护栏:禁止 `CACHE_TYPE=memory` 启动 | `config/env.ts` | 重新构建镜像 | 防止多实例缓存不共享导致附件/会话等状态偶发丢失,符合云原生规范 |
|
||||
| BE-5 | 登录验证码接入阿里云短信(保留 mock 模式) | `auth.service.ts`, `common/sms/aliyunSms.service.ts`, `config/env.ts` | 重新构建镜像 | `sendVerificationCode` 改为真实短信发送;生产建议 `SMS_PROVIDER=aliyun`,开发可继续 `mock` |
|
||||
| — | *暂无* | | | |
|
||||
|
||||
### 前端变更
|
||||
|
||||
| # | 变更内容 | 涉及文件 | 需要操作 | 备注 |
|
||||
|---|---------|---------|---------|------|
|
||||
| FE-1 | Nginx `Connection` 头部条件化(`map $http_upgrade $connection_upgrade`) | `nginx.conf` | 重新构建镜像 | SSE 请求不再携带错误的 `Connection: upgrade`,WebSocket 不受影响 |
|
||||
| FE-2 | SSA 对话网络错误友好提示 + 指数退避自动重试 2 次 + 手动重试按钮 | `useSSAChat.ts`, `SSAChatPane.tsx`, `ssa.css` | 重新构建镜像 | 瞬时网络错误自动重试 2 次(2s/4s 指数退避),失败后中文友好提示 + 蓝色重试按钮 |
|
||||
| — | *暂无* | | | |
|
||||
|
||||
### Python 微服务变更
|
||||
|
||||
@@ -50,7 +45,7 @@
|
||||
|
||||
| # | 变更内容 | 服务 | 变量名 | 备注 |
|
||||
|---|---------|------|--------|------|
|
||||
| ENV-1 | 新增短信网关配置(登录验证码) | nodejs-backend | `SMS_PROVIDER`,`SMS_ENDPOINT`,`SMS_SIGN_NAME`,`SMS_TEMPLATE_CODE_LOGIN`,`SMS_TEMPLATE_CODE_RESET`,`ALIBABA_CLOUD_ACCESS_KEY_ID`,`ALIBABA_CLOUD_ACCESS_KEY_SECRET` | 若生产使用阿里云短信,需在 SAE 配置完整变量;`SMS_TEMPLATE_CODE_RESET` 可选(默认复用登录模板) |
|
||||
| — | *暂无* | | | |
|
||||
|
||||
### 基础设施变更
|
||||
|
||||
@@ -88,6 +83,17 @@
|
||||
|
||||
## 历史(已部署,仅供追溯)
|
||||
|
||||
### 0309 二次部署已清零项
|
||||
|
||||
| # | 变更内容 | 部署日期 | 结果 |
|
||||
|---|---------|---------|------|
|
||||
| DB | AIA 新增 `attachments` 持久化表(`20260309_add_aia_attachments_persistence`) | 2026-03-09 | ✅ |
|
||||
| R | v1.0.2 → v1.0.5(包诊断接口、构建期缺包校验、错误映射修复、`%||%` 修复) | 2026-03-09 | ✅ |
|
||||
| BE | v2.9 → v2.10(SSE/优雅停机/AIA附件/短信能力等变更) | 2026-03-09 | ✅ |
|
||||
| FE | v2.6 → v2.7(SSE 代理与友好重试体验优化) | 2026-03-09 | ✅ |
|
||||
| ENV | nodejs-backend-test: `R_SERVICE_URL` → `http://172.17.197.26:8080` | 2026-03-09 | ✅ |
|
||||
| ENV | frontend-nginx-service: `BACKEND_SERVICE_HOST` → `172.17.173.109` | 2026-03-09 | ✅ |
|
||||
|
||||
### 0309 部署已清零项
|
||||
|
||||
| # | 变更内容 | 部署日期 | 结果 |
|
||||
|
||||
Reference in New Issue
Block a user