Istio-proxy 's cpu request is excluded from cpu utilization of HPA

i have an deployment/app, this pod including 2 containers, one is app, the other is auto injected sidecar/istio-proxy
when i get HPA, i found that the istio-proxy’s cpu request is excluded from calculation
for example, istio-proxy cpu request is 2G, cpu usage is 1G, app container cpu request is 4G, usage is 2G, then the expected HPA is (1+2)/(2+4) = 50%, but actually the HPA is (1+2)/4 = 75%.
so i am confused why istio-proxy’s cpu request is excluded?
i guess it because istio-proxy is injected, in other words, it is no explictly defined in deployment yaml, so that k8s API can’t get its cpu request.
but is that the wanted behavior ?

please note that HPA is k8s mechanism instead of istio. So it is k8s issue, please raise this issue to k8s and in https://discuss.kubernetes.io/

BTW, there is an k8s container level resource HPA(v2beta2), by using it, you can only focus the resource of your application container w/o consider about sidecar if needed. The k8s doc is here
The HPA yaml is as below, but please note that you need to enable k8s feature gate before cluster creation.

export KUBE_FEATURE_GATES=HPAContainerMetrics=true 
kubectl  apply -f -<<EOF
apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
  name: app-v2beta2-container
  namespace: xxx
spec:
  maxReplicas: 9
  minReplicas: 2
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: <your-deployment-name>
  metrics:
  - type: ContainerResource
    containerResource:
      name: cpu
      container: <your-container-name>
      target:
        type: Utilization
        averageUtilization: 70
EOF

thanks, i will ask this issue to k8s community.