Skip to content

fix(chrome): 支持同一 Profile 下多个 Google 账号的独立导入 - #33

Merged
Mag1cFall merged 1 commit into
Mag1cFall:mainfrom
qawskioe:io/chrome-multi-account-import
Sep 25, 2026
Merged

Mag1cFall merged 1 commit into
Mag1cFall:mainfrom
qawskioe:io/chrome-multi-account-import

Conversation

@qawskioe

Copy link
Copy Markdown

Chrome 的同一个 Profile 登录多个 Google 账号时,原实现要求 token_service 恰好只有一条记录,导致整个 Profile 被标记为不可导入并从管理页隐藏。本机复现为:有 5 条有效账号记录,但导入列表为空。

本次修改从 Preferences.account_info 按 Gaia ID 关联邮箱,为每个账号提供独立选择 ID;管理页提交明确的账号选择,实际导入按 AccountId-<Gaia ID> 精确读取对应凭据。默认不勾选账号,避免误导入全部账号。保留 CLI 按 Profile/邮箱选择的入口,并更新协议文档。

验证:

  • Windows 原生测试通过:同 Profile 多账号发现、指定第二个账号的凭据匹配、缺失凭据及失效选择拒绝。
  • 前端 TypeScript 检查与生产构建通过;相关 Go 包检查通过。
  • Windows 构建部署后,只读发现接口从 0 个恢复为 5 个不同账号 ID,均来自同一个 Profile。

验证范围:未执行真实账号导入、凭据解密或 Google 登录续签,因此尚未验证导入后的端到端认证。提交仅包含代码、合成测试数据与文档,不含本机账号、Cookie 或令牌。

@Mag1cFall
Mag1cFall merged commit 0f2f91d into Mag1cFall:main Sep 25, 2026
@Mag1cFall

Copy link
Copy Markdown
Owner

非常感谢,合入并进一步修复了。bf3a3b0

  • CLI 编号选择返回 Profile,导致选一个账号时可能导入同 Profile 的全部账号;已改为精确返回账号 ID。
  • 任一 Profile 的 Preferences 缺失或解析失败会中断整批发现;已改为保留该 Profile 为不可导入项并继续处理其他账号。
  • 同一邮箱出现在多个 Profile 时会重复列出、重复选择,最终触发重复账号错误;发现列表与选择流程都已按邮箱去重。
  • 管理页默认全不勾选后缺少批量操作;已补“全选 / 取消全选”。

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