Most machine translation glossary features match a source term and force a target term. That breaks on inflected languages, where the forced term arrives in the wrong case or gender; on terms that depend on context, where one source word has two approved translations; and on do-not-translate items that should pass through untouched. The result is a segment that follows the glossary and reads wrongly, which a post-editor then has to fix anyway.
Language models handle this better because they can be given the relevant terms with their notes and asked to use them grammatically. But a model that follows instructions most of the time is not the same as one that follows them every time. So we treat the glossary as both an input and a test: the right entries go into each request, and the output is checked afterwards for every term that should be there. A segment that fails the check is retried or flagged, never silently passed.