Skip to content

feat(maaend): 保存账号自动登录 - #3

Open
qiyinxi wants to merge 3 commits into
devfrom
alpha/v6-sync-20260726
Open

feat(maaend): 保存账号自动登录#3
qiyinxi wants to merge 3 commits into
devfrom
alpha/v6-sync-20260726

Conversation

@qiyinxi

@qiyinxi qiyinxi commented Jul 26, 2026

Copy link
Copy Markdown
  • saved_account_login.py:终末地保存账号自动登录,OCR 只匹配掩码后 4 位
  • schema 移除明文密码字段(含 password_retirement 迁移测试)
  • 4 张模板 PNG、5 个新测试、pyproject 0.0.2→0.0.6(OCR/win32 依赖)、新建 .gitignore

配套主仓 alpha 批次:AUTO-MAS#305

🤖 Generated with Claude Code

Summary by Sourcery

为 MaaEnd 新增 Win32 手动审阅模式和桌面已保存账号登录流程,同时收紧运行时配置与凭据处理。

New Features:

  • 为 MaaEnd 引入基于 Win32 的手动审阅任务模式,与自动代理模式并存。
  • 在不存储明文密码的前提下,通过对 Endfield 客户端进行 OCR,实现桌面已保存账号登录和账号切换。

Enhancements:

  • 让 MaaEnd 控制器和资源选择与 MaaFW 接口声明保持一致,并规范旧版运行时的控制器/模拟器字段。
  • 要求 MaaEnd 用户配置集合实现 Mapping 协议,并避免导入旧版 ConfigBase 模型。
  • 添加 CloseOnManualStop 标志,并优化游戏关闭行为:在手动停止时可选择保留 Endfield 继续运行,同时仍然遵守 CloseOnFinish 设定。

Build:

  • 将插件版本提升至 0.0.6,更新 MaaFW,并添加 OCR/图像/Win32/输入相关依赖,同时在包中捆绑 PNG 模板资源。

Documentation:

  • 更新 README,说明手动审阅模式、已保存账号切换语义、默认游戏进程保留策略,以及针对旧版控制器/模拟器和凭据字段的兼容行为。

Tests:

  • 添加控制器/资源对齐及旧版运行时字段迁移的测试。
  • 添加针对已保存账号登录行为、模板资源完整性以及账号 ID 掩码处理的测试。
  • 添加验证架构迁移(淘汰旧密码/ID 字段并保留其他数据)的测试。
  • 添加手动审阅流程、停止策略以及可见窗口检测的测试。
  • 添加回归测试,确保运行时适配器不再导入旧版配置模型。

Chores:

  • 在 MaaEnd 适配器项目中添加 .gitignore 文件。
Original summary in English

Summary by Sourcery

Add Win32 manual review mode and desktop saved-account login flow for MaaEnd, while tightening runtime configuration and credential handling.

New Features:

  • Introduce Win32-based manual review task mode for MaaEnd alongside automatic proxy.
  • Implement desktop saved-account login and account switching using OCR over the Endfield client without storing plaintext passwords.

Enhancements:

  • Align MaaEnd controller and resource selection with MaaFW interface declarations and normalize legacy runtime controller/emulator fields.
  • Require MaaEnd user configuration collections to implement the Mapping protocol and avoid importing legacy ConfigBase models.
  • Add CloseOnManualStop flag and refine game shutdown behavior to optionally keep Endfield running on manual stops while honoring CloseOnFinish.

Build:

  • Bump plugin version to 0.0.6, update MaaFW and add OCR/image/Win32/input dependencies, and bundle PNG template assets in the package.

Documentation:

  • Update README to document manual review mode, saved-account switching semantics, default game process retention, and compatibility behavior for legacy controller/emulator and credential fields.

Tests:

  • Add tests for controller/resource alignment and legacy runtime field migration.
  • Add tests covering saved-account login behavior, template asset integrity, and masking of account IDs.
  • Add tests verifying schema migration away from retired password/ID fields while preserving other data.
  • Add tests for manual review flow, stop policies, and visible-window detection.
  • Add a regression test ensuring the runtime adapter no longer imports legacy config models.

Chores:

  • Add a .gitignore file to the MaaEnd adapter project.

新功能:

  • 为 MaaEnd 添加 Win32 手动审核模式,使用基于 OCR 的最近账号选择实现已保存账号的桌面登录流程。
  • 为 Endfield 引入桌面已保存账号切换功能,在不存储或使用明文密码的前提下完成账号切换。

增强:

  • 使 MaaEnd 控制器和资源配置与 MaaFW 接口声明保持一致,并规范旧版运行时控制器/模拟器字段。
  • 收紧 MaaEnd 运行时用户配置要求,仅接受基于 Mapping 的配置,并避免导入旧版 ConfigBase 模型。
  • 新增 CloseOnManualStop 标志,并优化游戏关闭行为,在手动停止时可选择保留 Endfield 进程,同时遵守 CloseOnFinish 设定。

构建:

  • 将插件版本提升至 0.0.6,依赖更新至 MaaFW 0.1.7,以及 OCR/图像/win32/输入相关库,并在发行包中包含 PNG 模板资源。

文档:

  • 更新 README,说明手动审核模式、已保存账号切换行为、游戏进程保留默认设置,以及与旧版控制器/模拟器和凭据字段的兼容性说明。

测试:

  • 添加全面测试,覆盖控制器/资源配置一致性、已保存账号登录的屏蔽与行为、手动审核流程及停止策略、废弃密码/ID 字段的 schema 迁移、运行时控制器/模拟器字段迁移,以及确保打包资产可正确解码。

杂项:

  • 为 MaaEnd 适配器项目添加 .gitignore 文件。
Original summary in English

Summary by Sourcery

为 MaaEnd 新增 Win32 手动审阅模式和桌面已保存账号登录流程,同时收紧运行时配置与凭据处理。

New Features:

  • 为 MaaEnd 引入基于 Win32 的手动审阅任务模式,与自动代理模式并存。
  • 在不存储明文密码的前提下,通过对 Endfield 客户端进行 OCR,实现桌面已保存账号登录和账号切换。

Enhancements:

  • 让 MaaEnd 控制器和资源选择与 MaaFW 接口声明保持一致,并规范旧版运行时的控制器/模拟器字段。
  • 要求 MaaEnd 用户配置集合实现 Mapping 协议,并避免导入旧版 ConfigBase 模型。
  • 添加 CloseOnManualStop 标志,并优化游戏关闭行为:在手动停止时可选择保留 Endfield 继续运行,同时仍然遵守 CloseOnFinish 设定。

Build:

  • 将插件版本提升至 0.0.6,更新 MaaFW,并添加 OCR/图像/Win32/输入相关依赖,同时在包中捆绑 PNG 模板资源。

Documentation:

  • 更新 README,说明手动审阅模式、已保存账号切换语义、默认游戏进程保留策略,以及针对旧版控制器/模拟器和凭据字段的兼容行为。

Tests:

  • 添加控制器/资源对齐及旧版运行时字段迁移的测试。
  • 添加针对已保存账号登录行为、模板资源完整性以及账号 ID 掩码处理的测试。
  • 添加验证架构迁移(淘汰旧密码/ID 字段并保留其他数据)的测试。
  • 添加手动审阅流程、停止策略以及可见窗口检测的测试。
  • 添加回归测试,确保运行时适配器不再导入旧版配置模型。

Chores:

  • 在 MaaEnd 适配器项目中添加 .gitignore 文件。
Original summary in English

Summary by Sourcery

Add Win32 manual review mode and desktop saved-account login flow for MaaEnd, while tightening runtime configuration and credential handling.

New Features:

  • Introduce Win32-based manual review task mode for MaaEnd alongside automatic proxy.
  • Implement desktop saved-account login and account switching using OCR over the Endfield client without storing plaintext passwords.

Enhancements:

  • Align MaaEnd controller and resource selection with MaaFW interface declarations and normalize legacy runtime controller/emulator fields.
  • Require MaaEnd user configuration collections to implement the Mapping protocol and avoid importing legacy ConfigBase models.
  • Add CloseOnManualStop flag and refine game shutdown behavior to optionally keep Endfield running on manual stops while honoring CloseOnFinish.

Build:

  • Bump plugin version to 0.0.6, update MaaFW and add OCR/image/Win32/input dependencies, and bundle PNG template assets in the package.

Documentation:

  • Update README to document manual review mode, saved-account switching semantics, default game process retention, and compatibility behavior for legacy controller/emulator and credential fields.

Tests:

  • Add tests for controller/resource alignment and legacy runtime field migration.
  • Add tests covering saved-account login behavior, template asset integrity, and masking of account IDs.
  • Add tests verifying schema migration away from retired password/ID fields while preserving other data.
  • Add tests for manual review flow, stop policies, and visible-window detection.
  • Add a regression test ensuring the runtime adapter no longer imports legacy config models.

Chores:

  • Add a .gitignore file to the MaaEnd adapter project.

新特性:

  • 为 MaaEnd 添加 Win32 手动审核模式,与自动代理并行,包括已保存账号的桌面登录流程。
  • 为 Endfield 实现桌面端已保存账号切换,通过基于 OCR 的“最近账号选择”实现,而无需存储明文密码。

改进:

  • 使 MaaEnd 的控制器和资源配置与 MaaFW 接口声明保持一致,并在加载时规范旧版运行时字段。
  • 从 MaaEnd 用户 schema 中移除旧的用户密码和 ID 字段,同时将已有记录迁移到新的账号字段中。
  • 根据新的 CloseOnManualStop 标志和已有的 CloseOnFinish 标志选择保留或关闭 Endfield 进程,以避免游戏被意外终止。
  • 在 MaaEnd 运行时避免导入旧版 ConfigBase 模型,并收紧用户配置 Mapping 的要求。

构建:

  • 将插件版本提升到 0.0.6,并更新依赖以包含 MaaFW 0.1.7、OCR、图像处理、输入以及 Win32 库,同时在发行包中打包 PNG 资源。

文档:

  • 记录手动审核模式、已保存账号切换行为、进程保留默认设置,以及关于旧版控制器/模拟器和凭证字段的兼容性说明。

测试:

  • 添加全面测试,用于验证控制器/资源对齐、已保存账号登录与遮蔽、运行时/手动审核行为,以及在移除密码和旧版 ID 时的 schema 迁移。

杂项:

  • 为 MaaEnd 适配器项目添加 .gitignore
Original summary in English

Summary by Sourcery

为 MaaEnd 新增 Win32 手动审阅模式和桌面已保存账号登录流程,同时收紧运行时配置与凭据处理。

New Features:

  • 为 MaaEnd 引入基于 Win32 的手动审阅任务模式,与自动代理模式并存。
  • 在不存储明文密码的前提下,通过对 Endfield 客户端进行 OCR,实现桌面已保存账号登录和账号切换。

Enhancements:

  • 让 MaaEnd 控制器和资源选择与 MaaFW 接口声明保持一致,并规范旧版运行时的控制器/模拟器字段。
  • 要求 MaaEnd 用户配置集合实现 Mapping 协议,并避免导入旧版 ConfigBase 模型。
  • 添加 CloseOnManualStop 标志,并优化游戏关闭行为:在手动停止时可选择保留 Endfield 继续运行,同时仍然遵守 CloseOnFinish 设定。

Build:

  • 将插件版本提升至 0.0.6,更新 MaaFW,并添加 OCR/图像/Win32/输入相关依赖,同时在包中捆绑 PNG 模板资源。

Documentation:

  • 更新 README,说明手动审阅模式、已保存账号切换语义、默认游戏进程保留策略,以及针对旧版控制器/模拟器和凭据字段的兼容行为。

Tests:

  • 添加控制器/资源对齐及旧版运行时字段迁移的测试。
  • 添加针对已保存账号登录行为、模板资源完整性以及账号 ID 掩码处理的测试。
  • 添加验证架构迁移(淘汰旧密码/ID 字段并保留其他数据)的测试。
  • 添加手动审阅流程、停止策略以及可见窗口检测的测试。
  • 添加回归测试,确保运行时适配器不再导入旧版配置模型。

Chores:

  • 在 MaaEnd 适配器项目中添加 .gitignore 文件。
Original summary in English

Summary by Sourcery

Add Win32 manual review mode and desktop saved-account login flow for MaaEnd, while tightening runtime configuration and credential handling.

New Features:

  • Introduce Win32-based manual review task mode for MaaEnd alongside automatic proxy.
  • Implement desktop saved-account login and account switching using OCR over the Endfield client without storing plaintext passwords.

Enhancements:

  • Align MaaEnd controller and resource selection with MaaFW interface declarations and normalize legacy runtime controller/emulator fields.
  • Require MaaEnd user configuration collections to implement the Mapping protocol and avoid importing legacy ConfigBase models.
  • Add CloseOnManualStop flag and refine game shutdown behavior to optionally keep Endfield running on manual stops while honoring CloseOnFinish.

Build:

  • Bump plugin version to 0.0.6, update MaaFW and add OCR/image/Win32/input dependencies, and bundle PNG template assets in the package.

Documentation:

  • Update README to document manual review mode, saved-account switching semantics, default game process retention, and compatibility behavior for legacy controller/emulator and credential fields.

Tests:

  • Add tests for controller/resource alignment and legacy runtime field migration.
  • Add tests covering saved-account login behavior, template asset integrity, and masking of account IDs.
  • Add tests verifying schema migration away from retired password/ID fields while preserving other data.
  • Add tests for manual review flow, stop policies, and visible-window detection.
  • Add a regression test ensuring the runtime adapter no longer imports legacy config models.

Chores:

  • Add a .gitignore file to the MaaEnd adapter project.

新功能:

  • 为 MaaEnd 添加 Win32 手动审核模式,使用基于 OCR 的最近账号选择实现已保存账号的桌面登录流程。
  • 为 Endfield 引入桌面已保存账号切换功能,在不存储或使用明文密码的前提下完成账号切换。

增强:

  • 使 MaaEnd 控制器和资源配置与 MaaFW 接口声明保持一致,并规范旧版运行时控制器/模拟器字段。
  • 收紧 MaaEnd 运行时用户配置要求,仅接受基于 Mapping 的配置,并避免导入旧版 ConfigBase 模型。
  • 新增 CloseOnManualStop 标志,并优化游戏关闭行为,在手动停止时可选择保留 Endfield 进程,同时遵守 CloseOnFinish 设定。

构建:

  • 将插件版本提升至 0.0.6,依赖更新至 MaaFW 0.1.7,以及 OCR/图像/win32/输入相关库,并在发行包中包含 PNG 模板资源。

文档:

  • 更新 README,说明手动审核模式、已保存账号切换行为、游戏进程保留默认设置,以及与旧版控制器/模拟器和凭据字段的兼容性说明。

测试:

  • 添加全面测试,覆盖控制器/资源配置一致性、已保存账号登录的屏蔽与行为、手动审核流程及停止策略、废弃密码/ID 字段的 schema 迁移、运行时控制器/模拟器字段迁移,以及确保打包资产可正确解码。

杂项:

  • 为 MaaEnd 适配器项目添加 .gitignore 文件。
Original summary in English

Summary by Sourcery

为 MaaEnd 新增 Win32 手动审阅模式和桌面已保存账号登录流程,同时收紧运行时配置与凭据处理。

New Features:

  • 为 MaaEnd 引入基于 Win32 的手动审阅任务模式,与自动代理模式并存。
  • 在不存储明文密码的前提下,通过对 Endfield 客户端进行 OCR,实现桌面已保存账号登录和账号切换。

Enhancements:

  • 让 MaaEnd 控制器和资源选择与 MaaFW 接口声明保持一致,并规范旧版运行时的控制器/模拟器字段。
  • 要求 MaaEnd 用户配置集合实现 Mapping 协议,并避免导入旧版 ConfigBase 模型。
  • 添加 CloseOnManualStop 标志,并优化游戏关闭行为:在手动停止时可选择保留 Endfield 继续运行,同时仍然遵守 CloseOnFinish 设定。

Build:

  • 将插件版本提升至 0.0.6,更新 MaaFW,并添加 OCR/图像/Win32/输入相关依赖,同时在包中捆绑 PNG 模板资源。

Documentation:

  • 更新 README,说明手动审阅模式、已保存账号切换语义、默认游戏进程保留策略,以及针对旧版控制器/模拟器和凭据字段的兼容行为。

Tests:

  • 添加控制器/资源对齐及旧版运行时字段迁移的测试。
  • 添加针对已保存账号登录行为、模板资源完整性以及账号 ID 掩码处理的测试。
  • 添加验证架构迁移(淘汰旧密码/ID 字段并保留其他数据)的测试。
  • 添加手动审阅流程、停止策略以及可见窗口检测的测试。
  • 添加回归测试,确保运行时适配器不再导入旧版配置模型。

Chores:

  • 在 MaaEnd 适配器项目中添加 .gitignore 文件。
Original summary in English

Summary by Sourcery

Add Win32 manual review mode and desktop saved-account login flow for MaaEnd, while tightening runtime configuration and credential handling.

New Features:

  • Introduce Win32-based manual review task mode for MaaEnd alongside automatic proxy.
  • Implement desktop saved-account login and account switching using OCR over the Endfield client without storing plaintext passwords.

Enhancements:

  • Align MaaEnd controller and resource selection with MaaFW interface declarations and normalize legacy runtime controller/emulator fields.
  • Require MaaEnd user configuration collections to implement the Mapping protocol and avoid importing legacy ConfigBase models.
  • Add CloseOnManualStop flag and refine game shutdown behavior to optionally keep Endfield running on manual stops while honoring CloseOnFinish.

Build:

  • Bump plugin version to 0.0.6, update MaaFW and add OCR/image/Win32/input dependencies, and bundle PNG template assets in the package.

Documentation:

  • Update README to document manual review mode, saved-account switching semantics, default game process retention, and compatibility behavior for legacy controller/emulator and credential fields.

Tests:

  • Add tests for controller/resource alignment and legacy runtime field migration.
  • Add tests covering saved-account login behavior, template asset integrity, and masking of account IDs.
  • Add tests verifying schema migration away from retired password/ID fields while preserving other data.
  • Add tests for manual review flow, stop policies, and visible-window detection.
  • Add a regression test ensuring the runtime adapter no longer imports legacy config models.

Chores:

  • Add a .gitignore file to the MaaEnd adapter project.

qiyinxi and others added 3 commits July 26, 2026 21:53
- 新增 saved_account_login:OCR 识别最近账号(仅匹配掩码后缀)、模板匹配登出/退出流程
- runtime/plugin/schema 扩展登录调度并移除明文密码字段
- pyproject 升级至 0.0.6,新增 OCR/图像与 win32 依赖,打包 resources 模板图

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- 覆盖保存账号登录、runtime controller 对齐、密码字段退役与 schema 迁移

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- .gitignore 覆盖 build/、debug/、egg-info、__pycache__ 等产物

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@sourcery-ai

sourcery-ai Bot commented Jul 26, 2026

Copy link
Copy Markdown

🧙 Sourcery 正在审查你的拉取请求!


技巧与命令

与 Sourcery 互动

  • 触发新的审查: 在拉取请求中评论 @sourcery-ai review
  • 继续讨论: 直接回复 Sourcery 的审查评论。
  • 从审查评论生成 GitHub issue: 通过回复审查评论请 Sourcery 根据该评论创建一个 issue。你也可以在审查评论中回复 @sourcery-ai issue 来从该评论创建一个 issue。
  • 生成拉取请求标题: 在拉取请求标题任意位置写上 @sourcery-ai,即可随时生成一个标题。你也可以在拉取请求中评论 @sourcery-ai title 来(重新)生成标题。
  • 生成拉取请求摘要: 在拉取请求正文任意位置写上 @sourcery-ai summary,即可在你希望的位置随时生成 PR 摘要。你也可以在拉取请求中评论 @sourcery-ai summary 来(重新)生成摘要。
  • 生成审查者指南: 在拉取请求中评论 @sourcery-ai guide 来随时(重新)生成审查者指南。
  • 解决所有 Sourcery 评论: 在拉取请求中评论 @sourcery-ai resolve 来解决所有 Sourcery 评论。如果你已经处理完所有评论且不想再看到它们,这会很有用。
  • 取消所有 Sourcery 审查: 在拉取请求中评论 @sourcery-ai dismiss 来取消所有现有的 Sourcery 审查。如果你想从一个全新的审查开始,这尤其有用——别忘了评论 @sourcery-ai review 来触发新的审查!

自定义你的体验

访问你的控制面板以:

  • 启用或禁用审查功能,例如 Sourcery 生成的拉取请求摘要、审查者指南等。
  • 更改审查语言。
  • 添加、删除或编辑自定义审查说明。
  • 调整其他审查设置。

获取帮助

Original review guide in English

🧙 Sourcery is reviewing your pull request!


Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

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.

1 participant