ADR-068: Scoped advisory provider execution
Date: 2026-10-13 Status: Accepted (experimental adapters; no model default) Author: Rômulo Febasi
Decision
Implement ADR-050 with a pure typed core port and separately reviewed outer adapters shared by CLI/MCP. Select only exact authorized source facts; integrity, deterministic checks, explicit entity/API version/environment and validity precede inference. Compare accepted snapshot and head again after external execution. Model output has no source mutation capability. Evidence spans identify the exact supplied UTF-8 bytes, not generated explanations.
Default to deterministic checks and a conservative exact-text baseline. A pinned local Python safetensors runtime is an optional research adapter, isolated from source and credential configuration. Hosted Jev uses its official closed Choice schema with per-scope egress consent. Neither adds a mandatory runtime/network dependency. Enforce call, byte and wall-clock budgets and unknown confidence.
Evidence and limits
The first grouped synthetic EN/PT evaluation failed the proposed conflict recall gate. Keep both models experimental; do not download or enable a default. Record empirical reliability separately from provider claims. Optional Python ONNX load probes do not establish native Rust runtime compatibility. Jev quality remains unmeasured without credentials. Synthetic engineering labels require domain and human review before field adoption.
Alternatives
Reusing embeddings as contradiction proof or granting authority from model confidence conflates retrieval with governance. A native ONNX default before evaluation adds distribution/runtime cost without established value. The pure port preserves that future option without imposing it today.
See provider and benchmark contract, measured results, ADR-049 and ADR-050.