fix(t236): retry rejected ERP captchas

This commit is contained in:
QiuSW
2026-07-29 11:54:06 +08:00
parent d7ab970f5a
commit cf83fb50e4
6 changed files with 237 additions and 23 deletions
+8 -5
View File
@@ -39,11 +39,14 @@ T-225 至 T-227 在 `backend-api/internal/platform/shunyunbao` 用脱敏 fixture
- 所有结果必须经 Go allowlist 归一化;fixture 专门含收件信息、Cookie/JWT 标记值,
测试断言它们不会出现在输出或错误里。
Go 直连的验证码、登录、Cookie jar 和查询 source 都在 API 进程内。T-230 在未认证时仅可将
验证码图片一次提交给受控本机/HTTPS OCR endpoint,结果只用于当前登录请求;不得写入 Redis、
SQLite、普通日志或浏览器,也不得轮询或重试。T-234 仅允许显式 diagnostics 进程短时输出有效
OCR 文本;T-235 仅在受锁内存中保存已核验 user id/username,不保存登录 token。HTTP 401/403
或 ERP code `-2` 才代表会话失效;其他 `status=false` 是协议错误。真实线上请求不属于自动化测试。
Go 直连的验证码、登录、Cookie jar 和查询 source 都在 API 进程内。T-230 在未认证时只可将
验证码图片提交给受控本机/HTTPS OCR endpoint,结果只用于当前登录请求;不得写入 Redis、
SQLite、普通日志或浏览器。T-236 仅在 ERP 登录精确返回“图片验证码不正确”时,在首次失败后
额外重试最多 6 次;每次重新获取验证码和调用 OCR,最多 7 次登录且认证总预算为 20 秒。其他
登录拒绝、OCR、网络或协议错误不重试。T-234 仅允许显式 diagnostics 进程短时输出有效 OCR
文本和固定登录尝试分类;T-235 仅在受锁内存中保存已核验 user id/username,不保存登录 token。
HTTP 401/403 或 ERP code `-2` 才代表会话失效;其他非登录接口 `status=false` 是协议错误。
真实线上请求不属于自动化测试。
## 身份和规范字段