{"root_cause":"The leading cause is division by zero during batch-local standardization: the constant feature has zero standard deviation, so subtracting its mean produces zeros and dividing by zero produces NaN.","confidence":0.98,"evidence":["Observation: Training remains finite on most shards.","Observation: The first batch from one shard makes the loss NaN.","Observation: That batch contains a feature constant across all examples.","Observation: Preprocessing computes standardization statistics from the current batch.","Inference: The constant feature's batch variance and standard deviation are zero.","Inference: Standardization is probably the first source of non-finite values, before the model or loss."],"competing_hypotheses":["A separate non-finite raw value exists in that shard.","A later model operation becomes invalid for the standardized values, although this is much less likely given the exact zero-variance trigger."],"first_action":"Replay the failing batch with finite-value assertions after raw input loading, mean computation, variance or standard-deviation computation, centering, and division; report the feature index and denominator at the first invalid operation.","prediction_if_true":"Inputs, means, standard deviations, and centered values remain finite; the constant feature has standard deviation exactly zero; the first non-finite tensor appears immediately after division.","prediction_if_false":"A non-finite value appears before standardization division, or standardization output is finite and the first invalid operation occurs later in the model or loss.","immediate_changes":[],"fallback_logic":[]}