Choose a review level
Deep review follows server-owned eligibility, sampling, uncertainty, and failure handling. The server controls the judge model, prompt, and timeout. Review depth is independent of enforcement mode.
deep requires an active Cascade runtime with a supported threat judge configured for the selected deployment and surface. Otherwise, the server returns HTTP 400 before inference, with no verdict. It overrides the judge’s enabled: false default. standard works without a configured judge.
SDK compatibility
An explicit per-call SDK selection wins the client default. With neither selected, the request omits the wire field. Adapters inherit the client setting.
Validate the response
Use the exact stringsstandard and deep. Invalid wire values return HTTP 400. An explicit selection requires the same exact value acknowledged at the response’s top-level review field. For batches, the acknowledgement belongs to the batch envelope. LiteLLM guardrail responses acknowledge their selection in silmaril_review.
The acknowledgement identifies the applied setting. Eligible events may still complete without a judge invocation. SDKs check acknowledgement before returning results, running callbacks, or applying block handling. Missing or mismatched acknowledgement produces ReviewCompatibilityError. Earlier transient attempts follow the normal retry policy.