The problem
Claims arrive as free text plus files. Deciding which of many checks apply takes time, and a fixed decision tree needs a code change for every new product.
How it works
- 01Intake
- 02Plan
- 03Call tools
- 04Check
- 05Route
What was hard
- The model may only call tools on a fixed allow-list — never tools it invents.
- A token budget and a max number of tool calls, enforced outside the model.
- A separate checker that can reject the plan, not just approve it.
The goal
Each decision keeps a written trace, so a reviewer checks the reasoning instead of redoing it.
This is a design I worked out on paper — the problem, the approach and the trade-offs. It is not a shipped product.