test(openrouter): stabilize real tool acceptance with native calls #35

Merged
lost-rob0t merged 1 commit from hotfix/live-tool-native-openrouter into main 2026-08-12 21:24:19 +00:00
lost-rob0t commented 2026-08-12 21:22:21 +00:00 (Migrated from github.com)

Summary

  • replace the brittle requirement that arbitrary openrouter/free models serialize an exact internal typed-plan JSON AST
  • use a REAL OpenRouter native function/tool request with tool_choice: required
  • require the live provider to select project_read with the exact fixture path
  • convert that provider-selected call into the existing trusted typed plan and execute it through the capability-gated project tool registry
  • keep the real credential requirement and fail closed after bounded real-provider attempts; there is no fake-provider fallback

Why

Post-merge main verification for #13 showed the new true streaming acceptance passing, but the pre-existing #8 live tool gate failed because two randomly routed free models did not reproduce the exact hand-authored plan serialization. This change tests the intended boundary directly: real model tool selection plus trusted host execution.

Validation

  • exact branch head deterministic CI and all static-load checks are green
  • PR CI must pass the full REAL OpenRouter core and structured-repair suites before merge
## Summary - replace the brittle requirement that arbitrary `openrouter/free` models serialize an exact internal typed-plan JSON AST - use a REAL OpenRouter native function/tool request with `tool_choice: required` - require the live provider to select `project_read` with the exact fixture path - convert that provider-selected call into the existing trusted typed plan and execute it through the capability-gated project tool registry - keep the real credential requirement and fail closed after bounded real-provider attempts; there is no fake-provider fallback ## Why Post-merge `main` verification for #13 showed the new true streaming acceptance passing, but the pre-existing #8 live tool gate failed because two randomly routed free models did not reproduce the exact hand-authored plan serialization. This change tests the intended boundary directly: real model tool selection plus trusted host execution. ## Validation - exact branch head deterministic CI and all static-load checks are green - PR CI must pass the full REAL OpenRouter core and structured-repair suites before merge
Sign in to join this conversation.
No description provided.