Skip to content

fix: 修复页面间切换不及时的问题#25

Closed
maya1900 wants to merge 23 commits into
QLHazyCoder:devfrom
maya1900:fix/issue
Closed

fix: 修复页面间切换不及时的问题#25
maya1900 wants to merge 23 commits into
QLHazyCoder:devfrom
maya1900:fix/issue

Conversation

@maya1900
Copy link
Copy Markdown
Collaborator

  1. 修复第三步填写邮箱密码,跳转到 duck 拿到邮箱没有立即切换到注册页;
  2. 获取验证码后没有及时切换到注册/登录页面

@github-actions github-actions Bot changed the base branch from master to dev April 12, 2026 09:15
@github-actions
Copy link
Copy Markdown

PR 已自动转向开发分支

这个 PR 原本指向 master,系统已自动把目标分支改成 dev

后续自动审查和自动合并都只会针对 dev 进行,master 不会被自动合并。

GitHub 重新计算差异后,工作流会再次运行。

@maya1900
Copy link
Copy Markdown
Collaborator Author

  1. 修复第三步填写邮箱密码,跳转到 duck 拿到邮箱没有立即切换到注册页;
  2. 获取验证码后没有及时切换到注册/登录页面

第2 点说错了:修复点击重发验证码后没有立即切换到邮箱页面导致刷新报错;
补充:
3. 修复 inbucket 邮箱没有正确获取刷新按钮

QLHazyCoder and others added 8 commits April 12, 2026 19:43
- bring the SUB2API OAuth generation and callback account-creation workflow from dev into master
- include sidepanel source switching and background state handling for CPA and SUB2API modes
- keep the dev-side timeout fix that avoids duplicate SUB2API step execution when content-script responses are slow
- 扩展同意页文案匹配,覆盖新的 Sign in to Codex 提示
- 优先从 OAuth consent form 内定位 Continue 提交按钮
- 用 form action 和按钮状态辅助识别真正的同意页
@QLHazyCoder
Copy link
Copy Markdown
Owner

codex-gpt-5.4分析结果(不一定完全正确,请仔细确认无问题下面继续评论):

  1. background.jsensureAutoEmailReady() 里把原来的 fetchGeneratedEmail(currentState, { generateNew: true, generator }) 改成了固定调用 fetchDuckEmail(...)。当前基线代码仍然支持 emailGenerator=cloudflare,所以这个改动会让自动流程在 Cloudflare 模式下直接回退成 Duck 邮箱,属于明确功能回退。

  2. 同一函数成功分支的日志使用了 duckAttemptDUCK_EMAIL_MAX_ATTEMPTS,但这两个标识在 PR 代码里没有定义。首次成功获取 Duck 邮箱后,执行到这行日志就会抛 ReferenceError,自动流程会在邮箱已拿到的情况下中断。

  3. executeStep4() / runStep7Attempt() 现在无条件调用 focusMailTabForVerification(mail, step),但 getMailConfig() 在 Hotmail 模式下只返回 { provider, label },没有 source/url。这会让 Hotmail 流程进入 reuseOrCreateTab(undefined, undefined) 这类无效标签页操作,直接破坏 Hotmail 的验证码流程。

QLHazyCoder and others added 12 commits April 13, 2026 02:35
- 合并 PR QLHazyCoder#29 的核心改动:扩展 Sign in to Codex 文案与 consent form 结构识别,优先在授权表单内定位 Continue 按钮
- 本地补充修复:无额外修复,直接吸收 PR 变更
- 影响范围:OAuth step 8 同意页识别与 Continue 按钮定位
…st mocks, improve Hotmail AADSTS90023 error

Agent-Logs-Url: https://github.com/QLHazyCoder/codex-oauth-automation-extension/sessions/2111e544-f823-4faa-b8b6-57f506fe45ac

Co-authored-by: QLHazyCoder <109800873+QLHazyCoder@users.noreply.github.com>
- 合并 PR QLHazyCoder#31 的核心改动:恢复 Step 9 标签页清理函数、补齐 Step 8/9 测试 mock,并优化 Hotmail AADSTS90023 报错提示\n- 本地补充修复:按真实 localhost callback 首段路径生成清理前缀,兼容 /auth/callback 与 /codex/callback\n- 影响范围:background Step 9 cleanup、Hotmail 账号校验、Step 8/9 回归测试
@maya1900
Copy link
Copy Markdown
Collaborator Author

合并了 master 分支

@QLHazyCoder
Copy link
Copy Markdown
Owner

codex-gpt-5.4分析结果(不一定完全正确,请佬友确认无问题下面继续评论):

  1. 这次修复把验证码填写后的切页切换封装成了 activateTabWithRetry,但同一条链路里的 executeStep4()requestVerificationCodeResend() 仍然直接调用 chrome.tabs.update(signupTabId, { active: true })。如果这里仍然命中这次要规避的 “Tabs cannot be edited right now” 临时错误,步骤 4/7 还是会卡在没有切回注册/登录页的状态,问题并没有被彻底消掉。
  2. sidepanel/sidepanel.js 里的通用 fetchGeneratedEmail() 现在无论是手动点“获取邮箱”,还是步骤 3 自动取 Duck 邮箱,都会固定传 returnToSignupPageOnSuccess: true。这会把“切回注册页”的副作用扩散到所有手动取邮箱场景:只要之前存在一个 signup-page 标签页,单独点获取邮箱也会被强制切回那个页。这个行为如果只是想修步骤 3,建议默认关闭,只在步骤 3 / 自动流程显式开启。

@maya1900 maya1900 closed this Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants