The widget went live. A floating button on the actual site, an invisible Turnstile check solved fresh for every question, an opt-in checkbox for saving a conversation. First real request through it worked. Then real use started finding things I couldn't have found by reading the code.
The first wasn't small. Asked in Portuguese, the assistant answered fluently in Portuguese instead of admitting it only supports English and Dutch. The rule saying so existed, but it was one line among nine, phrased as "explain briefly," and the model just ignored it. Rewriting it as a hard gate, checked before anything else, with an exact sentence to output instead of a paraphrase, fixed it on the first retry.
The second was worse. Asked what kind of work I do, in Dutch, the assistant described my IDE preferences instead of my actual job. Querying the knowledge store directly turned up something worse than a wording problem: the code merging results from the two content partitions was sorting them backwards. Not almost right, not off by a little, actually inverted, quietly handing the model its worst-matching content as if it were the best, for every single question since this thing first went live. A quick sanity check settled it beyond doubt: querying with a fact's own text back at itself should return that exact fact first, and it didn't, until the sort direction flipped. One line fixed it. An earlier "confirmed working" test from weeks ago, with a small sample and no real control, had gotten lucky rather than actually being right. Retesting afterward kept turning up the same wrong answer anyway: the cache was returning old data from before the fix, with no way of knowing it needed to forget it. Clearing it by hand each time worked, but that's exactly the gap the next part needs to close.
One more thing came out of the same session: the model started citing its own internal numbering back to a visitor, "[2] en [5] verwijzingen," labels that exist only so it can tell chunks apart and were never meant to be seen.
None of this was found by reading code carefully beforehand. All of it came from actually using the thing and taking a wrong-feeling answer seriously enough to chase it.