Investigate a better approach to HTTPRoute rule sorting in linkerd2
@anthoturc is already working on this.
Since Aug 26, 2026.
- Dominant language
- Go
- Stars
- 11.5k
- Forks
- 1.4k
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 53
Description
What problem are you trying to solve?
While working on https://github.com/linkerd/linkerd2-proxy/pull/4604, @adleong suggested that the control plane would be a better place to perform sorting of the rules for a given HTTPRoute since the control plane has access to all the information that the HTTPRoute spec requires for enforcing precedence and breaking ties. E.g., the timestamps of when the rules were created.
How should the problem be solved?
Ideally, the control plane is updated to sort the HTTPRoute rules consumed by the dataplane based on the http route spec: https://gateway-api.sigs.k8s.io/reference/api-spec/main/spec/#httprouterule
Any alternatives you've considered?
The other alternative is to send more data to the dataplane and have it make a more intelligent decision.
Per feedback in this PR, it seems like the control plane is the preferred place for this kind of change.
How would users interact with this feature?
This isn't a new feature. The issue is investigative and can lead to linkerd2 implementing the gateway api spec correctly.
Would you like to work on this feature?
yes
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.