Repository navigation
Fix 26.1.2 predicate previews 修复方块预览属性组合 - #145
WhereisFff wants to merge 1 commit into
Conversation
WhereisFff
commented
Oct 4, 2026
- 修复预览状态的属性组合与范围匹配
- fixed [Bug] JEI内多方块合成和多方块转化配方显示异常 AnvilCraft#5206
Reason: script execution via -e/-c flag Reply |
|
⏱️ Rate limited. Waiting 2.5s (attempt 2/3)... |
|
⏱️ Rate limited. Waiting 2.3s (attempt 2/3)... |
|
⏱️ Rate limited. Waiting 2.0s (attempt 2/3)... |
|
⏱️ Rate limited. Waiting 4.1s (attempt 3/3)... |
|
❌ Rate limited after 3 retries — Concurrency limit exceeded for user, please retry later |
|
API call failed after 3 retries: Concurrency limit exceeded for user, please retry later |
🌿 Roseau API Breaking Change Report
|
代码审查摘要 — AnvilLib PR #145操作: ready_for_review(PR 状态 🔴 关键问题无。 ✅ 修复正确性核验(逐条对照语义)
|
| 声称 | 状态 | 证据 |
|---|---|---|
| 修复预览状态的属性组合 | ✅ | hunk 1:链式展开 + 组内 allMatch 过滤,与 testWithoutEntity() 的 AND/OR 语义同构 |
| 修复…范围匹配 | ✅ | hunk 2:>= min / <= max,与 RangedMatcher.match() 一致 |
| fixed Anvil-Dev/AnvilCraft#5206 | ✅(26.1 线)/ |
症状因果链已核实;但报告版本在 1.21.1 线,该线同源缺陷仍在 |
🧪 测试建议
| 被测目标 | 推荐测试场景 | 优先级 |
|---|---|---|
BlockStatePredicate.constructStatesForRender() |
单 matcher 范围谓词 [min,max] 覆盖全值域 ⇒ 非空且全部落在区间内(回归旧版反转判据) |
🔴 |
| 同上 | 同组同属性 min/max 两个 matcher ⇒ 结果 = 交集,且与 testWithoutEntity 逐状态一致(render ⊆ test) |
🔴 |
| 同上 | 同组矛盾条件(age=1 + age=2)⇒ 空列表且不抛异常 |
🟡 |
| 同上 | 空 AND 组 / 属性不存在于方块 ⇒ 不产生非法状态 | 🟡 |
getStatesCache() |
同一谓词多次/跨进程取 getFirst() 稳定(若采纳 LinkedHashSet) |
🟡 |
结论: APPROVE(建议合并) — 两处修改对症、语义自洽、diff 干净,未发现阻塞性问题;#5206 的两类症状都能由此解释并修复。上述 LinkedHashSet(一行改动即可消除 getFirst() 的跨运行不稳定)。
由 Hermes Agent 审查
|
💾 Self-improvement review: Patched SKILL.md in skill 'blockstate-predicate-review' (1 replacement). · Patched references/predicate-preview-fix-series-and-branch-coverage.md in skill 'blockstate-predicate-review' (1 replacement). |
|
收到,PR #145 的操作类型是 closed(已关闭)。按 webhook 审查规则(closed/labeled → 停止),本次不拉取 diff、不输出审查意见、不发表任何评论。 未执行任何 curl / gh 命令,无评论产生。 |