fix(t233): add redacted ERP diagnostics

This commit is contained in:
QiuSW
2026-07-29 11:24:04 +08:00
parent 817a968233
commit 1e703ef257
14 changed files with 412 additions and 28 deletions
+11 -6
View File
@@ -4,7 +4,7 @@ title: 修复 ERP 预检错误映射并增加受控诊断日志
phase: 2
deps:
- T-232
status: PLANNED
status: DONE
created: 2026-07-29
context_ref: b316287
work_branch: null
@@ -12,6 +12,7 @@ write_paths:
- docs/tasks/T-233.md
- docs/current-state.md
- docs/api.md
- start-backend.bat
- backend-api/.env.example
- backend-api/cmd/api/**
- backend-api/internal/config/**
@@ -37,17 +38,18 @@ client 不记录请求路径、HTTP 状态或响应摘要,无法区分 TLS/网
token、Cookie、收件人、电话、地址和订单标识均替换为 `[REDACTED]`。图片、非 JSON 和
传输失败只输出类型、长度、状态或固定类别,不输出原始内容或 Go error。
4. 不记录请求 body、完整 URL query、header、Cookie、OCR 文本或密钥。启动时仅记录调试
已启用,不输出配置值;调试结束后将 `.env` 设回 `false`。
已启用,不输出配置值;调试结束后将 `.env` 设回 `false`。根目录
`start-backend.bat --erp-debug` 可只对本次 API 进程开启同一开关。
## 验收要点
- [ ] ERP 不可用可从 `/freight/import` 日志看到
- [x] ERP 不可用可从 `/freight/import` 日志看到
`freight_import_preflight_failed code=ERP_UNAVAILABLE status=503`。
- [ ] 开启 `CMROUBAO_ERP_DEBUG_LOG=true` 后,验证码、登录、用户校验及后续查询均有可关联
- [x] 开启 `CMROUBAO_ERP_DEBUG_LOG=true` 后,验证码、登录、用户校验及后续查询均有可关联
的脱敏请求/响应日志;默认关闭时没有这些日志。
- [ ] 日志绝不含 ERP 凭证、验证码、Cookie、token、订单号、收件人、手机号、地址或原始
- [x] 日志绝不含 ERP 凭证、验证码、Cookie、token、订单号、收件人、手机号、地址或原始
非 JSON/图片 body。
- [ ] 配置、脱敏、ERP client 和 Web adapter 均有测试;标准 Go 验证和入口构建通过。
- [x] 配置、脱敏、ERP client 和 Web adapter 均有测试;标准 Go 验证和入口构建通过。
## 边界
@@ -59,3 +61,6 @@ client 不记录请求路径、HTTP 状态或响应摘要,无法区分 TLS/网
- 2026-07-29:创建任务。现场终端提供 `freight_import_failed status=503`,确认稳定 code 在
Web adapter 丢失;本机没有可重放的真实 ERP 账户响应。
- 2026-07-29:修复 CreateFreightSync 复用所有预检错误映射,增加受控 ERP 诊断 logger、
JSON 递归脱敏和 4 KiB 限制,并提供 `start-backend.bat --erp-debug` 一次性开关。标准 Go
测试、race、vet 和三个入口构建均通过;未请求真实 ERP。