Conversation
…ne adapter Run the existing refined-ask workflow against a self-hosted djev-spark server, which speaks the same documented /v1/systemone contract as hosted System One. An explicit AV_DJEV_ENDPOINT selects the lane; no default endpoint ships, and the endpoint wins over hosted Jev when both are set. - DjevClient mirrors the hosted client's timeout/retry/backoff semantics, passes a reproducible seed, and visibly rejects malformed responses: missing or unknown answers, type mismatches, choices outside the offered options, legend/probability mismatches, out-of-range or non-summing probabilities, scores outside the zero-based legend range or inconsistent with sum(i*p), null answers for questions without ask_if, and responses that do not identify the served model and engine. - Every successful decision records the served model, engine, and redacted endpoint host into usage receipts and ask metadata, so a djev answer is never presented as a Jev measurement; confidence_basis strings are lane-derived. - Boundary judging resolves single-candidate sides locally instead of sending one-option questions, which structured providers reject. - Offline deterministic tests cover the wire contract, validation, identity enforcement, lane selection, and ask-path outputs; cookbook recipe documents configuration, self-host hardening, and the pending live comparison. Upstream audited at mmastrac/djev-spark 1444f3e927f83ba508e5b28a4fd4fdd9ecd0976b.
Set membership raises TypeError on an unhashable answer value (a JSON array or object), which escaped RefinementError handling and crashed past ask's sanitized fallback. Require a string before comparing the reported choice against the offered options, with fake-session regressions for array and object choices, and rename an unused local flagged by the targeted lint check.
Contributor
Author
|
Verification at reviewed head
This PR intentionally reports no live djev inference, quality/latency comparison, playable-export comparison, hosted-cost result, or parity claim. The upstream revision is pinned to |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
AV_DJEV_ENDPOINTdecision lane for the existing refined-ask workflow, speaking the documented djev-sparkPOST /v1/systemonecontract.Verification
uv run --offline pytest tests/— 317 passedruff checkwithI001,F401,RUF059— passeduv build --offline— wheel and source distribution built successfullyEvidence and limits
1444f3e927f83ba508e5b28a4fd4fdd9ecd0976b.The shared candidate/fixture contract and matched comparison remain follow-up work once the public contract is available and an authorized runtime is cleared.