mirror of
https://github.com/langgenius/dify.git
synced 2026-10-04 13:47:55 +08:00
apply_set_node_config wrote node["data"][path] as a flat key, so every dotted path the repair agent emits (cases.0.conditions.1.value) created a junk key the workflow engine ignores. The dry run passed, the change set printed a plausible line, and the graph never changed -- which is why ESQ1-285 survived nine approvals and ESQ1-290 six. Paths now resolve through lists and mappings, and an unwalkable path raises. Raising is half the fix: filter_applicable dry-runs intents through the real apply_* and feeds rejection reasons back to the repair agent, so a bad path now produces corrective feedback instead of a silent no-op. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>