Well, LMK (kernel module lowmemorykiller) use correct metrics IMHO, its logic is just not ideal - it may kill multiple apps in short interval. It would be nicer to kill one and wait for metrics update instead…
But MCE is using wrong metric. It is using cgroup’s memory.usage_in_bytes
and it contains reclaimable memory.