Skip to content

fix(oauth): 本地 CPA 场景下强制执行 Step 9,并修复 Step 8 Stop 中断#20

Closed
2478love wants to merge 1 commit into
QLHazyCoder:masterfrom
2478love:fix-step8-stop-step9-local-cpa
Closed

fix(oauth): 本地 CPA 场景下强制执行 Step 9,并修复 Step 8 Stop 中断#20
2478love wants to merge 1 commit into
QLHazyCoder:masterfrom
2478love:fix-step8-stop-step9-local-cpa

Conversation

@2478love
Copy link
Copy Markdown

变更说明

  • 修复本地 CPA(localhost / 127.0.0.1)场景下,Step 8 捕获 callback 后 Step 9 被直接跳过的问题;现在仍会回到 CPA 面板填写回调 URL 并点击提交
  • 修复 Step 8 的 chrome.debugger 点击链路在收到 Stop 后仍继续发送鼠标事件的问题
  • 同步更新 README 说明与 tests/step9-cpa-mode.test.js 的回归预期

验证

  • node tests\\step8-callback-handling.test.js
  • node tests\\step8-debugger-stop.test.js
  • node tests\\step8-state-timeout-retry.test.js
  • node tests\\step8-stop-cleanup.test.js
  • node tests\\step9-cpa-mode.test.js
  • node tests\\step9-localhost-cleanup-scope.test.js

@2478love 2478love marked this pull request as draft April 12, 2026 03:50
@QLHazyCoder
Copy link
Copy Markdown
Owner

感谢补充这个修复。

这里有一个点需要先确认清楚:你这次把 shouldBypassStep9ForLocalCpa() 改成了始终 false,也就是即使 CPA 面板部署在 localhost / 127.0.0.1,也要求强制执行 Step 9 的回填和提交。

这一点和当前主分支已经采用的设计是冲突的:当前逻辑认为本地 CPA 场景下,Step 8 已经拿到有效 callback 时,可以直接完成,不再重复提交 Step 9。

因为这边目前不使用本地 CPA,所以没法直接验证到底是哪种行为更正确。想请你补充一下:

  1. 你这边复现到的具体场景是什么?
  2. 为什么本地 CPA 场景下,Step 8 拿到 callback 之后,流程还不能算完成?
  3. 如果跳过 Step 9,会出现什么实际问题?最好能附上日志、页面状态或最小复现步骤。
  4. 这个现象是通用行为,还是只针对你当前使用的某个本地 CPA 面板实现?

另外,clickWithDebugger() 里补 throwIfStopped() 这一部分我看起来是合理的,这块和上面“本地 CPA 是否必须执行 Step 9”不是同一个层面的改动。若方便的话,后续也可以考虑拆开说明,避免把“停止中断修复”和“本地 CPA 流程策略变更”混在一起判断。

我这边先等你补充这个设计依据,再决定这部分是否合并。

@2478love
Copy link
Copy Markdown
Author

2478love commented Apr 12, 2026 via email

@QLHazyCoder
Copy link
Copy Markdown
Owner

感谢补充说明,也感谢把这两个点一起提出来。

这边已经先把 Step 8 debugger stop 这一部分单独吸收进来了,因为这块是明确成立的修复。

至于“本地地址的 CPA 是否应该强制执行 Step 9,不再跳过”这部分,我这边会再继续测试和分析,确认本地地址场景下 callback 的实际消费方式之后,再决定最终应该采用哪种策略。

也就是说,这一块我暂时先不按通用 bug 直接合并,等把本地回调路径和面板确认方式验证清楚再定。

@QLHazyCoder
Copy link
Copy Markdown
Owner

?????

?????????????????????? CPA ?????????????????????????????????????? CPA ??? Step 9??????????9????????

????????? PR ??????????????????????????????????

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.

2 participants