Repository navigation
Refactor recipes / 重构配方结算并支持催化剂与来源筛选(1.21.4) - #141
Conversation
- 修复共享槽位重复结算、回滚顺序和批次组件串用 - 支持催化剂预留、来源筛选与提交完成事件 - 校验旧物品处理器同步结果并加入二十一项游戏回归
🌿 Roseau API Breaking Change Report
🔴 recipe — 1 breaking change(s)
|
代码审查摘要 — PR #141操作: 变更地图
🔴 合并前需澄清
|
| 声称 | 状态 | 证据 |
|---|---|---|
| 重构配方结算 | ✅ | InWorldRecipe / InWorldRecipeContext / ItemCache / ICacheInputOutputImpl / AbstractCacheElement |
| 支持催化剂 | ✅ | HasItemIngredient.consume + codec/STREAM_CODEC + Builder;tests catalyst_reserves_without_consuming、shared/separate_handler_catalyst |
| 来源筛选 | ✅ | 4 参 getInput/getOutput + InputKey/OutputKey;tests source_filter_accounts_exactly、output_filters_separate_keys |
结论: REQUEST_CHANGES — 核心实现审查通过、未发现逻辑缺陷;需先办两件:(1) 给出新测试的可执行路径与通过证据(PR 描述为空);(2) 明确"严格校验抛异常"在库边界的处理策略(ItemEntityEventListener 无捕获 ⇒ misbehaving IItemHandler 会崩服)。其余为跨仓库跟进与非阻塞建议。
🧪 测试建议
| 被测目标 | 场景 | 优先级 |
|---|---|---|
ItemHandlerCacheElement.sync() |
类型变化 + 非 IItemHandlerModifiable:真实插入被拒时槽位不应被清空(当前会) |
🔴 |
InWorldRecipe.matches |
匹配成功但未调用 assemble:断言残留预订/栈的契约行为 |
🟡 |
ItemCache.grow |
大量互不包含的查询:scannedRanges 线性扫描的性能回归基准 |
🟡 |
ItemCacheSlotProvider |
循环映射、返回 null、视图限制被绕过 | 🟡 |
HasItemIngredient |
count=0 / max_efficiency=0 的旧数据包加载错误信息清晰可读 |
🟢 |
标题建议(未自动修改)
gh auth status 显示 token 无效(Gugle2308 账户 token invalid),未执行 gh pr edit,仅给出建议(英文部分比"Refactor recipes"更具体):
Refactor recipe settlement; add catalyst (non-consuming) ingredients and source-filtered cache queries 重构配方结算并支持催化剂与来源筛选(1.21.4)
由 Hermes Agent 审查
|
PR #141 的操作类型为 closed(已关闭),按审查流程约定:closed/labeled 事件直接停止,不发布评论。 因此本次不做 diff 拉取与审查输出,也不会在 PR 上留下任何评论。若该 PR 后续被重新打开(reopened / ready_for_review),再触发一次即可正常审查。 |
|
💾 Self-improvement review: Patched SKILL.md in skill 'offline-pr-evidence-verification' (1 replacement). |
No description provided.