why does query subscription separates type of first result and updates

The signature is

default <Q, I, U> SubscriptionQueryResult<I, U> subscriptionQuery(Q query, Class<I> initialResponseType,
                                                                  Class<U> updateResponseType) 

But so far I did not find a reason to have different types for initial and update responses.

What did you have in mind?
Would you be open for a PR that provides

Hi Jan,

the cases that drove us to build this feature are situations where you would either query for a list of elements and receive update for individual entries when one is updated, or where a complex model is returned and smaller “deltas” are returned to provide updates.

However, I can also imagine situations where you want to return a single entry, and return that same entry after it has been updated.
Since you suggested additional method has a clear default behavior, we could add this to the API.
However, I do think there is a mistake in the code you suggested.
Shouldn’t it be:

I saw that you accepted the issue … I pushed a pull request …