We believe this change will fix the failing e2e test. Removing the built-in h3 request handling in this PR also removed the implicit URIError check that h3's H3Event performed when decoding the request path, so requests with invalid percent-encoded byte sequences (e.g. %E0%A4, %80, %FF) now fall through to route matching — where findRouteMatch already treats a URIError as "no match" — and surface as a 404 instead of the expected 400. Adding an explicit pathname-decode check back into runInStartRequest restores the original 400 response for these malformed paths without affecting the existing, intentionally lenient handling of already-decodable paths and malformed search params.
This code change can't be applied
A fix is available, but it can't be applied automatically because the branch is outdated. Please sync the branch, then apply the fix locally below.
Self-Healing CI
Classification: Code change needed
Fix generated
Verified 1 task
Commit"fix(start): restore 400 for malformed pathname encoding"
2 files changed
+28