[MD]
### 新增
- 配方材料新增组件级 `matcher` 需求,普通制作与拆解都可以按物品组件、Lore、PDC 和逻辑条件逐栈匹配与扣除。
### 重构
- 材料通道按需求类型分流:普通 `item_sources` 材料继续使用背包与 EmakiStorage 合并通道;需要逐栈组件判断的 matcher 材料从背包匹配。
### 破坏性变更
- `MaterialRequirementView` 允许 matcher 需求的 `sources()` 为空;直接依赖 `sources().getFirst()` 或假定每项都有模板来源的第三方代码需要调整。
### 升级说明
- `persistence.autosave_interval` 会迁移为 `persistence.autosave_interval_seconds`,`gui.refresh_interval` 会迁移为 `gui.refresh_interval_ticks`;升级后请核对保留值。
- 自定义材料同时检查 `item_sources` 与 `matcher`;matcher 材料不能使用 Storage 模板数量代替组件级判断。
- 在测试服验证既有工位、拆解、队列、提交/取消/领取、退款、重启恢复、满背包/满仓库待领取,以及有无 EmakiStorage 时的行为。
[/MD]