记录OCR生产配置与部署根收敛方案(07-28-travel-reimbursement-guide)
这个提交包含在:
@@ -15,6 +15,14 @@
|
|||||||
- provider 从 `mock` 直接切换为 `tencent` 只能发生在服务开通、权限、计费状态和密钥均确认后。任一前置失败时保持禁止真实票据上传,不用 mock 代替真实能力。
|
- provider 从 `mock` 直接切换为 `tencent` 只能发生在服务开通、权限、计费状态和密钥均确认后。任一前置失败时保持禁止真实票据上传,不用 mock 代替真实能力。
|
||||||
- 计费只使用 `RecognizeGeneralInvoice` 对应的通用票据识别(高级版)每月 1,000 次专用免费包,不接独立火车票接口。生产固定中国大陆地域;控制台确认免费包已到账、后付费关闭,并配置费用或余额告警。免费包耗尽时服务失败关闭,应用记录额度类可解释终态,不自动付费续用。
|
- 计费只使用 `RecognizeGeneralInvoice` 对应的通用票据识别(高级版)每月 1,000 次专用免费包,不接独立火车票接口。生产固定中国大陆地域;控制台确认免费包已到账、后付费关闭,并配置费用或余额告警。免费包耗尽时服务失败关闭,应用记录额度类可解释终态,不自动付费续用。
|
||||||
|
|
||||||
|
### 生产部署根收敛
|
||||||
|
|
||||||
|
- 生产只读核验发现,活动 Compose 的工作目录被错误设置成标准部署根下的 `deploy/trialrun` 子目录,导致仓库再次同步到自身子目录,形成重复的 `deploy/trialrun/deploy/trialrun`。活动 server、环境文件和四个 systemd 运维 timer 均已引用该嵌套拓扑,因此它不是可直接删除的闲置副本。
|
||||||
|
- 本次发布把部署根收敛回 deploy 脚本约定的标准单层根。迁移窗口开始时先暂停相关 timer,将当前活动根原子改名为时间戳回退目录,再创建干净标准根;不在原目录上用 `rsync --delete` 就地清理,以免同时破坏活动配置与回退证据。
|
||||||
|
- 从回退目录把生产环境文件复制到标准根的预期相对位置,保持所有者和 `0600` 权限,不读取、打印或经本地中转 Secret。数据库和附件继续使用部署根之外的既有宿主目录,不搬迁、不初始化、不重置。
|
||||||
|
- 使用同一 Compose project 和已批准提交部署 server;数据库容器与数据卷保持原位,不创建 worker。部署后重新安装自动备份 daily/watchdog/drill-reminder 与 WARCH3 timer,使所有 WorkingDirectory、ExecStart 和环境文件引用只指向标准根。
|
||||||
|
- 验收包括活动 Compose 工作目录不再重复、环境文件唯一受控、server `/ready` 和构建标识正确、provider 为 `tencent`、仅一个 job executor、四个 timer 启用且各自 dry/status 检查通过。旧根作为短期回退保留,本任务不删除;后续删除需在新备份成功且另行批准后执行。
|
||||||
|
|
||||||
## 腾讯 API 合同
|
## 腾讯 API 合同
|
||||||
|
|
||||||
- API:`RecognizeGeneralInvoice`,版本 `2018-11-19`,由当前腾讯 Node SDK 调用。
|
- API:`RecognizeGeneralInvoice`,版本 `2018-11-19`,由当前腾讯 Node SDK 调用。
|
||||||
@@ -46,6 +54,7 @@
|
|||||||
|
|
||||||
- adapter 聚焦测试、配置 smoke、腾讯调用或任一真实样票验证失败:停止开放真实票据,不继续制造 pending/retry 数据。
|
- adapter 聚焦测试、配置 smoke、腾讯调用或任一真实样票验证失败:停止开放真实票据,不继续制造 pending/retry 数据。
|
||||||
- 若新配置导致运行异常,恢复变更前环境文件的受控副本并重建同一 server;回退后不得使用 mock 处理真实票据。
|
- 若新配置导致运行异常,恢复变更前环境文件的受控副本并重建同一 server;回退后不得使用 mock 处理真实票据。
|
||||||
|
- 若标准根部署、timer 重装或健康检查失败,停止继续发布,将 Compose 工作目录和 systemd unit 恢复到时间戳回退根并重建原 server;数据库和附件目录不参与回退切换。
|
||||||
- 样票失败记录使用可解释状态和脱敏摘要,不直接修改数据库字段绕过状态机。
|
- 样票失败记录使用可解释状态和脱敏摘要,不直接修改数据库字段绕过状态机。
|
||||||
|
|
||||||
## 历史凭证结论
|
## 历史凭证结论
|
||||||
|
|||||||
@@ -3,9 +3,10 @@
|
|||||||
## 1. 外部前置门禁
|
## 1. 外部前置门禁
|
||||||
|
|
||||||
- [x] 用户确认采用 OA OCR 专用最小权限子用户密钥。
|
- [x] 用户确认采用 OA OCR 专用最小权限子用户密钥。
|
||||||
- [ ] 用户在腾讯云侧创建或轮换该专用密钥。
|
- [x] 用户在腾讯云侧创建该专用子用户和密钥。
|
||||||
- [ ] 在实际账号确认通用票据识别(高级版)每月 1,000 次专用免费包已到账,生产使用中国大陆地域。
|
- [x] 在实际账号确认通用票据识别(高级版)每月 1,000 次专用免费包已到账,生产配置使用中国大陆地域。
|
||||||
- [ ] 在 OCR 控制台设置页确认后付费关闭,并配置费用或余额告警;额度耗尽时接受 OCR 失败关闭。
|
- [x] 在 OCR 控制台设置页确认后付费关闭;额度耗尽时接受 OCR 失败关闭。
|
||||||
|
- [ ] 配置费用或余额告警作为二次兜底。
|
||||||
- [ ] 确认腾讯 OCR 服务和 `ocr:RecognizeGeneralInvoice` 最小权限可用,不接独立火车票接口。
|
- [ ] 确认腾讯 OCR 服务和 `ocr:RecognizeGeneralInvoice` 最小权限可用,不接独立火车票接口。
|
||||||
- [ ] 确认住宿电子普通发票和铁路电子客票各一份 PDF 样票的测试授权及仓库外受控位置;不得向 Codex 或聊天提供票据。
|
- [ ] 确认住宿电子普通发票和铁路电子客票各一份 PDF 样票的测试授权及仓库外受控位置;不得向 Codex 或聊天提供票据。
|
||||||
|
|
||||||
@@ -20,11 +21,22 @@
|
|||||||
|
|
||||||
## 3. 生产配置
|
## 3. 生产配置
|
||||||
|
|
||||||
- [ ] 对当前生产环境文件制作受控、限权、短期回退副本,不输出内容。
|
- [x] 对当前生产环境文件制作受控、限权、短期回退副本,不输出内容。
|
||||||
- [ ] 由用户在现场终端静默写入 `OCR_PROVIDER=tencent` 及专用凭证;地域沿用核验后的配置。
|
- [x] 由用户在现场终端静默写入 `OCR_PROVIDER=tencent` 及专用凭证;地域设置为中国大陆地域。
|
||||||
- [ ] 脱敏检查 provider、凭证非空、环境文件权限和配置合同。
|
- [x] 脱敏检查 provider、凭证非空、环境文件权限和配置合同。
|
||||||
- [ ] 仅重建实际执行 jobs 的 server,不启动独立 worker。
|
- [ ] 仅重建实际执行 jobs 的 server,不启动独立 worker。
|
||||||
|
|
||||||
|
### 3.1 生产部署根收敛
|
||||||
|
|
||||||
|
- [x] 只读确认活动 Compose、生产环境文件和四个运维 timer 均引用重复嵌套部署根。
|
||||||
|
- [ ] 暂停相关 timer,将活动根原子改名为时间戳回退目录,并建立干净标准单层部署根。
|
||||||
|
- [ ] 把生产环境文件在远端复制到标准相对位置,保持所有者和 `0600` 权限;不回显或经本地传输 Secret。
|
||||||
|
- [ ] 使用 `DEPLOY_DATA_MODE=existing`、既有外置数据库/附件宿主目录和同一 Compose project 发布批准提交;不得初始化数据或创建 worker。
|
||||||
|
- [ ] 重新安装 daily、watchdog、drill-reminder 和 WARCH3 timer,确认 unit 不再引用重复目录。
|
||||||
|
- [ ] 验证 `/ready`、构建标识、单一 job executor、四个 timer 状态和一次受控备份/新鲜度检查;旧根仅保留作短期回退,不在本任务删除。
|
||||||
|
|
||||||
|
回退点:标准根发布或任一 timer 验收失败,恢复时间戳回退根及原 unit 引用并重建原 server;数据库和附件宿主目录不移动、不重置。
|
||||||
|
|
||||||
回退点:外部依赖 smoke 前若任一配置门禁失败,恢复变更前环境文件并重建 server;保持真实票据禁止上传。
|
回退点:外部依赖 smoke 前若任一配置门禁失败,恢复变更前环境文件并重建 server;保持真实票据禁止上传。
|
||||||
|
|
||||||
## 4. 生产与真实能力验证
|
## 4. 生产与真实能力验证
|
||||||
|
|||||||
在新工单中引用
屏蔽一个用户