Symptom
On IOS-XR, when redistribute routes into isis with metric type external, it should add 64 on top of the set metric value. However XR 3.8.2 demonstrates this behavior, it toggles with 64 as the boundary, which means when the metric value is from 0 ~ 63, it adds 64; from 64 ~ 127 it does NOT add 64; from 128 ~ 192, it adds; from 192 ~ 255, it does NOT add; so on and so forth.
The problem is that while using wide metric. The behavior toggles/alternates in every 64, in summary, it will add 64 when ISIS metric value having an even quotient when divided by 64, Otherwise, no 64 is added to the metric value.
Other example, which is the real case happened in production network, metric 16000 (quotient of 250) will get 64 to become 16064, and 15980 (quotient of 249) will stay as 15980.
Conditions
Found only if metric type is external and metric style is wide metric.
Workaround
Metric type external is not defined for wide metrics as per RFC, hence use metric type internal.