Repository navigation
refactor: keep Embed independent of reviewer policy #7351
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -101,7 +101,10 @@ directories; transcripts and memory persist with the workspace. | |
| ## Tool factories | ||
|
|
||
| `AgentSpec::tools` supplies a host's own in-process tools when an agent is | ||
| created. Each tool is a real tool with its own schema on the wire, unlike a | ||
| created. Import `Tool`, `ToolResult` and `ToolPolicy` from `openhuman_embed`; | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Document imports that are actually exported The visible [RULE] invalid-public-api · |
||
| `Tool::policy` declares execution requirements using the same vendored contract | ||
| as the core. Application-specific executors belong to the embedding host. | ||
| Each tool is a real tool with its own schema on the wire, unlike a | ||
| tool reached through an MCP server's `mcp_call_tool` envelope. The factory | ||
| runs once per session build, which in practice is once per turn: an `Agent` | ||
| is `Clone` and `Box<dyn Tool>` is not, so a stored belt could not survive the | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Describe the policy contract used by the core
The statement that this is the same contract as the core is not supported by the visible APIs:
openhuman_embed::ToolPolicyis re-exported fromtinytools, while the core's agent policy code and attachment integration useopenhuman_core::agent::tool_policy::ToolPolicyandToolPolicyDecision. These are distinct paths and may not be interchangeable, so hosts could implement the documented policy type while the agent policy machinery never consumes it. Clarify the intended relationship and document the actual trait required byTool::policy.[RULE] incorrect-contract-description ·