Extbase detail view URL call breaks by attaching params from [FE][cacheHash][excludedParameters] if page is uncached
Having an extbase EXT with a list and detail view I use a routeEnhancer which basically uses the record ID as a the path segment. e.g. products/42 to show product with die ID 42 in detail view. This is working fine. We do have a TYPO3 setting [FE][cacheHash][excludedParameters] which comes with some presets such as "utm_source" in order to ignore external tracking parameters.
Now if I call my product details page via products/42?utm_source=XYZ I get an error 404 (Request parameters could not be validated (&cHash empty)) in uncached state but it's working fine as soon as the page is in cache.
So to me it seems that event as marked as excluded those params are taking into account for routing on uncached pages.
To easily reproduce just take EXT: news with its default routeEnhancer. Make sure the page is generall cachable.
Then call any news detail URL by appending ?utm_source=XYZ and you will get an error
call it again without ?utm_source=XYZ and the detail news will be displayed (an page will be cached)
call it again with ?utm_source=XYZ and the detail news will be displayed (as page is coming from cache and thus ignores this param correctly)