The problem
Most AI prototypes can't be trusted in production: they guess when unsure, act without approval, and can't explain or replay what they did.
What we built
A shared core (config, LLM client with retries and a cost ledger, adapter interfaces, Decimal-only record store, human review queue, eval kit) and three engines on it.
RAG support bot
Intent classification, role-filtered retrieval, a confidence gate on the retrieval score (not the model's self-reported confidence), cited answer or escalation, CRM drafts.
Agent workflow backend
YAML-declared steps (deterministic, typed-LLM, effect). An effect step never runs inline: it drafts and halts for approval. Any run can be reconstructed from storage alone.
Document validation
Model extraction with page and character provenance, then a pure-Python rule engine with zero model calls and a versioned, content-addressed report.
Engineering
- Every model answer is a validated Pydantic schema or a typed error — never a best-effort parse.
- Role filtering enforced twice; a store that silently ignores filters raises an error.
- The approval queue refuses machine actors; tests enumerate the whole config schema to prove no setting lets an effect bypass review.
- Deterministic replay proven after a simulated process restart.
- Eval gates: 45 support-bot fixtures, 26 workflow fixtures, 33 document fixtures, with oracles that reject self-generated expectations.
- 576 tests across the core, the three engines and the demo surface.
- The demo discloses every stubbed component on screen (e.g. its retrieval runs on a hashing embedder rather than a production embedding model).


