Skip to content

Merge:'refactor/Collect_L'| 重构卡带选择器#274

Merged
sunyink merged 2 commits into
mainfrom
refactor/Collect_L
May 8, 2026
Merged

Merge:'refactor/Collect_L'| 重构卡带选择器#274
sunyink merged 2 commits into
mainfrom
refactor/Collect_L

Conversation

@sunyink
Copy link
Copy Markdown
Owner

@sunyink sunyink commented May 8, 2026

Summary by Sourcery

Enhancements:

  • 精简并重组 Collect_Launcher、Collect_Navigation 和 Collect_TeleportRecall 管道的 JSON 定义,以改进 selector 的处理。
Original summary in English

Summary by Sourcery

Enhancements:

  • Streamline and reorganize Collect_Launcher, Collect_Navigation, and Collect_TeleportRecall pipeline JSON definitions for improved selector handling.

Summary by CodeRabbit

发行说明

  • Chores
    • 优化了系统内部流程配置和路由机制。
    • 改进了控制流决策的管理方式。
    • 调整了系统限制参数以提高稳定性。

@sourcery-ai
Copy link
Copy Markdown

sourcery-ai Bot commented May 8, 2026

评审者指南(在小型 PR 中折叠显示)

评审者指南

对 Collect_* 流水线配置 JSON(Launcher、Navigation、TeleportRecall)进行重构,可能是为了支持新的或更简洁的 cartridge/selector 行为,同时保持现有流水线结构的一致性。

文件级变更

变更 详情 文件
为 launcher、navigation 和 teleport-recall 流程重构 Collect_* 流水线配置。
  • 将 Collect_Launcher、Collect_Navigation 和 Collect_TeleportRecall 的共享流水线配置结构更新为新的重构格式
  • 对齐字段名、ID 或引用,使其与新的 cartridge/selector 模型保持一致
  • 移除或合并遗留或重复的配置项,以简化流水线
assets/resource/base/pipeline/Collect_Launcher.json
assets/resource/base/pipeline/Collect_Navigation.json
assets/resource/base/pipeline/Collect_TeleportRecall.json

技巧和命令

与 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
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Refactors the Collect_* pipeline configuration JSONs (Launcher, Navigation, TeleportRecall), likely to support a new or cleaned‑up cartridge/selector behavior while keeping existing pipeline structure aligned.

File-Level Changes

Change Details Files
Refactor Collect_* pipeline configuration for the launcher, navigation, and teleport-recall flows.
  • Update shared pipeline configuration structure to the new refactored format for Collect_Launcher, Collect_Navigation, and Collect_TeleportRecall
  • Align field names, IDs, or references to match the new cartridge/selector model
  • Remove or consolidate legacy or duplicate configuration entries to simplify the pipelines
assets/resource/base/pipeline/Collect_Launcher.json
assets/resource/base/pipeline/Collect_Navigation.json
assets/resource/base/pipeline/Collect_TeleportRecall.json

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

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - 我已经审查了你的更改,一切看起来都很棒!


Sourcery 对开源项目是免费的——如果你觉得我们的评审有帮助,请考虑分享它们 ✨
帮我变得更有用!请在每条评论上点 👍 或 👎,我会根据你的反馈来改进之后的评审。
Original comment in English

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 8, 2026

Review Change Stack

📝 Walkthrough

概览

本次 PR 重构流水线配置,将多个控制流决策从内联自定义补丁逻辑转换为锚点驱动路由和标签重置机制。特征开关节点的 next 分支格式化为多行数组;快速购物车 OCR 检查节点、包框架定位、分页导航和包处理流程采用统一锚点架构。

变更

流水线锚点驱动路由重构

层 / 文件(s) 摘要
网关与条件逻辑
assets/resource/base/pipeline/Collect_Launcher.json
沙箱入口门槛和快速购物车菜单决策现使用数组形式的条件与锚点驱动路由;feature-switch 节点 next 分支改为多行数组。
OCR 检查与锚点建立
assets/resource/base/pipeline/Collect_Launcher.json
Story/Character/Event QuickCart OCR 检查节点用 [Anchor]LocSmartSwip_Limit Ctr 锚点替代批量恢复自定义操作。
包框架位置定位策略
assets/resource/base/pipeline/Collect_Launcher.json
Collect_LocatePackFrame_Loc1 至 Loc9 节点的 custom_action 从正则补丁 (PatchByRegex) 转换为标签重置 (ResetTag);添加 PackFrame_Loc 锚点;移除正则规则。
分页与智能滑动流程
assets/resource/base/pipeline/Collect_Launcher.json
Egress 节点现指向 [Anchor]LocSmartSwip_Limit Ctr 而非固定页面;页面节点 (1-5Page) 添加递进的锚点映射以驱动分页跳转。
包选择 ROI 与点击机制
assets/resource/base/pipeline/Collect_Launcher.json
TemplateMatch ROI 源从字面节点名改为 [Anchor]PackFrame_Loc 参考。
包处理节点统一路由
assets/resource/base/pipeline/Collect_Launcher.json
Story (1-20)、Character (1-8)、Event (1-4) 包节点统一转换:custom_action 改为 PatchNode;添加 anchor: Pack_Click;next 路由到 Collect_Pack_Click 汇聚点。Collect_Pack_Click 在 Collect_OperationsMain_Sandplay 后循环回自身。
辅助配置与导航
assets/resource/base/pipeline/Collect_Launcher.json, assets/resource/base/pipeline/Collect_Navigation.json, assets/resource/base/pipeline/Collect_TeleportRecall.json
FirstPack 预期文本和 talk 块格式化;Collect_OperationsMain_Sandplay 添加 Pack_Click 锚点定义;MiniMap 节点添加 max_hit: 5 约束。

估计代码审查工作量

🎯 4 (复杂) | ⏱️ ~45 分钟

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive PR 标题包含分支名称 'refactor/Collect_L' 和中文说明 '重构卡带选择器',但未充分反映变更集的主要内容。变更涉及管道配置的大幅重构,包括控制流决策从自定义补丁逻辑转向锚点驱动路由,但标题未清晰阐述这一核心变更。 建议优化标题,例如:'重构卡带选择器管道:采用锚点驱动路由替代自定义补丁逻辑' 或 '重构 Collect 管道配置以采用锚点驱动控制流',以更清晰地反映变更的本质。
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch refactor/Collect_L

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
assets/resource/base/pipeline/Collect_TeleportRecall.json (1)

561-576: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

不要把这个共享恢复节点限制成只命中 5 次。

Collect_NviMap_SpeciaEveMap1#_MiniMap_SubMenu 不是一次性业务节点,而是 Event_1 / Event_3 共用的子菜单恢复点。MAA 的 max_hit 一旦用尽,后续在 next 里会直接跳过这个节点;这样同一轮任务里只要后面再次弹出“小地图图标子菜单”,这条链就再也没有机会把它点掉,Collect_NviMap_SpeciaEveMap1#_MiniMap 很容易退化成重复尝试的空转。除非你已经用日志证明单次任务绝不会超过 5 次,否则这里的上限过紧。(maafw.com)

As per coding guidelines, assets/resource/**/pipeline/**/*.json: 检查 next 跳转,防止构成非预期的死循环(除非 doc 明确是轮询)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@assets/resource/base/pipeline/Collect_TeleportRecall.json` around lines 561 -
576, Collect_NviMap_SpeciaEveMap1#_MiniMap_SubMenu 不该被硬性限制为 max_hit:5,因为这是
Event_1/Event_3 共享的恢复子菜单节点,会在一次任务中被重复使用;把该节点的 max_hit
删除或改为无限/足够大的值(或使用框架支持的“unlimited”/0 表示不限制),并同时检查
Collect_NviMap_SpeciaEveMap1#_MiniMap 与该节点在 next
跳转中的关系,确保修改后不会引入意外的死循环(按规则审查所有指向该子菜单的 next 分支,必要时加入条件/计数器或明确的退出分支以防环路)。
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@assets/resource/base/pipeline/Collect_Launcher.json`:
- Around line 2659-2678: Collect_Pack_Click can loop indefinitely because its
next array includes itself and its recognition is only Collect_QuickCart_Menu;
add an exit limiter by adding a "max_hit" (e.g., 3–5) to Collect_Pack_Click and
define a fallback branch when the max is reached that does a
reposition/menu-reset instead of retrying the same anchor—for example, after
max_hit route to [JumpBack]Global_WaitingForLoading or a relocation node (e.g.,
Collect_QuickCart_Reposition or another menu-reset node) so the selector chain
can escape the self-loop and continue recovery.

---

Outside diff comments:
In `@assets/resource/base/pipeline/Collect_TeleportRecall.json`:
- Around line 561-576: Collect_NviMap_SpeciaEveMap1#_MiniMap_SubMenu 不该被硬性限制为
max_hit:5,因为这是 Event_1/Event_3 共享的恢复子菜单节点,会在一次任务中被重复使用;把该节点的 max_hit
删除或改为无限/足够大的值(或使用框架支持的“unlimited”/0 表示不限制),并同时检查
Collect_NviMap_SpeciaEveMap1#_MiniMap 与该节点在 next
跳转中的关系,确保修改后不会引入意外的死循环(按规则审查所有指向该子菜单的 next 分支,必要时加入条件/计数器或明确的退出分支以防环路)。
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: b9906065-1cd9-4e74-b336-89713e3d4b67

📥 Commits

Reviewing files that changed from the base of the PR and between 2d27adf and 114ed45.

📒 Files selected for processing (3)
  • assets/resource/base/pipeline/Collect_Launcher.json
  • assets/resource/base/pipeline/Collect_Navigation.json
  • assets/resource/base/pipeline/Collect_TeleportRecall.json

Comment thread assets/resource/base/pipeline/Collect_Launcher.json
@sunyink sunyink merged commit aa6d836 into main May 8, 2026
21 checks passed
@sunyink sunyink deleted the refactor/Collect_L branch May 8, 2026 13:46
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