For the past year I have been building a personal AI assistant. Not a chatbot: a runtime that reads my mail, watches my obligations, prepares my morning brief and sometimes acts on my behalf. I use it every day, and I trust it. The second part is the unusual claim.
The trust does not come from the model. It comes from the architecture around it, and the architecture is mostly boring.
Every channel, mail, messaging, feeds, flows through a small deterministic ingestion adapter. Adapters are checkpointed, so a crash resumes instead of losing data. They normalise everything into one canonical store, and that store is the single source of truth. Everything the assistant shows me is a projection of it: the daily brief, the urgent alerts, the conversation I have with it.
Language models sit in exactly three seats. A classifier labels incoming items; it has no tools, a fixed output schema, and it never sees more than the message it is judging. A synthesis step turns prepared data into readable text. A judge grades outputs after the fact. Everything else, the spools, the stores, the delivery, the health checks, is plain code.
Why so strict? Three reasons. Prompt injection: mail is hostile input, so the component that reads it can label it and do nothing else. Auditability: when something goes wrong, I can point at the exact step that failed. Cost: deterministic code runs for free and never hallucinates.
The result is a system where the clever part is small, replaceable and always supervised, and the dependable part is large and dumb. That ratio is the design. When people ask which model it runs on, I tell them that is the least interesting question about it.
The same ratio decides whether business process automation survives. When the workflow, the state and the audit trail are deterministic, and a model only reads invoices, classifies orders or extracts fields from documents, the system stays explainable and fixable for years. When the model is the process, every strange input becomes an outage nobody can reproduce. If your automation feels fragile, look at the ratio first.