Skip to content

EVA-3177: strip query string from endpoint path when registering routes (v1.3.x backport) - #20

Merged
aivus merged 2 commits into
v1.3.xfrom
EVA-3177-strip-query-string-v1.3.x
Jul 13, 2026
Merged

EVA-3177: strip query string from endpoint path when registering routes (v1.3.x backport)#20
aivus merged 2 commits into
v1.3.xfrom
EVA-3177-strip-query-string-v1.3.x

Conversation

@aivus

@aivus aivus commented Jul 13, 2026

Copy link
Copy Markdown
Member

Backport of EVA-3177 to the v1.3.x maintenance line (cherry-pick of ad87acb from master/v1.4.0).

Endpoint paths may contain a query string template (e.g. /v1/cars?ids={ids}) that API clients use to build request URIs. Symfony matches routes against the path info only, so a route registered with the query string in its path can never match.

Strip everything from ? onward before creating the route. Request DTO population is unaffected: ServiceRequestResolver already reads query parameters from the actual request.

The cherry-pick applied cleanly; the v1.3.x method signatures on EndpointLoader::load() / supports() are preserved (no : object / : bool return types from the 1.4 line).

aivus and others added 2 commits July 6, 2026 20:49
Endpoint paths may contain a query string template (e.g.
"/v1/cars?ids={ids}") that API clients use to build request URIs.
Symfony matches routes against the path info only, so a route
registered with the query string in its path can never match.

Strip everything from "?" onward before creating the route. Request
DTO population is unaffected: ServiceRequestResolver already reads
query parameters from the actual request.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Use the concrete Endpoint DTO instead of prophesizing EndpointInterface
(it is just a DTO), and remove the UrlMatcher-based test which exercised
Symfony routing rather than EndpointLoader itself.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@aivus aivus closed this Jul 13, 2026
@aivus
aivus deleted the EVA-3177-strip-query-string-v1.3.x branch July 13, 2026 10:48
@aivus
aivus restored the EVA-3177-strip-query-string-v1.3.x branch July 13, 2026 10:54
@aivus aivus reopened this Jul 13, 2026
@aivus
aivus merged commit 9d06bbc into v1.3.x Jul 13, 2026
30 of 40 checks passed
@aivus
aivus deleted the EVA-3177-strip-query-string-v1.3.x branch July 13, 2026 10:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant