[Bug]:OptsDict.mutate key ()'s clear () is a no-op (DictProxy没有明确的覆盖) - 删除的graps/ pill 键从不实际清除
作者: tritsystem创建于 2026年9月5日更新于 2026年9月8日
`salt.utils.optsdict.OptsDict.mutate_key()` 文档中声明了在原地替换字典值键的内容("清除 + 更新",即完全替换),以便在 `opts["grains"]` / `opts["pillar"]` 中已缓存的引用中看到更新,而无需将 `opts[key]` 重新绑定到新对象。这是 `salt/minion.py` 仅在必要时才应用真正的粒子或柱子刷新(`opts.mutate_key("grains", new_grains)" / `opts.mutate_key("pillar", new_pillar")` -- 在 minion 刷新流中没有 `opts["grains"] = new_grains` 的路径。`mutate_key()` 的"清除"部分默默地是一个空操作,因此实际上表现为普通的合并/更新,而不是替换:
内容来源: saltstack/salt