chore: 固化NapCat验证码工作流

This commit is contained in:
sunlei 2026-06-13 09:25:50 +08:00
parent 1d899734b4
commit 76bcbffcfe

View File

@ -607,6 +607,7 @@ export function buildComponentWorkflow(
"后端拿旧 login state 判断成功", "后端拿旧 login state 判断成功",
"把 ACCOUNT 当成登录凭据,忽略 QQ 历史登录态、账号密码或扫码兜底", "把 ACCOUNT 当成登录凭据,忽略 QQ 历史登录态、账号密码或扫码兜底",
"在请求日志、Loki 或列表接口里暴露 QQ 登录密码", "在请求日志、Loki 或列表接口里暴露 QQ 登录密码",
"把 proofWaterUrl 当作验证码完成链接,或伪造 ticket/randstr 继续登录",
], ],
files: [ files: [
"Node/kt-template-online-api/src/qqbot/account", "Node/kt-template-online-api/src/qqbot/account",
@ -619,6 +620,8 @@ export function buildComponentWorkflow(
"看门狗自动登录只跑 quick -> password扫码必须由管理员手动触发", "看门狗自动登录只跑 quick -> password扫码必须由管理员手动触发",
"账号登录密码前端只传 RSA-OAEP 加密字段 encryptedLoginPassword后端用 QQBOT_ACCOUNT_SECRET_KEY 二次加密落库,列表不回显", "账号登录密码前端只传 RSA-OAEP 加密字段 encryptedLoginPassword后端用 QQBOT_ACCOUNT_SECRET_KEY 二次加密落库,列表不回显",
"ACCOUNT 只指定目标账号;免扫码优先依赖数据卷历史登录态,密码登录失败或触发强制扫码时再进二维码", "ACCOUNT 只指定目标账号;免扫码优先依赖数据卷历史登录态,密码登录失败或触发强制扫码时再进二维码",
"密码登录触发验证码时保持 scan session pendingAdmin 通过 TencentCaptcha 拿 ticket/randstr/sid再由 API 调用同一 NapCat 容器 /api/QQLogin/CaptchaLogin",
"验证码 pending、cancel、expire、success 和失败终态都必须清理临时密码环境变量,清理失败要阻断成功或二维码兜底",
"SSE 返回 step/status/qrcode/error", "SSE 返回 step/status/qrcode/error",
"容器重启只在必要时触发,优先直接通信 NapCat API", "容器重启只在必要时触发,优先直接通信 NapCat API",
], ],
@ -627,7 +630,7 @@ export function buildComponentWorkflow(
"docker inspect 确认已绑定容器存在 ACCOUNT=<selfId>", "docker inspect 确认已绑定容器存在 ACCOUNT=<selfId>",
"docker restart 后 WebUI CheckLoginStatus/GetQQLoginInfo 验证 isLogin/online/uin失败时检查 NapCat 日志是否为无历史登录记录、密码登录失败或需扫码验证", "docker restart 后 WebUI CheckLoginStatus/GetQQLoginInfo 验证 isLogin/online/uin失败时检查 NapCat 日志是否为无历史登录记录、密码登录失败或需扫码验证",
"scan/events 能看到 quick-login-start/quick-login-fallback/password-login-start/password-login-fallback/重置/生成二维码/等待扫码/成功或失败", "scan/events 能看到 quick-login-start/quick-login-fallback/password-login-start/password-login-fallback/重置/生成二维码/等待扫码/成功或失败",
"目标 Jest 覆盖 quick 成功、password 成功、password 失败进二维码、密文保存、容器 env 注入", "目标 Jest 覆盖 quick 成功、password 成功、password 失败进二维码、验证码 CaptchaLogin 回传、密文保存、容器 env 注入和清理失败阻断",
"手动刷新不超时", "手动刷新不超时",
"过期二维码不再复用", "过期二维码不再复用",
], ],