﻿小灰灰工具2.0 · 20261020_comment_close_a18d6c42

评论任务工具栏在“打开选中房间”和“删除账号”之间新增“关闭窗口”。
按钮针对“准备账号”下拉框里选中的账号，不是账号列表勾选项，也不取决于是否勾选主播。
点击后走原有关闭核对流程：打开中的窗口先核对账号登录身份，再关闭；身份匹配保留账号、环境和数据；明确未登录/登录身份不符时，确认关闭及关联环境删除后才清理账号、绑定记录、相关验证邮件/验证记录和评论记录，释放名额。保留无敏感内容的历史任务占位和必要操作审计。
未知身份、网络超时、CF挑战不直接当成异常账号删除：能确认关闭则只关窗口并保留账号。环境删除结果未确认时保留本地账号与名额；进程变化、环境归属不明时不关闭/删除新窗口。不批量操作其他账号。已关闭的窗口不为检查而重新打开。
账号正被注册、验证、主播获取或评论任务占用时按钮不执行关闭；请先停止对应任务并等待收尾。后台保留占用/进程/归属核对。
新增account_id与env_id双重关联校验，选择后账号绑定变化则拒绝操作，避免关错窗口。

沿用9c自动分组修复、独立补充监控、晚到邮件接续、评论账号接续及CapSolver规则；未修改真实解题和邮件解析。删除异常账号导致数量不足时，只有用户本轮已开启的补充监控才按原规则补充；程序启动默认未开启监控。
本轮使用假账号、假比特服务和本地拦截页面验收，没有操作用户真实窗口、删除真实账号/环境或运行真实注册、收信、评论、付费解题。

三份产物同版本。更新ZIP不覆盖data；新用户完整ZIP为空数据；本机独立测试目录从已退出的现用9c取得源/目标双实例锁后一致复制账号、任务、配置和本机授权。个人数据仅保留在本机dist。旧目录与桌面入口不覆盖，两版数据不自动同步，请分时运行。
本机链接打开文件夹，使用目录内“新版”快捷方式正常启动；“演示模式”只展示虚构数据。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 20261020_replenish_group_9c3a6f81

修复：补充账号监控错误提示“分组已改变”。
原因：自动选择分组时配置为空字符串，解析后的实际分组ID非空；旧版把这两个不同含义的值直接比较，导致误判。
现在分别记录 configured_group_id（用户选择）和 group_id（解析后的实际ID）。监控用配置快照检查真实选择是否变化，创建任务继续使用已解析的实际ID；解析期间选择变化也拒绝启用旧计划。没有删除保护，也没有把自动选择强制改成手动分组。

补充账号规则保持：每次启动默认未勾选；勾选即独立监控，不足目标即补，达到目标暂停，跌破再补；在途任务预留名额，已结束/待核对任务不再永久占补充预留。取消或停止新增关闭监控，不强杀已发请求。手动开始每次仍创建填写数量的完整批次，只更新已开启监控的目标数量。
晚到邮件接续、评论缺账号后自动续发、已验证身份核对与窗口关闭、CapSolver规则均保持。本轮未改解题或邮件解析源码。

验收新增真实非空ID及完整分组解析链路的离线夹具，覆盖自动选择、显式选择、真正改组、解析中改组、取消/停止、重复tick、达到后再跌破与手动完整批次。
不代用户真实注册、收信、评论、访问验证链接或付费解题；线上业务效果仍需用户测试。

三份产物同版本：更新ZIP不覆盖data；新用户完整ZIP无data与个人信息；本机独立目录使用已退出4b的双锁一致快照，保留账号、任务、配置和本机授权。个人数据只留本机dist，旧目录和桌面入口不覆盖，两版分时运行、数据不自动同步。
本机版链接打开文件夹，请使用目录内“新版”快捷方式启动。启动后补充账号仍默认关闭，填写目标数量后勾选即可，无须先点开始注册。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 已结束任务不再阻挡账号补充
版本：20261020_replenish_finished_4b9d7e12，基于2d8f6a40代码。

本次修复：补充账号的预留数只统计真正排队、执行中或等待计划重试的注册/验证任务（pending/running/retry_wait）。失败、已结束、待核对、停止、中断及非调度暂停任务，不再占补充预留。
例如目标5，账号列表已有4个完成账号，另1个提交结果未知的任务已经结束：现在会建立1个全新身份的补充任务；下一次检查会把这个新在途任务计入预留，不会每次检查都再建一个。若原第5个仍在实际运行，则继续等待，不重复排队。

原异常任务、邮箱、用户名、提交意图和匹配邮件全部保留；补充不会重新提交旧账号，也不删除旧环境或重置验证次数。新账号生成仍排除历史身份，已有提交/验证的防重复保护不变。
若旧任务随后又验证成功，账号数可能暂时超过目标；程序会停止新增补充，不会自动删除成功账号。环境总名额仍受原20个上限约束，旧环境保留并不等于释放物理名额。

保留2d提交异常后的晚到邮件接续修复与显式“继续验证”；用户停止的任务不因升级自动继续。保留7e独立补充（每次启动默认不勾选，勾选后即监控）及评论自动续发、5c/8a原有修复。CapSolver触发和邮件解析不改。
使用时先退出旧版，从本机目录“新版”启动；任务数量设置为所需目标，再勾选“补充账号”。手动“开始注册”仍创建完整批次，仅更新已开启监控的目标。

本机数据来自用户实际使用且已退出的7e最新独立一致快照（用户尚未使用2d），保留原任务、匹配邮件、配置与本机授权。源/目标双锁复制、14表一致，旧目录不覆盖；两版分时运行、数据不自动同步。个人数据只保留本机dist，不得外发。新用户完整ZIP空数据、更新ZIP不覆盖data。
本轮只进行离线模拟、补丁回滚、真实界面虚构数据和实际EXE回归；没有代用户真实注册、收信、打开验证链接、评论或付费解题。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 提交异常后的匹配邮件接续修复
版本：20261020_late_mail_resume_2d8f6a40，基于7e4b1c93。

已确认的漏洞：注册请求发出后，任务因通用执行异常转为待人工确认；验证邮件后来已被收取、严格匹配并关联原任务，但旧代码只唤醒带特定“提交结果待核对”标记的任务，漏掉未带该标记的执行异常任务。

本次修复：
1. 对已记录注册提交意图、执行异常/超时、尚未开始任何验证周期、原环境可用且空闲的原任务，匹配邮件到达后接续原任务验证，不再次注册、不创建重复账号。
2. 仍需严格收件地址、邮箱基线、唯一验证链接及邮件解析条件；身份不符、邮件有歧义、已发过验证请求、已有验证记录、次数用尽、环境清理/替换未确认等不自动恢复。
3. 用户点停止新增或退出后，任务保持停止，不会因升级自动请求链接。对已关联邮件且符合条件的异常任务，任务行显示“继续验证”；用户主动点击后才释放停止状态，沿原邮件验证，原次数不重置。也可使用“继续未完成”。
4. 新增脱敏异常类型、阶段、内部模块/函数/行号定位；不记录异常原文、局部变量、密码、API密钥、Cookie或验证URL。最初页面异常具体原因尚未从旧日志确定，不宣称该原始异常已经根治。

针对旧版已收到邮件的异常任务：请保留原任务，在修复版本机目录正常启动，检查连接后，在原任务行点击“继续验证”。这是继续已收到的邮件，不是再次点击“开始注册”。仍须核对登录身份和环境/PID；成功与关窗结果以新日志为准。本轮不替用户执行真实验证。

保留7e独立补充（每次启动默认关闭、勾选即监控，手动批次只更新阈值）、缺账号评论自动续发及5c/8a既有修复。CapSolver触发、邮件解析和服务API未改。
本轮只进行离线模拟、回滚、界面和成品验收，不真实注册、收信、评论、付费解题或打开真实验证链接。
本机测试目录使用取得双实例锁后的现用7e最新一致快照，保留任务、匹配邮件记录、配置与本机授权。原数据不覆盖，两版分时运行、不自动同步。个人数据只在本机dist，不得外发。新用户完整ZIP空数据，更新ZIP不覆盖data。


以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 独立补充账号与评论自动续发
版本：20261020_independent_replenish_7e4b1c93，基于5c9e2a71。

1. 补充账号每次启动默认不勾选、不恢复上次启用状态。勾选后独立开始监控，无需点击开始注册，也不要求完成数曾经达到目标。
目标使用勾选时实际填写的任务数量；账号列表完成数低于目标时补足，等于或高于目标时不新增补充任务，后续跌破再补。计算缺口时扣除已在途注册/验证及未知提交预留，避免重复排队和重复注册；仍受环境名额、并发、邮件、连接和授权保护。
取消勾选关闭后续监控新增，已建立任务不重复创建，也不强行中断已发送请求；停止新增按原有安全规则停止注册并关闭监控。取消/停止能使排队或等待中的旧启用请求失效，不能在稍后重新开启。
每次手动点击开始注册仍创建填写数量的完整批次。手动按钮不负责启用/关闭监控；监控已启用时只更新其数量阈值，不改变监控采集的其他设置。监控未启用时仍保持关闭。

2. 评论任务仅因没有可用账号、已完成清理而暂停时，检测到账号列表重新出现已验证、已绑定、环境已创建且未占用的账号后，自动继续原任务。保留原房间范围、轮数、房间/条数游标，已处理部分不重发。不自动恢复用户停止、待人工核对、发送结果不明、清理未完成、账号占用或授权被阻止的任务。

3. CapSolver触发逻辑本次未改，源码核对和离线测试确认：先启用设置，再检测整页挑战、可见表单挑战控件或明确人机验证提示，才进入解题流程。单纯提交转圈、隐藏响应字段或普通页脚文字不会触发解题。表单挑战已具备有效结果时不再解题。
提前安装参数采集钩子不等于提交付费解题任务。表单解题需有效API密钥及唯一Turnstile参数；整页还需配置CapSolver可连接且与浏览器同出口的公网代理；无代理时不创建整页付费任务，保留人工处理。离线检查不等于真实服务的成功率验收。

保留5c年龄/提交前发布/推荐跳过/验证后当前页身份核对修正及8a原生验证初始化修复。未代用户真实注册、收信、发评论、付费解题或操作现有比特窗口。
本机目录独立复制现用5c的最新一致数据与本机授权，仅存本机dist。旧目录/旧data/桌面入口保持不变，两版分时运行、不自动同步。新用户完整ZIP空数据，更新ZIP不覆盖data。
请先退出旧版，从本机目录“新版”启动，确认任务数量及注册资料后再勾选；建议先用目标1小量测试。不要恢复旧的未知提交。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 注册推荐页及验证收尾优化
版本：20261020_registration_finish_5c9e2a71（基于8a6d2f91）

本次一起调整四处已确认流程问题：
1. 已出现且可操作的18岁确认优先处理，再进行原有账号检查。不跳过可见挑战、停止保护或已有登录拦截。
2. 填写核对和准备提交两个阶段不再重复生成完整界面快照；提交前真实值核对、可操作性检查、持久提交意图仍保留。
3. 识别“哪些女主播让您动心了？”推荐弹窗后，先尝试“跳过”再核对被遮挡的账号菜单；增加唯一精确文字定位兜底。一次点击，回执丢失不重复点击。关闭弹窗不等于注册或身份验证成功。
4. 普通注册的邮件验证已成功后，在当前就绪首页核对用户名和同一文档，不再默认刷新首页或重新判定邮件验证。匹配后仍执行原有环境/PID/关闭确认；身份未知、错误账号、文档变化仍保留窗口，不强制关闭。

保留8a原生Turnstile初始化修复及既有CapSolver配置、安全提交、邮件、授权、评论与补充账号规则。目标5：达到5后降到4才补，等于或大于5不补；每次手动点击仍创建填写数量的完整批次。
本版验证为离线模拟和成品回归，不代用户执行真实注册、收信、付费打码或关闭现有比特窗口。网络、邮件转发、服务器和打码服务耗时不由此消除，不保证瞬时完成。
上版用户实测5个邮箱验证成功；一个窗口因登录身份未确认而保留，不能把“邮箱已验证”当成“登录身份已匹配”。本版仍保留此安全原则。

本机测试目录沿用实际使用8a的数据独立一致快照，取得源/目标实例锁后复制并校验；旧数据不覆盖，两版分时运行、数据不自动同步。仅本机测试目录包含个人数据和本机授权，不得外发。
新用户完整ZIP不含data；更新ZIP不覆盖data。首次测试建议只建1个新任务，不自动恢复旧的未知提交。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 20261019_native_turnstile_age_8a6d2f91
基于4e。修复采集脚本提前声明window.turnstile造成原生客户端误判已加载、API保持undefined的初始化冲突；不再预定义该全局，等原生API完成初始化再被动观察render。没有绕过年龄确认或挑战，也未改变解题API、代理、邮件、评论、补充账号与授权规则。
年龄页：主页控件已可操作且未出现可见挑战时，不再先等待无关DOM加载；仍只点一次“我已经年满18岁”，并读回是否消失。未就绪/挑战/明确重置仍走原等待路径。模拟延迟夹具5秒降至0秒，不代表承诺线上零延迟。
保留4e关窗不自动重开、未知结果180秒待核对与不重放请求保护。
完整原生客户端全离线对照：旧版API undefined→修改版object/render function且已包裹→回滚恢复undefined；同输入年龄模拟5→0→5秒。真实Chrome额外11场景全部本地拦截，解题均替身，无真实注册/收信/解题付费请求。线上注册结果仍需新任务验证。
网页UI/desktop/ui_check未改，界面610/608和7布局复用4e验收，明确不是本轮新测；核心源码和EXE内嵌回归及17组件为本轮新测。
本机版使用用户确认停止并退出后的4e最新独立一致快照，原数据/旧目录/入口不动，配置和授权只在本机dist；两版不自动同步、请分时运行。原任务保持停止，不重复提交旧转圈页面；旧浏览器页已受旧钩子影响，使用新任务窗口验证新版。
更新ZIP不包含data且不覆盖数据；新用户完整ZIP为空数据无个人配置。本机目录严禁对外分发。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 20261019_submission_guard_4e8c1a73
基于b7，同样的补充账号规则和CapSolver设置保持，不改授权、邮件、评论或代理配置。
1. 原窗口已关闭时，提交轮询不会自动重新打开；同PID连接掉线仍可重连。
2. 无可见挑战、结果连续180秒未确认时，结束主动轮询转待核对，保留原账号和未知提交预留；不会刷新或重新提交，不会凭转圈开始邮件验证。晚到的匹配邮件仍可按原任务继续。
3. 等待30秒给出写请求待响应/已响应/失败次数与HTTP状态；不保存URL、请求内容、响应正文、Cookie或令牌。写请求不一定是注册接口，计数不等于注册成功。
4. 可见挑战仍沿用人工等待；本轮未重现最初五个窗口的网络过程，因此未证实网站转圈根因，不能承诺修复网站请求本身。没有执行真实注册、邮件验证或付费解题。
5. 本机测试目录复制已退出b7的独立一致快照，保留账号、任务、配置与本机授权，旧目录不覆盖。旧任务保持停止，不会自动重提。两版数据不自动同步，请分时运行。
离线验收与回滚证据在CHECKS；网页资源未变化，UI仍执行隔离自检。更新包不覆盖data，新用户完整包不含data或个人资料。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 补充账号达到目标修正 b7c2e9a1（基于6d2b9a74）
1. 本次将“完成账号严格超过目标才能观察”修正为“完成账号达到或超过目标就进入观察”。目标5：完成数达到5即可；随后降到4补1，等于5不补，大于5不补。补到5后继续观察，再降到4仍补1。
2. 仍监控账号管理列表里的完成账号（已验证且环境未删除）。首批尚未达到目标时只等待原任务，不额外重复注册；进行中与未知提交任务预留数量，避免等待验证期间重复补号。补充成功仍依赖实际注册和邮件验证。
3. 每次手动点击开始注册都按填写数量创建完整批次，不扣减已有账号；勾选后首次点击启用监控，以后点击按当次数量更新监控目标。同目标保留“曾达到”的记录，改目标按新目标与当前完成数重新判断。取消勾选后再点击会关闭监控但仍建立完整批次。
4. 停止新增会关闭监控；重启不自动开始监控。原20环境名额、连接/监听、输入检查、停止保护和在途预留保持，不自动删除用户账号或环境。
5. CapSolver设置/加密/表单与整页接口、普通注册10并发/独立验证不占10、邮件流水线、评论、采集及授权心跳均未改。真实打码、线上注册和持续补号尚未验收；未执行付费请求或真实业务。
6. 用户确认尚未使用6d版，实际现用3f版已退出。因此本机独立目录使用3f最新数据的双锁一致快照，不从未用6d目录复制。旧目录/数据/入口保留，两版数据不自动同步，请分时运行。
7. 更新ZIP不含data，不清空或覆盖用户data；新用户完整ZIP无data和个人信息。仅本机测试目录含用户账号、任务、配置、本机授权及加密CapSolver设置。旧6d说明中的“必须严格超过”“仅到5再跌4不补”作废，以本说明为准。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 补充账号阈值修正 6d2b9a74（基于3f8a1c62）
1. “开始注册”每一次点击都按任务数量填写的值创建完整批次；第一次、第二次以及以后都相同。勾选补充账号不再把手动批次改成缺额，已有账号和在途任务都不会扣减手动批次。仍受原20环境名额、连接和输入校验限制。
2. 补充监控与手动批次的数量、进度分离。沿用勾选后首次点击开始注册启用监控；以后每次点击都按当时任务数量更新监控目标，同时仍创建完整手动批次。同一目标保留“曾经超过”的历史；目标改变后按新目标与当前完成数重新判定，当前未超过新目标则重新等待。取消勾选后再点击开始注册会关闭监控，但仍创建完整手动批次。
3. 仅监控账号管理列表的完成账号（已验证且环境未删除）。目标为5时，完成数必须曾严格大于5，例如6，才启用跌破后的补充；仅到5不启用，之后降到4仍不补。
4. 曾超过后，完成数低于目标才补足缺额。例：6→5不补，6→4补1；补到5后继续观察，再降到4仍会补1。进行中注册、独立验证及未知提交待核对的任务预留数量，不在等待验证期间反复补号；不会取消或缩减原手动批次，原任务后续成功可能使列表超过目标。
5. 首批尚未完成/失败导致完成数从未超过目标时，不提前补充。连接、监听、名额不足时等待，不自动删除账号/环境。手动点击的完整批次若超过剩余环境名额会明确拒绝，不偷偷改小数量。
6. “停止新增”关闭监控并沿用原任务停止保护；重启不自动恢复监控。复选框选择仍保存，未勾选时手动注册行为不变。
7. CapSolver设置/加密/表单与整页接口、普通注册10并发/独立验证不占10、邮件流水线、评论、采集、授权和心跳均保持3f版。没有执行真实注册、收信、打码付费或代理部署。本版覆盖上一版“首批按缺额创建”的补充说明，以本说明为准。
8. 更新ZIP保留用户data；新用户完整ZIP无data和个人信息；本机测试目录仅在用户确认退出3f后取得双实例锁复制最新一致快照。旧目录/数据/入口保留，新旧数据独立、不自动同步，请分时运行。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · CapSolver 与补充账号 3f8a1c62（基于 c6f4a2e8）
1. 删除“可见窗口”“最多10个注册并发”两段说明，右侧新增 CapSolver 设置；实际普通注册并发上限10及独立验证不占10保持。
2. CapSolver 默认关闭。弹窗保存 API 密钥、启用开关，以及选填整页 CF 公网代理；密钥和代理使用当前 Windows 用户 DPAPI 加密保存在 data/capsolver_settings.json，不回传界面、不记录明文。留空沿用，代理可勾选清除。不会测试密钥或自动消耗余额。
3. 开启后在原注册窗口发现表单 Turnstile 时调用 AntiTurnstileTaskProxyLess，回填结果并触发原回调，注册成功仍由原流程核验。仅支持 Cloudflare Turnstile，不宣称支持表单里的 hCaptcha/reCAPTCHA。参数不明确、页面变化、停止、服务失败或超时保留人工，不自动重试付费任务。每个流程同 URL/挑战阶段最多尝试一次。
4. 整页 CF 使用 AntiCloudflareTask，代理以后购买再填；必须是 CapSolver 可连接的公网固定/粘性 HTTP 或 SOCKS5 代理，并与当前比特节点出口一致。只填写该项不会自动改变比特/Clash 节点。不是任意另一个代理都能用，同一公网代理不能用于不同出口节点的并发任务。127.0.0.1/内网代理拒绝，未填不会创建整页付费任务。返回 UA 不一致不套用结果。提交前仅 GET 导航、提交后不刷新重放注册 POST，仍由原流程观察或人工完成。
5. 秒数后新增“补充账号”，默认不勾选，勾选选择会保存。勾选后点击开始注册，任务数量作为账号管理列表的目标数量（列表实际为已验证且环境未删除的账号），已有数量计入，只新建缺额。进行中/未知提交待核对的任务单独预留数量，避免验证期间重复补号。
6. 达到目标后观察；已验证账号减少时按缺额建立新任务，补足后继续观察。连接/监听/名额不足时等待，不自动删除失败账号或环境；未知提交保留预留，需人工核对或删除后再补。实际补充成功仍依赖注册和邮件验证，不能保证成功率。
7. 点击“停止新增”关闭补充监控，现有任务按原停止规则收尾。重新启动软件不自动恢复监控，需再次点击开始注册；勾选框开关用于下一次开始注册参数，运行中停止监控请点停止新增。关闭补充功能时原固定批次注册行为不变。
8. 原c6流水线、邮箱独立验证、评论、采集和授权/心跳保持；未执行真实注册、收信、节点部署或真实 CapSolver 付费请求。此次验收为源码/实际成品离线回归、原生界面和真实Chrome离线虚构挑战，不代表线上端到端通过。
9. 更新包不含data，不能清空用户data；新用户完整包无data/个人配置。仅本机测试目录保留c6退出后双锁复制的最新账号、任务、配置与本机授权快照；不外发、不同步，请分时运行。旧目录和桌面入口保持。
接口依据：https://docs.capsolver.com/en/guide/captcha/cloudflare_turnstile/ 与 https://docs.capsolver.com/en/guide/captcha/cloudflare_challenge/（2026-10-19核对）。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 注册流水线优化 c6f4a2e8（基于 b9e4a6d2）
1. 普通注册仍最多10并发；独立邮箱验证不占这10个名额，也没有共享10窗口限制。环境总名额20的原规则不变（手动环境仍不计入）。
2. 匹配邮件持久化后唤醒原任务，待执行的验证优先于新注册；原任务不拆成第二个验证任务。只中断只读等待，不取消正在进行的注册/验证写操作。
3. 可见可用关键控件可先操作；填表后固定1.2秒改为条件检测，提交后固定0.5秒移除。验证链接使用DOM就绪；明确成功结果可在interactive阶段识别。无明确成功证据仍等待，未知不当成功。
4. 无可选推荐窗时不再为了等它出现额外等满30秒；实际弹窗/挑战仍处理。CF完成后1秒防重复保护及主页黄条消失1秒稳定确认、完整加载保护均保留。
5. 同一环境操作复用改名后的新鲜详情，保留写后读回、归属/PID核对、分组身份检查及API原限速。不做跨任务或跨账号长期缓存。
6. 新增本地脱敏阶段审计与分离统计；账号删除后统计保留。仅统计本版本有记录的任务，包含待人工/停止样本，不等于真实网站注册成功率，不追补旧版历史。没有保存邮箱、用户名、口令或验证链接。
7. 邮箱监听断开时，已落库的有效匹配邮件可继续验证；没有监听就绪不启动新注册。歧义、停止、授权、单次验证意图和恢复核对规则保持。
8. 不接入打码服务；验证码仍由人工在原窗口处理。未执行真实注册、收信、部署、评论或业务删除，不承诺线上成功率或端到端提速比例。
9. 新旧版data独立、不自动同步，请分时运行。更新包不含data；新用户完整包不含个人数据。本机测试版保留b9退出后取得双锁的一致数据副本，仅留本机，不可外发。

以下保留历史通用说明；本版新增/变更规则以上文为准。
版本20261019_bridge_callback_b9e4a6d2，基于7d2f8c4a，仅修复本程序窗口的异步回包交付。
页面重载会替换JS回调表；旧页面的Python回包到达时，接收函数可能已不存在。现在仅对pywebview返回回调脚本，在同一JS执行中检查函数是否仍存在，再交付结果；原页面已失效/结果已交付的重复回包不再调用空函数；窗口已关闭的回包不再投递。
有效回包仍交付一次，网站/业务错误内容不改写；当前回调执行错误和普通evaluate_js错误仍然暴露，不全局吞异常、不关闭错误日志、不改第三方安装目录。正常刷新频率/账号/评论/任务/退出/排序规则保持7d。
生产主窗口和离线自检窗口安装同一个保护。新增7项单元测试和原生WebView定向模拟：失效回包、有效回包、重复回包、真实当前回调错误可见、普通执行不变。
真实网站业务未执行。旧目录data和入口不覆盖；本机数据只在取得源/目标双实例锁后独立复制，分时运行，不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
版本20261019_shutdown_sort_7d2f8c4a，基于c5d9a3f2。
1. 软件正常退出时停止未结束评论任务，包括等待交接任务；保留进度，重开不自动续发。已发出的当前请求先核对结果，不强杀、不自动关闭或删除正常评论账号窗口。清理未完成保留待核对状态。
2. 评论间隔保持在每次发送之前，包括第一条；不是每条发送后再等待，最后一条不额外等待。网页加载、网络操作可能另占时间。
3. 房间状态、评论权限、类别表头保留分类升降序，各分类内部始终按在线人数降序；未知人数排后，人数列本身仍可升降序。刷新重新选房采用同一顺序，原选择数量和免费/付费配额不扩展。
4. 移除获取主播时保存的comment_allowed=False直接跳过分支；每次真正评论前，以当前任务账号的实时房间权限与状态检查决定。旧列表标记不替代实时检查，身份、封禁、付费资格及网站回执保护不放宽。页面/网络/旧适配异常显示具体固定原因，不再只显示权限、状态或发送结果未确认。
5. 本轮离线测试与成品验证，不宣称已实网复现用户03:06日志。旧日志无具体原因不能反推；不回写历史，不盲目重发结果未确认消息。
6. 三份产物同版本；本机目录双实例锁复制已退出c5的独立最新数据和授权，仅本机保留；旧目录/data/入口不覆盖，分时运行，不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 评论自动删除原因审计保留
版本：20261019_cleanup_audit_c5d9a3f2，基于a7c4e2b8。
评论触发自动清理时保留独立审计日志：窗口序号、当时用户名、原因（首次明确拒绝/网站账号受限/身份未确认）、清理编号及开始/完成/未完成结果。审计日志不挂在将被删除的任务上，不随账号、环境及关联任务删除而清空。
删除失败只显示删除未完成；已删成功但后续交接失败则明确区分，不把删除成功误写为失败；房间局部封禁、未实际提交的拒绝不触发整号删除或审计。删除策略、顺序换号、剩余房间和计数规则不改变。不会补造此前已删除的原因，也不改变日志列表原来的显示范围或清空规则。
源码/成品离线回归新测，新增9个删除审计专项；UI和采集及评论预检代码不变，相关验收复用旧版。未执行真实评论、真实关闭或真实账号删除。
用户确认a7退出后双锁复制最新14表一致独立快照、配置和本机授权，仅dist保留；更新ZIP保留data，新用户完整ZIP无个人数据。旧目录/data/入口不动，新旧分时运行、不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 评论直播状态与房间封禁原因修正
版本：20261019_comment_state_a7c4e2b8，基于8b3e9a61。
评论前检查不再把isOnline账号在线当作直播状态。明确idle/offline或isLive=false判下线；isLive=true或两个明确摄像头正值核验直播。缺少明确证据显示直播状态未确认，不直接说已下线。
当前账号在该直播间的封禁/禁言/访问受限优先于被遮挡的直播状态，显示房间受限，不误报主播下线或非公开；房间局部受限不等于网站账号整体受限，不因此删除整个账号。
仅保存最小布尔/状态预检证据，不存完整接口响应、Cookie或聊天正文。原累计10次刷新、刷新后清零、下轮重试、后台换号及任务窗口序号全部保持。
源码/成品业务回归及新增12个状态专项离线验证；UI和采集未改，相关检查复用旧版；未对用户列举的四条历史真实接口逐条复现，不能仅凭旧日志确认当时具体字段。
更新ZIP保留data，新用户完整ZIP空数据；8b版退出确认后双锁复制独立一致数据与本机授权仅本机dist。旧目录/data/入口不动，新旧分时运行、不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 任务账号显示窗口序号
版本：20261019_task_sequence_8b3e9a61，基于f6a2c8e4。
状态区任务账号格式：任务账号：窗口序号 / 用户名。窗口序号来自后台实际任务环境的真实Bit序号，不取准备账号的序号，不用列表序号冒充；未知显示—。
清理、清理未完成、等待可用账号和无任务状态不拼造窗口序号。准备账号与任务账号分离、后台确认交接、正常完成不换号等f6逻辑全部保持。
仅展示JS和ui_check修改，业务Python及采集JS保持。源码/成品回归与原生UI重新验收；采集36项复用d4，未执行真实业务。
用户确认f6退出后，取得双实例锁复制最新14表一致独立快照、配置与本机授权，仅在dist。更新ZIP保留data，新用户完整ZIP无个人信息；旧目录/data/入口不动，新旧分时运行、不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 准备账号与后台任务交接分离
版本：20261018_account_handoff_f6a2c8e4，基于d4e7b2c9。
下拉框标注准备账号，任务状态单独显示任务账号。手动获取、正常评论及正常结束不因临时占用换号。
异常清理/等待交接时不提前选成接手成功；清理失败显示清理未完成，没有账号显示等待可用账号。后台已确认B接手后只跟随一次，不因B忙碌再跳C；运行中手动准备另一个账号不改变后台任务。
真正删除/解绑/验证失效/环境不可用时，仅在非交接等待期间顺序选择下一可用账号；任务房间、进度和累计计数不由下拉框改动。
保留d4全部业务：下轮重试跳过房间、刷新尝试后异常数归0、换号不归0、开窗身份等待；未确认评论下一轮可能再次发送相同文字。
UI资源与ui_check变更，业务模块及采集JS不变。离线界面/业务验收不等于真实网站端到端测试。
更新ZIP保留data；新用户完整ZIP空数据；本机dist在用户确认d4退出并取得双锁后复制最新独立一致快照。旧目录/data/入口不动，新旧分时运行，不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 跳过房间下轮重试与异常刷新清零
版本：20261018_comment_retry_d4e7b2c9，基于c2d8f5a7。
跳过或未确认的房间不再保存为后续轮次的自动跳过名单；下一轮重新核验并尝试发送。当前轮跳过该房间剩余条数；同一次已提交/未确认事件不自动重发，日志及提交凭据仍保留。
未确认仅代表无法确认结果，上一轮可能已经发出，因此下一轮可能再次发送相同内容。
旧任务携带的uncertain_rooms在继续执行前清除；旧累计/检查点换算成尚未消费的异常数。
普通异常每累计10次触发刷新，刷新尝试完成后计数归0，成功/失败均重新累计；成功发送本身不清零。原范围/轮数/评论账号清理换号/停止保护不变。
修改coordinator业务模块和采集JS及相应测试，UI资源保持。手动新开窗口后的已有网站标签也等待身份就绪，明确错号立即停止；仍未知则有界等待后报错，不绕过核验。源码/成品业务回归及36项采集专项新测，UI明确复用c2，不冒称真实网站验证。
更新ZIP保留data；新用户完整ZIP无个人信息；本机dist在用户确认c2版退出并取得双锁后复制独立一致快照，旧目录/data/入口不动。新旧分时运行，不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 时间同排与获取账号保持
版本：20261018_clock_account_c2d8f5a7，基于93b4a6d1。
上次获取时间和距今在主播筛选右上角同一排，范围说明仍在原标题后同一行。
修复手动获取主播期间环境临时被本次采集占用而误选下一账号；获取完成释放后继续保持原账号。真正失效、解绑或删除仍沿用跳过逻辑；评论自动换号不变。
仅界面JS和CSS修改，EXE及Python/采集代码字节复用。业务1090回归与30采集专项复用71，界面与本次账号专项新测，不代用户执行真实业务。
更新ZIP保留data；新用户完整包为空数据；本机目录使用退出93版后双锁独立快照。旧data/目录/桌面入口不动，新旧分时运行、数据不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 主播范围说明恢复单行
版本：20261018_streamer_scope_93b4a6d1，基于71d6e8a4。
“（在线中文女主播及情侣主播 · 合计前 N 名）”恢复到“主播筛选”标题后面，保持原来的同一行，不另起一行。
上次获取时间和距今仍保留在模块右上角，使用紧凑两行时钟列避免挤压原说明。
只调整展示JS和CSS；EXE原字节复用，Python模块、采集JS、业务与数据规则不变。
保留默认10分钟可填且启动不勾选、自动原默认最多5个公开免费、账号下拉真实窗口序号、日志用户名、手动注册及全部既有保护。
源码/成品隐藏界面及七种布局重新验证；1090业务回归及30采集专项因相同代码明确复用71，非本轮新实网测试。
更新ZIP保留data；新用户完整包无data/个人配置/授权；本机dist为退出的71版双锁一致独立快照，新旧分时运行、不自动同步，旧目录/data/桌面入口保持。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 自定义刷新分钟与获取时间
版本：20261018_streamer_interval_71d6e8a4，基于4c7e2a19，保留手动注册及其他功能。
自动获取／刷新每次启动仍默认不勾选；新增分钟输入框，默认10，接受1–1440整数分钟。
自动一轮完整成功后按填写的分钟等待下一轮，不重叠、忙碌让位；只修改间隔不会取消当前轮或立即重新获取，按最近成功完成时刻重新计时，进行中的轮次完成后使用新间隔。
主播筛选右上角显示上次成功获取时间和距今多久，手动/自动成功以及原评论异常刷新成功都会更新；开始、失败、取消不更新。时间随列表保存，重启可继续显示；首次升级旧名单没有历史时间则显示暂无，不伪造时间。悬停可看完整日期和后台状态/异常。
按用户补充要求，自动获取成功后沿用原手动默认勾选：清除旧勾选，按当前显示顺序勾选最多5名在线公开免费主播；不自动发送评论，不改正在执行的任务、房间范围或剩余进度。评论任务自身原选择保护保持。
8路及100ms起始节奏、完整核验、两类中文合计前N、身份暂停、网络失败90/180/300秒退避保持。10分钟是正常成功后的刷新间隔，不替代失败退避。
更新ZIP保留data；新用户完整包无data或个人配置/授权；本机dist从退出的4c版双锁复制独立一致快照，旧data/目录/桌面入口保持，新旧分时运行、不自动同步。
离线、隐藏界面及实际成品检查不等于真实网站长期联调；本轮不执行真实注册、收信、环境创建删除、评论或写剪切板。

使用账号下拉显示比特真实窗口序号 / 用户名，无有效序号显示—，不拿列表编号代替。日志账号标识改为用户名，前面的窗口序号保留；未知用户名显示用户名未确认，不猜邮箱前缀，不修改邮箱数据或追改历史日志。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 自动开关位置调整
版本：20261018_streamer_toggle_4c7e2a19，基于a8f3d672。
仅将“自动获取／刷新”开关移动到“获取主播”按钮前面，同一行相邻显示。刷新状态提示仍在主播列表上方。
仅HTML/CSS变化；复用a8原字节EXE，Python模块、采集JS、自动刷新、手动注册、授权心跳及全部业务逻辑不变。
源码及成品隐藏界面新测，另新测七种布局的开关在按钮前/同一行；业务1080项与采集30专项因相同代码明确复用a8验收，不冒称新实网测试。
自动开关每次启动默认关闭，原8路/100ms起始节奏、每轮完成后45秒、忙碌让位、保留勾选/不勾新人/不改变评论任务规则保持。
更新ZIP保留data；新用户完整包无data或个人配置/授权；本机dist使用锁定a8数据独立快照，只留本机，旧目录/桌面入口保持，新旧分时运行、不自动同步。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 主播自动获取与后台刷新
版本：20261018_streamer_auto_a8f3d672，基于6e9c4b21，保留手动注册全部功能。
自动获取／刷新默认关闭，每次启动需自行开启。选择已验证、已绑定账号，并打开原账号窗口，启用后确认身份并自动首次获取；后台不创建、重开或切换替代环境。
每轮完整核验结束后等待45秒再次获取，忙碌让位，不重叠；网络失败保留旧列表，90/180/300秒退避，身份异常暂停，需要核对后关闭再开启。
中文女主播和情侣主播两类合计前N，原中文、类别、直播、权限、详情身份和窗口PID核验保持。每类最多4路有序详情预取，两类总计最多8路，所有请求全局起始间隔100ms。
完整成功后统一更新人数、状态、权限、类别和新候选。仍存在的勾选保留，新主播不自动勾选，不自动发评论、不改当前评论任务或累计10次异常刷新逻辑。
修改账号、人数和筛选后按新条件重新获取，旧代次响应不覆盖。显示上次自动成功时间及异常；不是0延迟推送。
离线夹具与隐藏WebView2测试不代表真实网站长期限流或端到端速度验收；本次没有执行真实业务操作。
更新ZIP需退出软件、备份后完整覆盖并合并_internal，不删data。新用户完整包无data、账号、个人配置或本机授权。dist独立快照只留本机，新旧分时运行、数据不自动同步；旧目录和桌面入口保持。
剪切板广告排查继续暂停。生产复制与授权心跳保持。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 手动环境清理与名额隔离版
版本：20261018_manual_cleanup_6e9c4b21
1. 手动注册不占20个自动注册名额；注册名额20/20时仍可手动创建。旧版有明确手动命令来源的环境也自动剔除。比特浏览器自身套餐窗口上限仍然适用。
2. 程序运行且连接就绪时，约5秒周期检查手动窗口是否已关闭；确认归属、无账号、无其他任务占用并再次核对关闭后，删除对应手动环境。不重开窗口、不验证账号；有成功账号或其他任务占用的环境不删。删除结果未知保留记录，不重复发送删除。
3. 环境API的检查连接成功后，也会只读同步已在比特中手动删除的空闲环境；没有证据不释放，不删除其他环境。
4. 自动注册不复用手动环境；界面显示注册名额，手动按钮不受该数字阻止。
5. 保留开始注册与获取主播同尺寸、手动注册自动收信/生成邮箱/开主页后真实复制及读回、独立验证绑定当前窗口后关窗、已完成显示1秒后移出邮件队列、账号管理保留。
6. 剪切板广告问题按用户要求暂停排查，未宣称已修复。默认关闭会写入真实剪切板的诊断测试，生产复制机制不变。
验收采用虚构环境/邮箱、真实SQLite与本机WebView2/成品内嵌代码，未代用户执行真实注册、收信或删除比特环境。主播采集、授权心跳与运行库不变；相关既有专项复用，不称重新实网验收。
更新包不包含data、不清空用户数据；新用户完整包无data或授权。dist含本机独立一致快照，仅本机使用，新旧分时运行、数据不自动同步；旧目录/桌面入口保持。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 剪切板与自动收信修正版
版本：20261018_clipboard_listener_c84f2a60
1. 开始注册按钮与获取主播按钮实际宽高一致（96×28 CSS像素），仍与停止新增、继续未完成、手动注册同一行。
2. 点击手动注册后按原规则生成邮箱；未开启收信时自动启动并等监听就绪，已开启时复用，不重复启动。需已保存邮箱配置；收信失败/停止时不继续开窗。
3. 新窗口网站主页打开后才写入邮箱到系统剪切板，使用非空窗口句柄和Unicode数据；写入后延迟独立读回，不一致时有限重写，确认一致才弹出“生成的邮箱已复制到剪切板”。不能确认则明确报错，不再只有成功提示。
4. 剪切板最终复制失败时保留已打开的手动窗口供人工处理，不自动提交、关闭或删除它。手动关闭仍不触发额外核对。
5. 收到符合既有规则的邮件时由原独立验证队列处理；独立验证成功绑定/关窗、已完成显示1秒后移出队列、账号管理保留规则不变。
6. 主播、自动注册提交规则、授权/心跳及其他功能保持。旧版本、旧data与桌面入口保留；本机新旧版数据独立、不自动同步，分时运行。
7. 更新ZIP保留data；新用户完整ZIP没有data/个人配置/授权；dist个人数据与授权只留本机，严禁对外分享。
验收：旧7d复制在开窗前，使用“开窗会改写剪切板”的夹具复现最终内容不符；新版在相同夹具下真实Windows剪切板连续5次写入/读回一致。该夹具复现不等于已证明用户比特环境的唯一根因。源码与实际EXE隐藏界面还会写入虚构邮箱并由独立PowerShell进程读回比对；不创建真实比特窗口或执行真实注册/收信/网站请求。

以下保留历史通用说明；本版新增/变更规则以上文为准。
小灰灰工具2.0 · 手动注册与独立验证版
版本：20261018_manual_mail_7d2e4a91
1. 开始注册缩小，同一行最右增加手动注册。
2. 手动注册使用当前勾选节点、原分组/名额/归属标记/窗口尺寸规则创建一个全新窗口，打开网站主页。
3. 按当前邮箱前缀、随机长度与后缀生成一个邮箱，复用原邮箱生成规则，复制到剪切板；下方提示：生成的邮箱已复制到剪切板。
4. 手动窗口不自动填写、提交、收信或验证；关闭后不自动重开核对。无需QQ收信配置，但邮箱生成输入必须有效。复制失败不创建窗口。
5. 独立验证成功后，读取页面唯一当前用户名；缺失邮件用户名时补齐，复核同一窗口PID/归属和登录身份，绑定当前验证任务的环境，成功后关闭窗口。已知用户名不符、重复账号、身份未知不强行覆盖，保留窗口待人工核对。
6. 账号管理保留成功账号与环境，窗口状态关闭；邮件验证队列先显示已完成约1秒，再移除该行（受500ms界面刷新影响）。关窗未确认则保留该行。底层历史与防重复验证记录保留，不重新处理同一邮件。
7. 主播获取、并发、自动首次获取、定时刷新均未修改；授权、心跳及既有业务保护保持。
8. 更新ZIP覆盖到原程序目录，保留用户data；新用户完整ZIP不含data或个人信息。请关闭软件后更新，完整目录一起使用。
9. 本机dist为独立一致数据快照，两版数据不自动同步，必须分时运行。不得将本机测试data/授权对外分发。
验收：源码/成品离线回归、隐藏WebView2界面、组件和基线/修改/回退事务；没有真实注册、收信、创建比特环境、发送评论或部署节点。系统剪切板沿用现有Unicode复制函数，专项以模拟剪切板核验参数与失败保护，未改动用户剪切板。

以下保留历史通用说明；本版新增/变更规则以上文为准。
2026-10-09 数据管理：账号管理的“取消绑定”按钮替换为“数据管理”。弹窗分类查看数据库中的全部环境、账号、任务、批次、绑定历史、验证邮件字段、验证尝试、评论、日志和运行元数据等记录。每页50条，支持搜索、翻页；点击记录查看完整字段，点击关联类型查看对应记录，“返回全部”恢复全量范围。这是只读查看入口。

2026-10-09 账号列表显示：默认列宽优先容纳邮箱。邮箱恢复单行显示，过长可在文字内横向查看，不加省略号；账号名等其他长字段保持自动换行。右上角“总数 N · 已选 M”只统计下方实际显示的账号行数。列宽及其他设置保持。

2026-10-09 比特序号显示：账号管理第一列为“序号 / 账号”，上下两行显示，上行为比特窗口真实序号 seq，下行为账号名，不按列表顺序编号。启动已有只读检查、新建或找回环境时保存序号；缺少确认值显示“—”，接口异常保留上次确认值。状态列上行显示验证状态、下行显示窗口或使用状态；登录身份列保留。

2026-10-09 登录身份列：账号列表原“密码”列改为“登录身份”，显示最近一次核对结果：已匹配、未登录、身份不符或未确认。窗口状态单独显示；关闭窗口不等于退出登录。原密码数据与保存规则保留，列表不显示密码查看按钮。

2026-10-09 账号窗口更新：账号列表只显示验证成功且环境未删除的账号。运行时约5秒同步窗口状态；直接关闭比特后重开原环境核对再关闭，软件内关闭先核对身份。明确未登录或身份不符，确认窗口及环境删除后清理账号；未知、超时、网络问题保留账号。
注册完成任务行隐藏，统计仍保留成功数；异常任务旁增加删除任务。删除前先停止实际执行任务，确认关联环境关闭并删除后才清理账号和原任务，失败保留，重启仅核对不重复删除。
邮件验证总统计包含注册关联与独立验证，独立验证N/不限保持原单独数量，无新增状态行。所有新账号关联日志显示完整邮箱，换号前日志保留当时邮箱，不显示密码或验证链接。

2026-10-09 节点测速：本轮所有待测延迟显示测速中...，每个结果立即独立更新，其余继续等待；临时状态不入配置。地区按钮使用台湾／taiwan原写法，混合显示台湾 / taiwan，TW国旗及筛选保持。升级保留新测试数据，不再次清空。

2026-10-09 日志显示规则：正常打开只显示本次启动后产生的日志，旧日志不加载到界面；日常启动保留账号和任务。本次独立空数据库测试版仅交付时清空一次业务记录，普通配置文件保留。

2026-10-09 继续未完成规则：批量继续跳过关联环境已确认deleted的历史任务，保留历史；单独继续提示环境已删除。预留环境、关闭或未知窗口不当作删除，照常核对。界面和既有注册验证规则保持。

2026-10-09 比特接口修复：错误显示固定接口路径及HTTP码；客户端串行排队，请求起始间隔至少0.25秒（保守程序调度，非官方配额），仅白名单只读查询429／502／503／504／超时／断连最多三次尝试。写操作不盲目重发；已开窗口通过同PID与只读/browser/ports安全重连。确认无提交／邮件／密码／绑定证据的原API失败任务仅核对并暂停，用户点击继续未完成后接续原账号与环境；未知、已填写或已登录页面不重新注册，停止状态不重置。保留1044×758及5／10秒两次刷新等既有规则，布局配色保持。

2026-10-09 最终规则：比特默认窗口1044×758（只读当前窗体取得）。注册提交前最多两次刷新，第一次第5秒、第二次第10秒；总准备预算仍45秒，人机验证单独60秒并暂停准备计时。此条覆盖紧前的三次刷新及15／30／40秒草案，不增加第三次。

2026-10-09 注册页面自动刷新：提交前页面准备总预算45秒，尚未就绪约第15／30秒刷新原主页，最多两次，刷新耗时计入预算；真实人机验证仍使用原持久60秒期限，实际等待期间暂停准备计时。仅网络／加载及入口、控件、按钮未就绪允许准备重试，原账号和邮箱保持；提交意图之后不刷新／重提交，停机、停止、邮件证据、已有真实登录、歧义或危险跳转阻止刷新。

2026-10-09 邮箱已验证保窗与身份加载等待：刷新主页一次后，最多等待8秒读取真实登录账号；身份未确认或不符时保留原窗口及验证成功，释放任务占用，仍不绑定错误身份，不重复注册／验证。停止、退出、异常恢复同样保留已验证窗口；任务保存登录状态及安全的内部原因代码，不保存页面文字或他人用户名。此条覆盖此前验证成功但登录未匹配一律关窗的收尾规则。

2026-10-08 网站重复自动换号：唯一可见注册表单内明确提示当前用户名或邮箱已被使用、且输入与当前账号一致时，最多自动换号3次。按当次保存的前缀／长度／后缀重新生成，避开当前数据库、本批和本任务拒绝过的值；同一个任务／账号记录／环境，先原子更新用户名邮箱和环境本地名，再写改名意图并读回确认真实名，最后再次提交。成功后继续原密码提取／邮箱验证／身份核对／绑定／保窗。次数持久化，与验证重试分开；停止、未知提交、账号／邮件证据冲突或改名不明时暂停。旧任务未保存生成规则则不猜测。

2026-10-08 注册账号生成去重：开始注册时，用户名和完整邮箱同时与本批及当前数据库全部账号比较，忽略大小写；重复自动重新生成。收信与分组准备完成后才生成，写入队列前事务再次检查。每个账号最多尝试100次，耗尽后提示增加随机长度或更换前缀，不建立本批任务或预留环境。未绑定／失败账号仍参与检查；已删除账号及其他版本数据库不参与；不改历史重复记录、不查询网站，不修改邮件去重和启动缺失账号清理逻辑。

2026-10-08 启动绑定环境核对：正常启动及重新检查连接时，只读查询所有已绑定账号的比特环境，显示打开／关闭／环境缺失／未确认。启动核对先于未完成任务恢复，且不依赖已选择代理。只有完整环境列表和精确详情共同确认缺失、比特登录归属及API端点与缓存一致时，才在新版本地事务中删除对应账号的用户名／邮箱／密码／绑定及相关验证内容，停止相关旧任务；保留环境缺失记录并释放名额；相关验证记录和链接摘要一并删除，清理流程不新增／保留去重记录，收信流程原有去重逻辑保持。API不可达、分页异常、PID读取失败、归属不明或矛盾结果只标未确认并保留数据。检查不会打开、关闭、创建、删除或改名真实比特环境；未绑定账号不在本次自动清理范围。数据库故障停止本次检查，清理事务失败完整回滚。

2026-10-08 独立邮件验证规则更新（覆盖下方串行及成功关闭窗口的历史说明）：取消独立验证并发上限，所有符合启动条件的任务可同时执行，不占注册的5个位置、不受注册启动间隔限制；仍共用20个环境名额、同一环境独占及邮件／链接去重。相同时间的验证任务共享一次只读部署检查，不因彼此检查而报节点忙；真实节点操作仍受保护。邮箱验证及登录身份核对成功、账号绑定后，关闭成功的验证标签，保留比特主窗口并释放任务占用；正常退出、停止期间完成成功和重启恢复成功均保留。保留窗口仍占环境名额；失败或未完成停止仍按原规则收尾。界面显示“独立验证 N / 不限”，其他布局和功能保持。新版独立目录交付，旧版本程序、配置、数据和快捷方式保持；两版应分时使用同一比特／Clash服务。

2026-10-08 节点测速结果逐个保存并显示：每个节点完成后通过界面刷新显示延迟或失败原因，不再等待整批完成；勾选、搜索、筛选和布局保持。途中失败保留此前已完成结果，下一次打开仍显示上次测得的数据。

2026-10-08 最新设置存储规则：比特API／Clash手动设置、节点列表／勾选／测速、网站识别配置保存于data/settings.json；原数据库普通设置自动迁移，先写文件并确认，再移除旧设置。注册输入及界面偏好继续保存ui_preferences.json；QQ邮箱与加密授权码继续保存mail_settings.json。文件损坏或迁移失败会保留原数据并停止启动，不静默重置。配置已存在时其对应部分优先；手动修改文件后重新打开软件，运行中外部修改会阻止覆盖。账号、环境、任务、恢复和去重仍保存在SQLite。自动Clash识别规则与注册成功保留窗口保持。

2026-10-08 最新注册窗口规则（覆盖下方旧说明）：邮箱验证成功后自动核对首页登录账号；身份匹配并完成绑定后保留比特窗口，关闭成功的邮箱验证标签，释放任务占用但仍占环境名额。无需手动点击账号核对。软件正常退出释放自动化连接，不关闭已成功保留的窗口。失败和停止且未完成任务沿用原关闭收尾。

小灰灰工具2.0 · 使用与回退说明

2026-10-08 最新更新：兼容检查功能已删除，账号管理不再显示此按钮，也不再执行测试标签／测试Cookie／断开重连探针。开始注册、继续任务、独立邮件验证和恢复任务都不再要求兼容检查通过。旧检查标记被忽略，已有空白环境与账号数据保留。正常打开自动检查比特API及所选代理；已保存验证邮箱设置、连接检查通过、选择节点且参数有效即可开始注册，收信会自动启动或复用，等待基线就绪后建立任务。账号核对、环境归属和窗口进程校验继续保留。下方要求先兼容检查的说明为历史，以本条为准。

2026-10-08 最新注册准备规则（优先于下方历史说明）：正常打开自动检查比特 API 与已选代理连接；展示模式不连接。注册邮箱前缀、随机长度、邮箱后缀、任务数量和启动间隔随输入自动保存在新版 data/ui_preferences.json，下次打开恢复，清空也会保存。邮箱授权码仍由现有 Windows 用户加密设置保护，不保存在这个输入文件中。连接与 Patchright 兼容检查通过、邮箱设置已保存、节点已选且参数有效时，可直接点击“开始注册”，不必先点击“开始收信”。没有监听则自动启动，已在连接则复用；最多等待45秒建立收信基线，之后才建立注册任务。邮箱连接失败、超时、停止新增或退出时不建立本次任务；连接恢复后需重新点击开始注册。继续未完成任务也自动准备收信，不另生成账号。原来的环境名额、两类队列、邮件去重及注册收尾规则保持。仅保存邮箱设置仍不会自动开始收信。

2026-10-07 注册接入成品：本次独立 EXE 已包含注册源码接入，位于 web_manager/dist/20261007_registration_02ab076f/XiaoHuiHuiWeb/；实际成品 298 项离线回归、16 项组件和 329 项界面检查通过。前一候选和前一 ZIP 保留，没有覆盖或重新发布旧包。进入普通用户注册页后先点击用户名框，再等待邮箱框；如需人机验证，请在当前比特窗口手动完成，每个已识别阶段最多等待60秒，重启不重新计时。邮箱重复／无效、已有登录身份不明确或控件异常时暂停核对；不会另生成账号或重复提交。提交前保存原收信基线及点击意图，收信断开、邮箱切换或已停止新增时不提交。偏好窗口最多观察30秒；跳过偏好不代表注册成功。请勿以现有演示或离线测试替代真实业务验收。

2026-10-07 前一离线候选（历史记录）：web_manager/dist/20261007_preparation_step5_65b41ff3/XiaoHuiHuiWeb/。已包含第 2–4 步的自动专用分组、环境命名、新会话探针和自检保护；新 EXE 的 16 项组件与 329 项界面检查，以及内嵌应用代码的 264 项离线后台测试全部通过。布局、配色、默认与最小窗口保持，已有版本全部保留。六步离线准备完成，交付 ZIP 为 web_manager/dist/XiaoHuiHuiWeb_20261007_Offline_65b41ff3.zip，旁边 .zip.sha256 供整体校验，包内 FILES_SHA256.json 供文件校验。

本机原演示快捷方式继续可用；交付 ZIP 不含本机绝对路径快捷方式和整个 data，换目录或换电脑请双击 Demo.cmd（--demo）。正常入口是 EXE，首次不会自动收信或开展业务。快速打开／回退见 QUICK_START.txt，验证报告见 OFFLINE_CHECKS.json 和 CHECKS。真实分组创建、比特兼容、注册代码接入及其他业务仍待后续，当前不要直接当作真实业务已验收版本使用。下面按日期保留历史交付记录，当前有效状态以上方注册接入成品说明为准。

2026-10-06 环境 API 按钮尺寸统一：环境 API 的“检查连接”左右内边距改为 6px，与下方代理管理按钮相同；原 26px 高度保持。实际渲染两个检查按钮均为约 59.61×26px。仅调整此按钮尺寸，配色、字号、窗口、其他布局、提示与业务功能保持。

源码和新成品各 329 项 WebView2 界面检查、13 项组件自检通过，最终无报错；实际渲染确认 API 与代理管理检查按钮宽高一致。成品初检两项原有列宽断言未通过，诊断确认它们错误地将启动时伸展的选择列与恢复后的固定列宽比较；仅修正检查为验证 CSS 默认 28px，表格代码未改。后台未修改，保留此前 207 项离线测试记录；九份界面资源与源码一致，除 CSS 外八份资源与上一候选一致，旧版 28 份文件哈希未变。全部历史成品保留，未连接真实服务。

2026-10-05 按用户最新要求覆盖上一轮深灰底部说明：所有底部操作提示，包括不可用原因，统一使用可用“开始注册”的 #C68B49 暖金背景、#211B10 深色文字和 600 字重，沿用原提示尺寸、上移位置与弹出方式。普通按钮禁用时与评论模块的检查登录、打开房间、切换账号一致：#1A1D22 模块背景、#6E706F 灰字及弱边线。所有主要按钮禁用时与“发送评论”一致：#D2A363 淡金背景、#211B10 深色字、0.4 透明度；悬停仍保持禁用样式。禁用点击只显示原因，业务拦截保持；悬停说明仍为原深灰样式。字号、布局、窗口尺寸、后台流程和其他配色保持。

源码和新成品各 329 项 WebView2 界面检查、13 项成品组件自检通过，无最终报错；实际渲染核对暖金底部提示、两类禁用样式与默认/最小窗口。后台未改，沿用上一轮源码及实际嵌入模块各 207 项离线测试通过记录。九份 UI/国旗资源与源码一致，除 CSS 外八份资源与上一候选一致；旧版 28 份文件哈希保持，全部历史候选保留。未连接真实服务。

2026-10-05 邮箱、注册就绪与按钮说明：保存验证邮箱配置不会自动收信；开始收信只要求有效邮箱配置，不依赖比特或代理连接。注册需邮箱监听就绪、比特及代理连接检查通过、Patchright 兼容检查通过、已选择节点、有效注册参数和足够环境名额。收信连接中或断开时不能新增注册；运行中保存邮箱配置在下次启动收信生效，界面继续显示当前收信邮箱。注册或独立邮件验证仍在收尾时不能停止收信，先停止新增并等待任务完成。环境 API 模块新增比特连接状态及独立检查连接按钮，只检查本机 API；它不代表代理与兼容性已经通过。修改 API 端口会显示待检查并阻止新增注册；任务占用环境时禁止改变端口。灰色按钮可聚焦、点击查看原因，业务操作由统一入口拦截；点击时底部显示说明，悬停和键盘聚焦也显示说明。所有不可用说明与发送评论禁用说明统一为 #30363E 深灰底、#D5D2C9 暖白文字、普通按钮字体；普通操作提示仍为暖金。关闭或取消邮箱设置清空未提交授权码。定稿布局、窗口尺寸、字号、其他配色、日志行距与两类队列规则保持。

207 项后台离线测试、源码和成品各 327 项 WebView2 界面检查、13 项成品组件自检通过；从新 EXE 提取实际嵌入的邮件、存储、协调器及桌面桥接模块，完整 207 项后台离线回归通过。实际渲染核对禁用说明颜色和字体一致，默认/最小窗口布局、操作拦截及原功能回归通过。九份 UI/国旗资源与源码一致；旧版 28 份源码文件哈希未变，所有旧成品保留。最终检查无报错；未连接真实 QQ、比特、Clash 或网站，真实业务仍待联调。

2026-10-05 节点完成按钮与日志行距微调：节点筛选的“完成”按钮沿用主按钮暖金背景与深色文字，关闭弹窗和节点选择行为保持。日志行高由 25px 收紧到 21px，上下内边距由 3px 改为 1px，字号、文字颜色、表头、日志模块高度及其他布局不变。长日志仍可按原方式横向查看，自动滚动和阅读位置保留。

源码和成品各 308 项 WebView2 界面检查、13 项成品组件自检通过，无最终报错。同一默认窗口日志可完整显示行数从 7 行增至 9 行；实际渲染确认字体、文字颜色、日志面板高度不变，长日志可读，暖金完成按钮正常关闭。后台和界面业务脚本未修改，沿用上一轮 200 项后台及实际 EXE 后台回归通过记录，本轮不重复后台测试。九份 UI/国旗资源与源码一致，除 HTML/CSS 外七份资源与上一候选一致；旧版 28 份文件哈希保持，历史候选保留。未连接真实服务。

2026-10-05 队列和并发分离（覆盖此前共用五个位置的规则）：注册队列显示在账号注册模块，独立邮件验证队列显示在验证邮箱设置模块，各自显示总数、成功、进行中、待处理、执行阶段和当前占用。最多 5 个注册任务并发；用户已选择独立邮件验证逐个处理，它不占注册并发位置、不受注册启动间隔限制，可与注册同时运行。主播/评论仍使用原来的一个独立位置。两类账号任务共用最多 20 个环境名额、环境独占和邮件/链接去重；关闭未确认只保留所属队列的位置。已有注册任务的邮件验证，包括提前收到邮件的任务，始终保留原注册行和原并发归属，不另建重复任务。旧数据中带 mail_only 标记的注册批次按批次来源正确分类，原次数、截止时间和重试时间保留。未取得环境名额或等待服务的独立邮件也显示在邮件队列，待核对项不自动重试；界面不包含密码或验证链接。停止新增继续同时停止两类队列的新增和未开始重试，当前动作/验证周期结束或超时后收尾；继续未完成或单行继续验证沿用原任务。180 秒周期、30 秒重试等待、最多两次重试、代理来源、环境替换与不保存邮件原文的规则保持。配色、字号、控件和窗口尺寸保持；仅新增两类队列的必要显示，并修复滚动条消失后页面未重新填满宽度的问题。

2026-10-06 历史交付：web_manager/dist/20261006_ui_api_button_02/XiaoHuiHuiWeb/
200 项后台离线测试、源码和成品各 308 项 WebView2 界面检查、13 项成品组件自检通过；另从新 EXE 提取实际嵌入的邮件、存储和协调器模块，运行完整 200 项离线回归通过，无最终报错。覆盖五注册加一独立验证、注册间隔隔离、两类关闭失败分别占位、早到邮件归属、旧标记重启、待分配/待核对邮件、各自统计、继续验证按钮路由、列表滚动、默认/最小窗口及恢复宽度。九份 UI/国旗资源与源码一致，旧版 28 份文件哈希保持，全部历史候选保留。没有连接真实 QQ、比特、Clash 或网站，真实业务仍待联调。
2026-10-05 离线候选版

2026-10-04 原视觉定稿基线 ui_prompt_fonts_01 保留。当前功能候选为 ui_api_button_02；按用户要求增加节点筛选并删除主页代理列表，沿用定稿配色、字号和窗口设置。真实业务验收仍待联调。

代理管理新用法：
操作按钮下显示导入状态、导入数量、选择数量和部署状态，等待、进行中和失败都有对应提示。
部署状态表示新版脚本记录，不等于 Clash 已重新应用或网络已通过检查。改变节点选择/配置后显示待重新部署；记录或脚本无法确认时显示待核对，不自动修改脚本。
1. 主界面仅保留操作按钮，连接状态显示在代理管理标题右边，检查连接在操作行最右边。
2. 点击“节点筛选 → 测速设置”，配置目录按当前 Windows 用户自动识别 Clash Verge，控制地址优先读取实际配置，未找到时使用 http://127.0.0.1:9097。特殊目录可手动修改。自动参数保持原样保存时不固定为这台电脑路径，换电脑或 Windows 用户启动会重新识别。
3. 密钥自动沿用本机配置，缺失时用 Clash Verge 公开默认值。默认密钥在密码框内遮蔽显示，本机自定义密钥仅后台读取，输入框留空继续沿用；手动保存的密钥优先。仅明确勾选“清除已保存密钥”才删除，关闭弹窗仍清空输入。本功能只读，不修改 Clash。
4. 节点筛选弹窗再次缩小，宽度上限 640px、列表高度 240px，列表保留选择框、名称、端口和延迟，删除原“状态”占位列。原节点列宽设置自动适配四列，其他列表设置保留。导入后打开节点筛选，可按名称搜索。点击“全部”、国家/地区或“其他”按钮，筛选并全选当前显示的节点，再次点击当前按钮取消全选（部分已选时补全），保留其他范围已选节点；最右侧的“取消全选”始终只取消当前显示节点。全部且搜索为空时，可取消所有节点。节点前的国旗使用本地图标显示，不依赖 Windows 字体；节点原名仍用于搜索和部署。台湾与 taiwan 对应的地区按钮统一显示“中国台湾”，“取消全选”与上方按钮同样大小。地区按节点名称识别，只显示节点最多的五个国家/地区；其余国家和未识别节点合并为“其他”，无下拉箭头。
5. 勾选用于部署；搜索不改变勾选，搜索框和弹窗位置保持稳定，全选或取消全选只影响当前显示的节点。测试延迟也只测试当前显示的节点，无需先勾选或部署，不改变部署选择。完成后返回主页执行部署或检查连接。
6. “部署节点”和“删除部署”使用统一深色确认框。取消、关闭或 Esc 不执行操作，只有点击确认才提交。部署为勾选节点配置本地 SOCKS5 端口，供比特环境使用。“删除部署”清空 Clash 当前订阅扩展脚本中的全部部署和自定义内容，重置为默认仅返回 config 的脚本，不受勾选范围限制。删除前自动备份脚本到新版 data/clash/deleted_script_*.js.bak；不会自动还原部署前的自定义脚本。账号、导入节点、订阅节点和其他订阅保留；依赖删除端口的环境将无法使用这些代理。两个订阅共用脚本时须先指定独立脚本。两种操作完成后，均需要在 Clash Verge 重新应用当前订阅，再点击“检查连接”。部署前停止旧版业务；删除前停止使用相关代理的业务。
7. 导入节点和验证邮箱设置弹窗统一为 480px 最大宽度，与部署确认框一致。导入文本框默认 8 行，更多内容可滚动或手动拉高；邮箱字段与按钮全部保留。字号和样式保持。
测速前，在 Clash Verge 的“外部控制设置”中打开“启用外部控制”选项，测速设置下方也有此提示。
展示模式内的节点与延迟均为虚构数据，点击测速不会访问真实 Clash。

本次交付已经通过本机离线测试、组件和界面自检。
真实比特兼容、邮件、注册、主播和评论仍待联调；当前不要直接当作已经验收的业务版本使用。

一、打开程序
保留 XiaoHuiHuiWeb.exe、_internal 和本说明的完整目录，双击 EXE。
不要仅复制一个 EXE。无需安装 Python，也无需下载独立 Chromium。
需要 Windows 10/11 x64 和 Microsoft Edge WebView2；缺少组件时程序提供微软下载入口。
展示模式可从源码 run.bat --demo 或 EXE --demo 打开，只显示虚构数据。
默认窗口为 1300×980，最小允许仍为 1080×700。界面默认按 100% 统一比例显示，窄窗口按宽度适配；
按钮、输入框、面板间距和列表高度已收紧，所有文字统一为此前字号的 95%，默认窗口可一页看到全部模块。
同类文字使用统一字号：标题、按钮与表单/表格正文、辅助提示分别保持一致；保留 95% 字体比例。
“环境API”显示本机地址及可修改的端口；“节点管理”已改名为“代理管理”；邮箱模块名为“验证邮箱设置”，环境模块名为“账号管理”，连接设置按钮已移除。
账号管理列表与日志区域自动填补窗口剩余高度，更多内容在各自列表内滚动。
较小窗口或手动拉高输入框时，整个页面仍可上下滚动。节点、环境、主播、任务和日志可在各自列表内滚动。
评论输入框默认两行，左边沿与上方账号选择框对齐；发送评论、停止新增按钮放在使用账号一行。底部标签关闭、本轮发送一次和窗口保留说明保持一行，向后缩进至评论输入框左边沿。
API 端口框隐藏上下增减箭头。用户名前缀框提示“例如：JBD#”；随机长度数字输入可设 4–10，默认 5。任务数量默认 5，注册启动间隔数字输入可设 1–5 秒、默认 1 秒。已有任务保留原间隔。说明的示例单独第二行显示：JBD#a1b2c，JBD#a1b2c@example.com。程序前缀校验允许 #；网站实际接受情况仍待联调。评论发送间隔与下方标签数量输入框对齐。
主播筛选只保留语言、房间类型、评论权限和关键词，默认仅显示确认在线的主播。
点击主播列表“在线人数”表头切换升降序；人数未知的记录在末尾，排序不清除多选。
主播列表默认预留表头加 10 行内容；超过 10 行在列表内滚动，不限制获取的主播数量。
最少人数和最大数量限制已取消，显示本次已读取并符合剩余筛选条件的在线记录。
首次正常启动不会自动创建环境、收信或评论；异常恢复仅作用于新版已记录的任务。

开始收信后的验证逻辑（2026-10-05）：
邮件保存规则（最新）：所有邮件原文和附件都不保存。普通邮件直接跳过，仅记录已读取到哪个邮件编号，不保存正文、主题或普通邮件记录。验证邮件仅保存账号、完整注册邮箱、提取密码、验证链接及接收/处理所需字段。
新版启动时清理当前数据库中旧原文和普通邮件记录，保留验证字段、任务、账号与收信进度。QQ 邮箱原邮件不修改，不删除其他版本目录里的数据库。
符合发件人、主题和唯一验证链接规则的邮件只保存验证所需字段，再按完整注册邮箱匹配任务。无任务时自动建立仅验证任务和新比特环境，直接验证邮件里的已有账号，不再次提交注册。
有任务时先尝试打开原环境；只是窗口关闭会打开原窗口。原环境缺失，或打不开且确认关闭、删除后，才创建新环境并迁移账号关联。新环境随机使用当前订阅已部署的代理节点，是否在筛选窗口勾选不影响此部署池。
先完成代理部署、应用订阅、检查连接和 Patchright 兼容检查，再开始收信。条件未就绪时邮件留在本地队列；重复邮件不会新增任务或重复验证。独立邮件验证任务在验证邮箱设置模块单独展示，逐个处理，不占注册的 5 个并发位置；两类任务共用 20 个环境名额，已有注册任务的验证仍显示在原注册行。
“停止新增”也会暂停自动新建邮件任务；未处理验证邮件的必需字段仍保存。通过继续验证、开始注册或重新开始收信解除新增暂停，已停止和耗尽次数的原任务不会因晚到邮件重新注册或获得第四次自动验证。
原窗口关闭/删除失败、服务不可达、创建或验证结果未知、邮件信息不唯一、替代环境仍打不开时暂停核对。窗口已经打开但 Patchright 连接失败，或驱动缺失时保留原环境，不自动删除。验证成功但没有登录原账号时仅保存已验证状态，须手动登录并检查身份后才能正式绑定及评论。新环境不复制原环境 Cookie。

二、数据保存
源码版：web_manager/data。
目录版：EXE 同目录的 data。
数据库、邮箱设置、部署记录、日志及 WebView2 数据都只在新版目录。
网站密码按你的要求明文保存，点击环境行的“查看”可显示和复制。
QQ 授权码由当前 Windows 用户加密，换电脑或用户需重新填写。
分享成品时不要带上已使用的 data；备份自己的新版时需完整保留 data。
不要把旧版 data 直接复制到新版，也不要导入旧 Cookie、账号或待处理邮件。

三、之后进行真实联调的顺序
1. 先暂停旧版相关业务，备份实际使用的旧 EXE 和数据。另一台电脑须单独备份。
2. 为新版准备专用 Clash 订阅，完成连接配置后导入并勾选节点。部署前确保旧任务停止。
   Clash 参数可在“节点筛选 → 测速设置”保存。未人工指定分组 ID 时，新源码会从唯一“用户名-API默认分组”和当前用户已有环境的归属交叉确认比特用户名，精确查找／创建“用户名_小灰灰”；不会改名已有默认组或迁移旧环境。
   多个默认组、没有可交叉确认的当前用户环境、归属冲突或创建结果未确认时会暂停，需核对比特账号／分组；不要通过重复创建绕过提示。网站适配规则仍待维护者结合真实页面准备。
   如果提示存在旧版部署或外部修改，先按原版方式恢复或另备专用配置，不要绕过保护。
3. 点击“兼容检查”。它只创建/使用无账号关联且归属明确的新版空白环境，测试同一默认会话中的专属 A/B 标签、非空测试 Cookie 共享、释放驱动后的原窗口及重连后的原标签／会话保留。
   测试 Cookie 只用于虚构域名，不访问网站；只清理本次测试标记和标签，最后按精确环境 ID 关闭并确认。所有检查和收尾通过才记录成功；旧版空 Cookie 检查结果需重新检查。窗口或清理无法确认时先处理提示，不自动接管手动重开的窗口。
   通过兼容检查不等于网站业务已经通过；还需“检查连接”和页面校准。
4. 在“邮箱设置”填写 QQ 邮箱及 IMAP 授权码并保存，点击开始收信，等状态变为收信中。
5. 由维护者在新版窗口中校准网站账号、验证标志、主播字段、评论权限和发送证据，保存网站适配配置。
   这一步由维护者结合真实页面完成，不要填写猜测的规则。未校准时状态未知，程序会暂停核对。
6. 填写用户名前缀、随机长度、邮箱后缀，首次注册数量 1，验证完整流程和真实邮件格式。
7. 单账号通过后再测试 2 个、5 个任务、停止、重试和重启恢复。
8. 获取主播并核对筛选，选择已验证账号，检查登录后先试一个房间和一条评论。
   最后验证并行、循环、标签复用、手动登录和账号交接。

四、重要操作规则
最多 20 个环境名额，空白、失败和待处理都计入；解绑不释放，确认删除才释放。
最多 5 个注册窗口并发，按本轮保存的启动间隔启动（默认 1 秒，可设 1–5 秒）。邮件每轮等 180 秒，确认关闭后等 30 秒重试；最多重试两次。
失败不自动补注册、不自动重发邮件；仍用原用户名、邮箱和环境。
“停止新增”停止后续任务，正在进行的动作或邮件周期完成/超时后保存并收尾。
关闭未确认时仍保留占用；核对窗口后可在环境管理中明确关闭。不要直接结束比特进程。
评论账号掉线或身份不符时，在比特窗口手动登录原账号，程序重新检查后继续。
结果不明时先核对比特窗口，再点击“确认已发送”或“确认未发送”；程序不会盲目重发。
评论最多 200 字，默认每 3 秒评论（1–30 秒可选）、最多 5 个房间标签（1–10 可选）、仅本轮发送一次、结束保留环境窗口。
超过标签上限复用已有标签。只发送一次仅限本轮；取消后循环至停止。
切换账号先开新环境，确认旧环境关闭后才发送；关闭失败时暂停交接。

五、切回旧版
先停止新版任务，等待注册窗口关闭并正常退出新版；评论窗口保留，按需自行关闭。
若要撤销新版端口，先在 Clash 选中新版专用订阅，再按需“删除部署”并重新应用；此操作会清空当前脚本自定义内容。需要恢复原自定义脚本时，从新版本地部署前备份手动还原并重新应用，再切回旧订阅、检查连接。不要在旧订阅上误点删除部署。
启动原有旧 EXE/快捷方式，使用其原有 data。不要将新版数据库放入旧目录。
本机原有旧程序未被改动，本次哈希核对全部一致。

六、离线自检
EXE --self-check：检查 SQLite、组件、资源、Patchright 驱动及后台，不执行业务。新源码另检查分组／命名模块、会话探针与 Cookie 精确清理接口、Patchright 版本元数据；缺失时检查失败。仅启动通信驱动，不打开或下载浏览器。
EXE --ui-check：隐藏窗口检查 WebView2、两列布局、按钮桥接、默认值及刷新保留勾选。
结果分别在 data/打包自检.json 和 data/界面自检.json。
这两项通过不能替代真实业务或另一台无 Python 电脑验收。

表格操作：四个列表均有外边框和与输入控件一致的底色。数据表头两列之间可拖动调宽，双击自动适应内容。长文字不显示省略号，选中文字并向左右边缘拖动可查看完整内容。
主播表头：在线人数按数值排序，房间状态、评论权限、语言按类别切换升降序；刷新保留选择和排序。
直播间链接：鼠标悬停显示“点击复制”，点击复制地址并在底部提示“直播间地址复制成功”。展示模式也允许复制示例链接，不打开网站。
下拉选项与勾选行使用一致的选中色；运行日志时间不显示秒。模块内部以文字开头时适当缩进，标题栏及开头控件不额外缩进。

本轮界面：模块标题栏不额外缩进，内部开头文字缩进，开头控件不额外缩进；表头与列表行的选择框对齐。随机长度、启动间隔、发送间隔、同时打开改为数字输入，范围与默认值保留。下拉箭头恢复为 V 形，表头列间显示分割线，内容行不增加竖线；发送间隔、同时打开文字与输入框居中对齐。所有按钮操作在底部提示反馈，设置弹窗打开时也可显示提示。新版窗口标题和快捷方式名称为“小灰灰工具2.0”。

最新表头调整：模块标题文字与左侧色条间距为 6px；代理管理的端口、延迟、状态，账号管理的状态、密码，主播列表的房间状态、评论权限、语言表头与列内容居中。选择框与第一数据列之间移除分割线及拖动、双击功能；其他数据列之间保留调宽和排序。

操作反馈与界面设置：灰色按钮悬停说明禁用原因。业务按钮处理期间显示进度并阻止重复点击；根据后台命令及关联业务任务区分已提交、实际完成、失败和待人工确认，批量操作等待全部选中项处理结束。创建注册队列、停止请求和邮箱连接请求分别提示其实际含义，不把命令受理当作业务完成；确认超时需先核对任务。四表列宽与主播排序单独保存在新版 data/ui_preferences.json，重新启动恢复；文件只允许列宽和排序，不存账号、口令或业务任务，保存失败提示并保留原文件。账号状态分行展示留待真实功能联调调整，字号保持当前设置，最新配色按参考图调整。

阅读日志：勾选自动滚动后，向上翻看旧日志会显示“滚动已暂停”，新日志不会把阅读位置拉到底部；回到底部恢复跟随。取消勾选后保持关闭，重新勾选立即回到底部。
选择列表行：代理、账号、主播列表可点击行内空白处、节点名、环境名、账号名或主播名勾选或取消，名称显示手型鼠标。拖动名称文字仍可选文，不触发勾选；其他列文字、链接和按钮保持原操作。
恢复列宽：在任意列表表头右键，点击“恢复默认列宽”，只恢复当前列表，保留其他表格和排序；恢复结果仍会保存。
评论范围：模块标题右侧显示当前账号和已选房间数；评论运行时显示本轮实际账号、固定房间数和任务状态，修改选择在下一轮生效。缺少已保存范围时提示待核对。
注册统计：原统计位置显示总数、成功、进行中、待处理，范围与下方任务列表一致。等待启动、邮件和自动重试计入进行中；失败、暂停、停止及待人工确认等计入待处理。

悬停提示：所有控件的原生白色提示已移除。房间链接“点击复制”与灰色按钮不可用原因共用深色提示框，移开鼠标或点击时收起；其他普通文字和可用控件不再弹出悬停窗口。


启动时窗口在主显示器可用工作区居中；按实际窗口尺寸定位，适应系统缩放。工作区比窗口小时保持标题栏可见，原默认尺寸和最小尺寸不变。

最新日志、单位和底部提示框调整：普通日志的时间、类型、内容整行统一正文色 #D5D2C9；启动间隔的“秒”、发送间隔的“秒”、同时打开的“个标签”也统一正文色。底部操作提示框距底部 54px（上移 32px），使用“开始注册”按钮底色 #C68B49 和文字色 #211B10；边线和弹出逻辑保持。辅助说明、占位文字及注册统计整行仍为 #7E858D；成功/警告/错误日志状态色、禁用按钮和其他配色、字号、布局、功能、窗口设置保持。最新提示框文字与悬停配色：底部提示框字体、字号、字重和行高与“开始注册”一致，使用统一正文字号及 600 半粗字重；金色底 #C68B49、深色字 #211B10、距底部 54px 保持。房间链接“点击复制”和禁用按钮原因共用的悬停提示框，使用普通按钮背景 #30363E、暖白文字 #D5D2C9，字体格式与普通按钮一致。其他配色、字号、模块布局、窗口设置与功能保持。当前演示成品位于 web_manager/dist/20261006_ui_api_button_02/XiaoHuiHuiWeb/；原视觉定稿 ui_prompt_fonts_01 保留。


本轮邮件环境接续验收：184 项后台离线回归、源码和成品各 278 项 WebView2 界面检查、13 项成品组件自检全部通过，无最终报错。覆盖无任务邮件、提前/重复/旧邮件、用户名和密码缺失、打开原环境、缺失环境替换、先删后建、关闭/删除/API/CDP/驱动故障、删除与创建响应丢失、队列重启、数据事务回滚、停止、次数/时间保留、20 个名额与混合任务 5 个并发。九份 UI/国旗资源与源码一致，除任务标识外八份资源与上一候选字节一致；旧版 28 份文件哈希及全部历史候选保持。本次只使用模拟服务和临时虚构配置，未连接真实 QQ、比特、Clash 或网站；真实邮件格式、CDP、页面证据与新环境登录行为仍需联调。


本轮邮件最小保存验收：192 项后台离线回归、278 项成品 WebView2 界面检查、13 项成品组件自检以及从实际 EXE 提取代码运行的 5 项邮件保存检查全部通过，无最终报错。覆盖普通/异常邮件跳过、验证字段最小保存、游标写入失败不推进、混合收信及重启、旧原文/普通记录清理、任务和验证进度保留；此前注册、邮箱匹配、环境替换、代理、停止及恢复回归继续通过。九份 UI/国旗资源与源码及上一候选字节一致，旧版 28 份文件哈希保持，历史候选保留。源码界面沿用此前 278 项通过记录，本轮界面资源未改；新成品界面重新检查。没有连接真实 QQ、比特、Clash 或网站。清理仅在新版启动时针对它自己的数据库执行，本轮测试使用虚构临时数据，没有读取或清理历史成品中的真实邮件。
2026-10-08 注册参数更新：原“用户名前缀”现在显示为“注册邮箱前缀”，必填。邮箱保留前缀末尾的#，用户名去掉前缀末尾一位特殊符号；两者共享同一次随机部分。例如前缀JBD#、随机a1b2c，用户名为JBDa1b2c，邮箱为JBD#a1b2c@simplelogin.com。环境用实际用户名命名，验证邮件按完整邮箱关联。旧任务保留原身份；这项修复不自动改写旧账号或再次注册。
注册异常修复（2026-10-09）：提交前核对当前用户名和完整邮箱；提交结果未确认时暂停并保留原窗口，查看原页面，程序不会自动重复注册。严格匹配的晚到验证邮件可接续未停止、未耗尽的原任务。等待邮件、超时和重试均写关联邮箱日志。“待核对注册”与邮件周期耗尽分别提示。删除任务需按弹窗确认，沿用关闭及环境删除确认后清理数据规则；没有确认完成时保留记录。旧任务次数和停止状态不重置。

数据管理（2026-10-10）：默认按账号/环境合并列表，未关联项也显示。删除按钮关闭并删除当前关联比特环境，停用账号并保留数据库记录，不注销网站账号。清理数据删除关联环境及对应数据库记录。初始化先确认删除全部本库关联环境再清空14表，普通配置保留。三项均先弹窗确认、自动备份至data/backups；确认失败不清理，重启只读核对。数据库备份不能恢复已删除的比特环境。导出数据库为完整SQLite快照，包含账号密码和验证链接，仅交给信任的人分析，普通配置文件不导出。

数据详情弹窗（2026-10-10）：数据管理列表占满窗口，默认10列常用信息，可横向查看更多内容。勾选框只多选，详情按钮不改变勾选；点击行或详情按钮弹出全部字段与关联数据，关闭返回原列表。删除、清理、导出和初始化规则不变。
