mirror of
https://github.com/hanzoai/python-sdk.git
synced 2026-10-23 20:23:00 +00:00
The unified tool derived its surface from /v1/openapi.json, which describes the API rather than what a model may be handed. cloud keeps an operation off the agent surface when its name discloses a bearer secret or when a mutating verb acts on identity — post_iam_users is in the contract and refused at /v1/mcp, so this tool offered an identity mutation the fleet declines. The document still supplies each operation's method and path, which a caller needs to make the request; the generated catalog supplies which are offered. Two facts, one source each, and the rule is asked of cloud rather than restated. An unreadable catalog offers nothing, because failing open widens the surface silently. Two aliases pointed at names the fleet had left behind, mapping callers off the live surface. A synonym may only point at a name it serves. A fixture naming no operations is not exercising the offer rule and now says so, rather than the default being weakened to keep it green.