now we can distinguish missing key and nil differ
update spec desc