Writing.
How the thing is built, mostly — and the occasional argument about asking people questions.
Nineteen operators, and a linter that won't let you publish a dead end
Conditional logic is easy to build and hard to keep correct. Here is the branching model chatform uses, and the check that runs before a form can go live.
The model runs the conversation. It never owns it.
How chatform constrains a language model to six verbs, checks every one against a state machine before it takes effect, and keeps collecting answers when the AI budget runs out.