context
these issues existed in the original gateway-api-console-plugin and were carried over during the merge (#636, #690). they're not regressions — they were in the source code before the merge.
issues
port input validation
GatewayCreatePage.tsx: clearing the port field yields NaN (parseInt('', 10)) which shows in the form and YAML
FilterActions.tsx: mirror port field accepts non-numeric text and emits NaN
filter validation gaps
FilterActions.tsx: add/set rows with empty header values are silently dropped — gateway API permits empty header values
filterUtils.tsx: header-modifier validation accepts blank rows, empty filters can be saved
httproute form
HTTPRouteCreatePage.tsx: positional path splitting (pathSplit[5]) couples to URL shape — should use useParams()
HTTPRouteCreatePage.tsx: parent references without sectionName silently dropped, but sectionName is optional in gateway API spec
HTTPRouteRuleWizard.tsx: method dropdown omits HEAD, CONNECT, OPTIONS, TRACE — routes with those methods show no matching option
filterUtils typing
filterUtils.tsx: ~10 instances of any type without justification — should use exported filter type definitions
filterUtils.tsx: as HTTPRouteFilter[] cast masks shape mismatch, .filter(Boolean) is a no-op
filterUtils.tsx: getFilterSummary returns untranslated user-facing text
useHTTPRouteActions
useHTTPRouteActions.tsx: actions reported as loaded before model resolves — edit/delete flash for unauthorized users
types
types.ts: pathType/method widened to string instead of reusing literal unions from HTTPRouteResource
context
these issues existed in the original gateway-api-console-plugin and were carried over during the merge (#636, #690). they're not regressions — they were in the source code before the merge.
issues
port input validation
GatewayCreatePage.tsx: clearing the port field yieldsNaN(parseInt('', 10)) which shows in the form and YAMLFilterActions.tsx: mirror port field accepts non-numeric text and emitsNaNfilter validation gaps
FilterActions.tsx: add/set rows with empty header values are silently dropped — gateway API permits empty header valuesfilterUtils.tsx: header-modifier validation accepts blank rows, empty filters can be savedhttproute form
HTTPRouteCreatePage.tsx: positional path splitting (pathSplit[5]) couples to URL shape — should useuseParams()HTTPRouteCreatePage.tsx: parent references withoutsectionNamesilently dropped, butsectionNameis optional in gateway API specHTTPRouteRuleWizard.tsx: method dropdown omits HEAD, CONNECT, OPTIONS, TRACE — routes with those methods show no matching optionfilterUtils typing
filterUtils.tsx: ~10 instances ofanytype without justification — should use exported filter type definitionsfilterUtils.tsx:as HTTPRouteFilter[]cast masks shape mismatch,.filter(Boolean)is a no-opfilterUtils.tsx:getFilterSummaryreturns untranslated user-facing textuseHTTPRouteActions
useHTTPRouteActions.tsx: actions reported as loaded before model resolves — edit/delete flash for unauthorized userstypes
types.ts:pathType/methodwidened tostringinstead of reusing literal unions fromHTTPRouteResource