Teardown

Why she will not book a job without a name and a number

An AI that always asks is not the same as an AI that cannot skip the question. Here is the difference, and why we moved the rule out of the prompt and into the server.

Sherif Butt·13 Sept 2026·4 min read

A booking with no name on it is not a booking. It is a slot you cannot ring back, sitting on a day you could have sold to somebody else.

So the rule sounds obvious: always take a name and a number before you write the job down. We put that rule in the prompt on day one, in plain language, near the top. Sarah followed it on hundreds of calls.

Then one morning she did not.

The call that broke the rule

A prospect was being shown the product. They opened with something like "pretend I'm a customer with a burst pipe", and Sarah played along. She found a slot. She confirmed it warmly. She wrote a real job into a real diary.

She never asked who was calling.

Nothing was broken in the ordinary sense. Every line of code did what it was written to do. The prompt still said to take a name. The model simply weighed a polite instruction against a caller who had framed the whole conversation as a demonstration, and the framing won.

When the model is the only thing stopping a bug, the bug will eventually happen.

The rule we now write on the wall

That is the part worth sitting with. The prompt was not ignored because it was badly written. It was ignored because a prompt is advice, and advice loses arguments. Under demo framing, under interruption, under a caller who talks over the question, it loses often enough to matter.

Advice versus a wall

The fix was not a better sentence. It was moving the rule to somewhere the model does not get a vote.

Booking a job is a tool call. The model decides to make it; our server decides whether it happens. So the server now checks, before it writes anything, that it has a name and a phone number — unless the call is already tied to a customer we recognised from the number they rang in on.

If either is missing, the write does not happen. The tool comes back as failed, with a short instruction the model reads on the same turn: ask for the name and the number, then call again.

Where the refusal happens. The model can ask again. It cannot skip the question.

From the caller's side nothing looks unusual. There is no error, no apology, no dead air. Sarah says something like "Before I put that in, can I take your name and the best number for you?" — and carries on. The refusal is invisible, because the model is perfectly good at recovering once it is told to.

What has changed is the floor. A booking with no name is no longer unlikely. It is impossible.

The same trick, in three other places

Once you have the shape, you start seeing where else the prompt was doing work it should not have been trusted with.

  • The slot is spoken by the server, not the model. When Sarah reads a time back to you, those words come from the booking we are about to write, not from the model's memory of the conversation. A model that drifts by half an hour between offering a time and confirming it cannot make you hear the wrong one.
  • Every change is confirmed twice. A tool that alters anything is called once to produce a read-back and a second time to commit it. The second call has to match a record the server issued moments earlier, or it is treated as a fresh read-back instead.
  • A returning caller is recognised before Sarah speaks. If the number matches a customer, their name and their open jobs are put in front of the model at the start of the call. She greets you by name because the facts were handed to her, not because she remembered.
0

Bookings written without a name and a number since the gate went in. Not "rarely". The path does not exist.

Why this matters if you are buying one of these

Every AI receptionist demo goes well. They are built to. The interesting question is not what the thing does on a good call — it is what it is structurally unable to do on a bad one.

So when you are looking at one, it is worth asking:

  • What happens when the caller talks over the question?
  • What stops it inventing a price it has not been given?
  • What stops it agreeing to a time that is not free?
  • If the model gets it wrong, what catches it?

If the answer to the last one is "we told it not to", that is a prompt. It will hold most days. It is the days it does not hold that end up on your diary, with no name on them and nobody to ring.

We would rather build the wall.

Sherif Butt

Founder, Loyal Receptionist

Builds the AI receptionist that answers for UK trades, solicitors and salons. Based in Cardiff. Writes up whatever the call data actually says, including the parts that do not sell anything.

Keep reading