fix: handle optional catchall parameters properly when deployed (#74562)
Previously, we had code responsible for parsing and handling the
`x-now-route-matches` header (sent by Vercel) that included the route
matches used for parameter parsing that only read from the named
parameters _if they were all present_. This doesn't apply to routes with
optional parameters (such as `[[...rest]]`), so it wasn't utilizing that
matching mechanism. It previously fell back onto the second stage of
parsing that utilized numeric based group matching, but this was
recently changed on Vercel, so the fallback no longer applies for
Next.js applications that are running on 15+.