You can't stop an AI feature from hallucinating, but you can keep nonconforming data out of production documents by storing state in an authoritative database, structuring updates with tool-calls, and validating data before it reaches the database.
Building a reliable system around an LLM means dealing with its weird failure modes. The conventional wisdom on retries doesn't fit — a second failure isn't a model problem. It's a signal that the validator, prompt, or schema needs work.
When searching a body of text, the default reflex is to reach for a hybrid search that combines full-text search (FTS) with semantic searches. On a personal corpus, hybrid search consistently underperforms one of its components; FTS is usually but not always the right default.
When you include the complete message history in the context window, the model will treat it as implicit state, and implicit state drifts. Instead, aggressively prune the message history and provide the model with an authoritative state.