Core Concepts
The mental model behind VeldrixAI: pillars produce scores, the policy turns scores into a verdict, and the audit trail records everything.
Trust score
Every evaluation produces an overall trust score from 0.0 to 1.0, where 1.0 is fully trusted and 0.0 is maximally risky. It is a weighted aggregate of the individual pillar scores — not an average. You control the weights in your policy.
Pillars
A pillar is an independent evaluator for one risk dimension. VeldrixAI ships five, and each returns its own 0–1 score plus zero or more flags (machine-readable reasons such as pii_detected or prompt_injection_detected).
Pillars run concurrently, so adding pillars does not add latency. See the Trust Engine section for each pillar in depth.
Verdicts
The Policy Engine maps the overall score (and any hard-block flags) to one of four verdicts:
| Verdict | Default band | Meaning |
|---|---|---|
ALLOW | ≥ 0.85 | Output is trusted; ship it. |
WARN | 0.60–0.85 | Ship, but log a warning for review. |
REVIEW | 0.40–0.60 | Borderline; route to human review or a fallback. |
BLOCK | < 0.40 | Do not ship. Also forced by critical flags. |
BLOCK regardless of the aggregate score. Safety is never averaged away.Policy
A policy is the deterministic ruleset that turns pillar scores into a verdict: the per-pillar weights and thresholds. Policies are versioned and can run in shadow mode (observe only) before you switch them to active enforcement.
Inline vs background
Inline (sync)
evaluate_sync() blocks until the verdict is ready. Use it when you must gate the response before returning it.
Background (async)
The default for @guard. Your LLM response returns immediately; evaluation and logging happen out-of-band, adding zero user-facing latency.
Audit trail
Every evaluation is written to an append-only, tamper-evident audit trail. Each record is cryptographically chained to the previous one per tenant, so any modification or deletion is detectable. See Audit Trails.