Fix: Ensure events from model instances are returned in chronological order #750
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, querying events from a specific model instance via:
/experimental/events/model/{modelStreamId}returns events ordered lexicographically by event ID, not by creation time. This behavior makes it difficult to fetch only the most recent events. For example, using resumeOffset does not reliably return the latest events because the last item in the response may not be the newest chronologically.
In a test scenario with 20 events, generating a 21st event resulted in it being inserted in the middle of the response. If an offset of 20 had been used, it would not have returned the most recent event (following image):

Proposed change:
Benefits:
This image shows the result of the changes, where using offset 3 is properly used returning only future events:

This PR would fix the following error:
#751