Rule check if field value changed give always true
You have to use :value for the body or other textarea fields.

The problem is there:

{ "NOT data_is" : { "data" : [ "node:body" ], "value" : [ "node-unchanged:body" ] } }


Should be:

{ "NOT data_is" : { "data" : [ "node:body:value" ], "value" : [ "node-unchanged:body:value" ] } }