It seem this problem was explained in an earlier post:
Octave edge 3.4.1 - observation on resource/timer/X/value multiple triggers on power on reset
As the explanation mentioned - the issue is associated with boot up (ULPM wake in this case), but the mistaken creation of the event report under resources /virtual/config resulted in the VR being persistent. The duplicate messages were apparently caused when the data was reloaded from flash at boot (i.e. ulpm wake). Deleting the VR item used for the event report from /virtual/config appears to have solved the problem. The event report VR gets created by the Edge Action, but is not persisted. The correct number of events are generated and no duplicates are generated.