Repository navigation
Python: binding external approval to final tool arguments across resume #9667
Replies: 1 comment 1 reply
|
I traced this on main (67ba500) and ran the cases below against a fake chat client. Short version: with a session, core binds a tool approval to the arguments the approval request showed, and only to those. Pydantic coercion, runtime kwargs, What core binds (default settings, with a session)
What that binding does not cover
Declaration-only tools (
There is no public API that compares the approved arguments with the final ones; the comparison key is private. If you need it in process, a middleware placed innermost can compare The cases I ran (tool
|
Uh oh!
There was an error while loading. Please reload this page.
I am working on an external exact-action approval adapter and want to pin down its supported integration boundary in Python Agent Framework.
The answer in #6848 identifies declaration-only tools with the request_info/responses handshake, and FunctionMiddleware for in-process interception. #7871 separately discusses session-backed approval rebinding. My question is narrower than those two: which boundary owns the final executable arguments when validation, hidden-argument materialization or runtime kwargs can occur around approval and resume?
The contract I need is:
For a local create-only file action, I already have this host-side boundary in Action Authority 0.3.0, using the Harness writer. There is no Agent Framework/FIDES adapter yet.
Is the recommended route to keep final materialization and execution entirely host-owned behind a declaration-only tool, or is there a supported FunctionMiddleware ordering contract that binds approval to the final arguments across resume? In the FIDES case, that must preserve its policy preflight rather than expand hidden values before authorization.
I am looking for the existing contract or sample to target, not proposing a parallel approval API. This is an integration question, not a vulnerability report; the local-file component does not provide IFC or containment of a compromised host.
— krivonosoff161
All reactions