The desk does not name the model
There is a language model running behind the desk. It writes the spoken market briefing, it answers questions about what the book is doing, and it sits underneath a handful of smaller jobs that would otherwise need a person. What it is, exactly, appears nowhere in the desk's configuration. There are two values: an address to send the request to, and a name to ask for. No file, no parameter count, no quantisation, no version. That omission is deliberate, and it took a while to understand why it mattered.
The obvious way to wire this up is to name the model. Point at the runtime, ask for the file you loaded, done. It works right up until the day you want a different one — a better quantisation, a newer checkpoint, a different family that handles a certain kind of question more reliably. Now the model is a dependency of the desk rather than a resource it uses, and changing it is a config edit and a restart. Restarts are cheap on a laptop. They are not cheap at 9:45 in the morning on the machine that is holding a position, and a system that makes the safe change expensive is a system that quietly stops getting the safe change.
So the desk talks to a gateway instead. We run our models on a Spark under the desk using Lumbridge Compute, an open-source project that governs unified-memory machines — the full write-up of this setup is at lumbridgecorp.com/compute/in-production. The part that matters here is that it puts a stable port in front of a moving runtime, and it groups models into named sets, called Scenes, that reference model ids rather than weight paths. Swapping what actually serves a request is one command on that box and nothing at all on the desk. The desk's config has not changed through several model changes, because there was nothing in it to change.
That buys something real, and it costs something real, and it is worth being plain about the cost: a caller that refuses to name a version cannot pin one either. If the box comes up serving something that answers worse, the desk will use it perfectly happily and have no idea. We did not solve that so much as decide where to put it. The desk asks the gateway what it is actually serving, reads the weights sitting behind the alias, and puts the name of the running Scene on the health panel next to everything else it watches. An operator can see which model the desk is on without opening a shell on the machine it runs on.
Which is the same trade the rest of the harness makes. We are not trying to build a desk that knows in advance which model it will get. We are trying to build one that always knows which model it got, and says so, on a screen a person actually looks at. Certainty about the future is not available here — not about a model, not about a fill, not about a week's returns. What is available is the discipline of checking, and of making the answer visible rather than assumed. The desk does not name the model. It asks, every time, and it tells you what it heard.