When we are receiving assessments from the Sensemaker, we do not have a unique identity for each datum. We are only receiving either the record or the Assessment object without its entry hash (except for when we create a particular assessment, then we receive only the entry hash and guess at some of the other fields).
This means that if we happen to retrieve an assessment multiple times (either from a signal and a request or multiple requests), then we have no way of disambiguating between duplicates.
We should get all assessments with an entry hash in string form.
The main reason I can see for why we never started doing this is because we've assumed that everything received or retrieved is unique and immutable. I'm not sure this is enforced or always the case. However, in order to ensure an applet requesting/receiveing the same information twice doesn't end up getting the data twice, we need a more sophisticated approach.
We should also make sure creating an assessment returns the full hash and object. Currently we are creating a random timestamp from some time in the future and applying that to the object which can lead to inconsistencies.
When we are receiving assessments from the Sensemaker, we do not have a unique identity for each datum. We are only receiving either the record or the Assessment object without its entry hash (except for when we create a particular assessment, then we receive only the entry hash and guess at some of the other fields).
This means that if we happen to retrieve an assessment multiple times (either from a signal and a request or multiple requests), then we have no way of disambiguating between duplicates.
We should get all assessments with an entry hash in string form.
The main reason I can see for why we never started doing this is because we've assumed that everything received or retrieved is unique and immutable. I'm not sure this is enforced or always the case. However, in order to ensure an applet requesting/receiveing the same information twice doesn't end up getting the data twice, we need a more sophisticated approach.
We should also make sure creating an assessment returns the full hash and object. Currently we are creating a random timestamp from some time in the future and applying that to the object which can lead to inconsistencies.