Skip to content

fix(aihorde): preserve model and enforce nonce-bound tool contract (#7424) - #22

Merged
KytranKatarn merged 2 commits into
release/v3.8.53from
opencode/aihorde-tool-contract
Oct 23, 2026
Merged

KytranKatarn merged 2 commits into
release/v3.8.53from
opencode/aihorde-tool-contract

Conversation

@KytranKatarn

Copy link
Copy Markdown
Owner

Changes

  • Explicitly forward input.model to AI Horde. Earlier Model None not known failures cannot be attributed to offline workers when the requested model was not sent.
  • Add a provider-scoped instruction to emit the actual tool envelope rather than narration. Shared prompts for other executors remain unchanged.
  • Opt AI Horde into strict parser mode: exact request nonce and requested tool name are mandatory. Missing/wrong nonce, unknown names and incomplete blocks remain non-executable text. Other executors retain compatibility defaults.
  • Preserve caller max_tokens; short truncated output is not proof of model noncompliance.

Verification

  • 58/58 targeted executor/shared-parser regression tests pass (JSON, SSE, no-tools, nonce/name rejection and truncation).
  • Four targeted Reject invalid output token budgets cheaper-inference/OmniRoute#7379 adapter usage tests also pass; this is NOT fresh live usage proof.
  • Synthetic outgoing body captured with nonce redacted in the session artifact. No real tool execution performed.

Limitations

Live model-compliance testing is blocked by the platform OmniRoute provider dispatchable=false. No routing policy was enabled or bypassed. This change is not deployed.

@KytranKatarn

Copy link
Copy Markdown
Owner Author

Added the remaining live-only AI Horde emulated free-pool opt-in to prevent an integrated rebuild removing that route. Total now 4 files; 59/59 targeted tests pass. Also captured the synthetic upstream body (request nonce redacted); no live inference or client tool execution performed. Pricing PR #21 is merged, but its build is held until this provenance gap is reconciled.

@KytranKatarn
KytranKatarn merged commit d56be93 into release/v3.8.53 Oct 23, 2026
36 of 55 checks passed
@KytranKatarn
KytranKatarn deleted the opencode/aihorde-tool-contract branch October 23, 2026 22:00
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