We did not change the model. We changed the prompt, and watched the eval move.
Three changes that mattered
First, we grounded every answer in supplied context. Second, we added a strict output contract. Third, we gave the model an explicit way to say I do not know, which it took far more often than we expected.
A measurable refusal path is the single highest-leverage change for a hallucination-prone prompt.
