在不破坏现有 1~9 步自动化流程、消息流、状态机和测试保护面的前提下,逐步拆分当前超大的主文件,降低后续开发和排障成本。
background.js 是 classic service worker,当前依赖 importScripts(...)。sidepanel/sidepanel.html 通过多个 <script> 直接加载脚本。chrome.storage.session 保存流程态chrome.storage.local 保存配置态chrome.runtime.sendMessage 贯穿 sidepanel / background / content scriptschrome.tabs / chrome.webNavigation / chrome.debugger 支撑步骤执行background.js / sidepanel.js / content/*.js 按函数名提取源码执行。bun test 当前基线:84 pass / 0 failbackground.js: 7481 行sidepanel/sidepanel.js: 4531 行content/signup-page.js: 1969 行background.jssidepanel/sidepanel.js优先拆:
暂缓拆:
executeStep1~9autoRunLoophandleMessageresolveVerificationStep原因:这些主干函数既是运行核心,也是当前测试抽取最密集的区域。
由于现有测试会直接从源文件提取函数源码,第一阶段要避免大规模把被测函数从原文件移走。
以下运行边界必须保持:
background.js 继续是 service worker 入口sidepanel/sidepanel.html 继续是 sidepanel 入口background.js
background/
state/
settings.js
session-state.js
runtime/
tabs.js
command-queue.js
logging.js
message-router.js
providers/
hotmail.js
luckmail.js
icloud.js
generated-email.js
steps/
step1.js
step2.js
step3.js
verification.js
step5.js
step6.js
step7.js
step8.js
step9.js
auto-run/
scheduler.js
loop.js
sidepanel/sidepanel.js
sidepanel/
hotmail-manager.js
luckmail-manager.js
icloud-manager.js
auto-run-ui.js
runtime-listeners.js
update-service.js
先拆 sidepanel 的强内聚管理区块。
原因:
拆 background.js 中和主流程相对解耦的桥接层。
拆 background.js 中的运行时基础设施。
最后拆步骤执行器与 auto-run 主循环。
executeStep1~9resolveVerificationStepautoRunLoop本轮先做:
sidepanel/hotmail-manager.jssidepanel.js 通过工厂方式接入 Hotmail managerbun test 继续全绿sidepanel.js 不再直接承载 Hotmail 账号池的大段渲染和事件逻辑