You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(adapter/typed-decision-local): local model backend for contract:typed-decision (llama.cpp / Ollama / vLLM) #1431
Goal: A local-model backend adapter for \contract:typed-decision\ (\ ools/typed-decision/), supporting llama.cpp, Ollama, or vLLM endpoints.
Why: PR #1402 introduced the \contract:typed-decision\ interface with TypeSafe Jev API as the initial cloud backend. Providing a local-model backend enables offline, zero-egress structured decisions without third-party network calls and establishes a second independent backend for vendor neutrality.
What it needs to do (see \ ools/typed-decision/tool.md\ § Interface):
One boundary worth making explicit for the local adapter: a loopback URL should stay loopback for the entire request. Disable environment proxies and reject redirects (or re-run the privacy gate against every redirect target); otherwise an approved 127.0.0.1 / localhost endpoint can still forward prompt data to an unapproved host. We hit the same boundary in Jev Social's loopback decision path. A regression with HTTP_PROXY set and a 302 to a non-loopback host would pin it down.
Activity
fix(typed-decision): address maintainer review on privacy binding, de…
IRONICBo commentedon Oct 1, 2026
One boundary worth making explicit for the local adapter: a loopback URL should stay loopback for the entire request. Disable environment proxies and reject redirects (or re-run the privacy gate against every redirect target); otherwise an approved
127.0.0.1/localhostendpoint can still forward prompt data to an unapproved host. We hit the same boundary in Jev Social's loopback decision path. A regression withHTTP_PROXYset and a 302 to a non-loopback host would pin it down.fix(typed-decision): address maintainer review on privacy binding, de…
feat(tools): provider-agnostic typed decision contract with Jev API b…
feat(tools): add in-tree local OpenAI-compatible typed-decision provi…