title: Does the Kafka streams aggregation have any ordering guarantee?
body: <p>My Kafka topic contains statuses keyed by deviceId. I would like to use <code>KStreamBuilder.stream().groupByKey().aggregate(...)</code> to only keep the latest value of a status in a <code>TimeWindow</code>. I guess that, as long as the topic is partitioned by key, the aggregation function can always return the latest values in this fashion:</p>
  
  <p><code>(key, value, older_value) -&gt; value
  </code></p>
  
  <p>Is this a guarantee I can expect from Kafka Streams? Should I roll my own processing method that checks the timestamp?</p>