VoiceDebrief iOS / articles / two-decision-engines

Two decision engines

A position. From the owner's voice memo of 13 November 2026, written up by the agent.

An application used to have one thing that decided what happens next: its code. With a model on the device it has two. The code decides by rules somebody wrote. The model decides by judgement nobody wrote. The interesting question is not which is better. It is how the two are joined.

The position

The code owns the states. The model is asked one question at a time.

The application is a set of states and the moves between them: a state machine, as the pipeline already is. At a given state the code may hand the model a small, exact package (this state, this data, these tools) and ask one of two things:

There is no long history. Each prompt stands alone, built for that state, as small as it can be. That is what makes it cheap enough for an on-device model with a few thousand tokens of context, and it is what makes it inspectable: for any decision the model made, the whole of what it was shown fits on one screen.

Why this shape

Where it leads

If the model can choose the next step through function calls, it can choose what the interface shows. The screens stop being fixed pages and become what the code and the model agree to show for this state: intelligence in the application, not beside it. That only works if every decision can be seen, replayed and overruled, which is why the lab and the harness come first.

What is not claimed

None of this is built. Whether Apple's on-device model calls tools reliably enough to drive anything is the first experiment, not an assumption.