Provider ladders with fallback
A quota wall at a provider should degrade the answer, not stop the business. Primary, fallback, and a record of which one served each call.
Not a chatbot on your homepage. The systems that use a model to do work, and the machinery that keeps them honest when it answers badly.
What we build
A quota wall at a provider should degrade the answer, not stop the business. Primary, fallback, and a record of which one served each call.
The model returns JSON against a schema and the call retries on a mismatch. Parsing free text and hoping is not an integration.
A generated message is checked before a customer sees it — language, structure, whether it repeats something already sent. Failures escalate to a person instead of going out.
A temporal knowledge graph rather than a flat vector store: facts have a validity window, so a system can answer what was true in March without confusing it with what is true now.
More than five working at once, each in an isolated git worktree, against a shared task list with single-writer locks. Isolation is what makes the parallelism safe rather than merely fast.
The part that is actually hard
A prompt is a request, not a guarantee. Everything that must be true of the output has to be checked in code afterwards. We learned that on our own system: an instruction to write in the customer's language lost to a context written in another one, and the proposal went out in the wrong language until a check — not a better prompt — caught it.
What you get
Stack Python · Claude · DeepSeek · Gemini · Graphiti · FalkorDB · Celery
Start here
You will get a real answer from an engineer — what we would build, roughly what it costs, and honestly whether it is worth building at all.