Hi, I'm playing a bit with KafkaStream and the new suppress feature. I noticed that when using a TimeWindows without explicitly setting the grace suppress will not emit any message if used with Suppressed.untilWindowCloses.
I look a bit into the code and from what I understood with this configuration suppress should use the grace setting of the TimeWindows. But since using TimeWindows.of(Duration) default the grace to -1 and when getting the grace using the method TimeWindows.gracePeriodMs() in case of grace equals to -1 the return value is set to maintainMs() - size() I think that the end of window is not properly calculated.
Of course is possible to avoid this problem forcing the grace to 0 when creating the TimeWindows but I think that this should be the default behaviour at least when it comes to the suppress feature.
I hope I have not misunderstood the code in my analysis, thank you