Skip to content

fix: pin tools from a called flow's own vars - #12

Merged
piekstra merged 2 commits into
mainfrom
piekstra/flow-tool-pins
Oct 8, 2026
Merged

piekstra merged 2 commits into
mainfrom
piekstra/flow-tool-pins

Conversation

@piekstra

@piekstra piekstra commented Oct 8, 2026 •

Copy link
Copy Markdown
Member

Tool profile env pins were computed once per run from the top-level flow's vars. A suite has no vars of its own, so its members ran their tools without the tenant or account their own vars named, while the same flow run alone worked. A profile that read vars.tenant without a has() guard failed the whole suite before any member started.

  • A flow called by a flow step pins the tools it lists from its own vars, over its caller's pins. A nested flow that does not list the tool keeps its caller's pins.
  • At the top level, a pin that cannot be resolved for a tool only callees list is left unset instead of failing the run. Tools the top-level flow lists still fail on an unresolvable pin.
  • A called flow's services get that flow's pins.
  • Preflight still checks each tool once, with the top-level pins. The docs say this under Tools.

Test: a_called_flow_pins_tools_from_its_own_vars runs a suite with an unguarded vars.tenant pin, a member that pins it from its environment, and a nested flow that inherits it.

@piekstra

piekstra commented Oct 8, 2026

Copy link
Copy Markdown
Member Author

Review fixes: a pin the top-level flow cannot resolve for a tool only its callees list is left unset instead of failing the run; called flows' services get that flow's pins; the test covers an unguarded vars pin and a nested flow; docs state that preflight checks with the top-level pins.

@piekstra
piekstra marked this pull request as ready for review October 8, 2026 16:39
@piekstra
piekstra merged commit 0ff01e5 into main Oct 8, 2026
5 checks passed
@piekstra
piekstra deleted the piekstra/flow-tool-pins branch October 8, 2026 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant