This matches what I keep seeing people skip: they read STATUS and never get to --previous. One thing I'd add to the six causes: an exit code of 137 isn't always the container's own memory limit getting hit. Node-level memory pressure can evict the pod before OOMKilled ever shows up in Last State, and kubectl get pods reports Evicted with a Failed phase, not CrashLoopBackOff, so grepping describe output for OOMKilled alone will miss it.
This matches what I keep seeing people skip: they read STATUS and never get to --previous. One thing I'd add to the six causes: an exit code of 137 isn't always the container's own memory limit getting hit. Node-level memory pressure can evict the pod before OOMKilled ever shows up in Last State, and kubectl get pods reports Evicted with a Failed phase, not CrashLoopBackOff, so grepping describe output for OOMKilled alone will miss it.