grpc_pass only handles native gRPC (HTTP/2 frames). The web dashboard uses gRPC-web via Connect protocol (HTTP/1.1 POST requests). Switch api.fxhnt.ai nginx block to proxy_pass so tonic_web::GrpcWebLayer on the API service can handle the protocol conversion. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>