diff --git a/Graph-Agents.md b/Graph-Agents.md index 6dab61d..26e7c10 100644 --- a/Graph-Agents.md +++ b/Graph-Agents.md @@ -309,7 +309,9 @@ resolved strictly (a missing key fails the node before the child starts, with - A value that is exactly one reference (`"{{inner_width}}"`) hands the parent's JSON value through unchanged: numbers stay numbers, lists stay lists, objects stay objects. Scripts in the child see the real type; - the child's own templates stringify it the usual way. + the child's own templates stringify it the usual way. Nested paths work + the same way (`"{{limits.width}}"` hands through `limits.width` with its + type intact). - Anything else (`"Repo: {{repo}}"`, `"{{a}}-{{b}}"`) renders to a string. - **`null` is a value, not an absence.** A lone `"{{k}}"` whose parent value is `null` overlays the child's default with `null`. Because `state_updates` @@ -318,7 +320,11 @@ resolved strictly (a missing key fails the node before the child starts, with `x: null`, not its own default. **Two things are rejected**, both at load time by the validator and again at -runtime for graphs running with `validate_before_run: false`: +runtime for graphs running with `validate_before_run: false`. The validator +messages below name the node; the runtime guards name the agent instead +(`agent '' has no graph.yaml; …` / `agent '': `inputs.initial_prompt` +is reserved …`) and arrive wrapped in the usual `at node '': Agent '' +failed:` context, so the node is still recoverable from the error chain. - `inputs:` on a node whose `agent` has a `config.yaml` but no `graph.yaml` (`agent node '': `inputs:` requires agent '' to be a graph agent