The holder vocabulary in its canonical ORDER — the order holders(channel) answers in, and
the order the UI prints the names in.
DERIVED, not written: the middle segment is the contract's needsAnalyser column in
CHANNEL_FACTS order, so a new detector fact joins this vocabulary by declaring its column
and a retired one leaves by dropping it. The two ends are the holders that are not channel
facts at all — the operator's two reasons first (they are the ones an operator acts on), the
console's own measurement last.
The holder vocabulary in its canonical ORDER — the order
holders(channel)answers in, and the order the UI prints the names in.DERIVED, not written: the middle segment is the contract's
needsAnalysercolumn inCHANNEL_FACTSorder, so a new detector fact joins this vocabulary by declaring its column and a retired one leaves by dropping it. The two ends are the holders that are not channel facts at all — the operator's two reasons first (they are the ones an operator acts on), the console's own measurement last.