fix: 保持QQBot验证码轮询状态

This commit is contained in:
sunlei 2026-06-16 18:57:22 +08:00
parent 11e25689e7
commit 041052900a
2 changed files with 3 additions and 0 deletions

View File

@ -986,6 +986,7 @@ export class QqbotNapcatLoginService {
session.status = 'pending';
session.captchaUrl = captchaUrl;
session.preparingRelogin = false;
session.qrcode = undefined;
session.errorMessage = message;
session.expiresAt = Date.now() + this.getSessionTtlMs();
@ -1011,6 +1012,7 @@ export class QqbotNapcatLoginService {
const shouldPublish = session.errorMessage !== message;
session.status = 'pending';
session.captchaUrl = undefined;
session.preparingRelogin = false;
session.qrcode = undefined;
session.errorMessage = message;
session.expiresAt = Date.now() + this.getSessionTtlMs();

View File

@ -860,6 +860,7 @@ describe('QqbotNapcatLoginService', () => {
expect(containerService.resetRuntimeLoginState).not.toHaveBeenCalled();
expect(session.status).toBe('pending');
expect(session.captchaUrl).toBe(captchaUrl);
expect(session.preparingRelogin).toBe(false);
expect(session.errorMessage).toContain('需要完成 QQ 安全验证');
const steps = (
(refreshService as any).sessionEventLogs.get(session.id) ?? []