Unknown Metric
data class UnknownMetric(val alternative: String, val metricName: String) : AlternativeRejection(source)
The alternative was scored on a metric the model does not hold, named metricName.
Metrics are held by identity rather than by name, so the usual cause is a metric that was built a second time somewhere rather than the model's own metric being reused. The name is reported precisely because it will usually look correct: it is the identity that differs, not the name.