From f5a9a1209f7ad6b1554a116fd009d4eca1fff05f Mon Sep 17 00:00:00 2001 From: Tasnim Kabir Sadik Date: Sat, 11 Apr 2026 23:54:48 +0600 Subject: [PATCH] fix: map CodeAlreadyExists to HTTP 409 Conflict Updated the `agentErrToHTTP` switch statement to explicitly catch `connect.CodeAlreadyExists` (as well as `connect.CodeFailedPrecondition`) and return `http.StatusConflict` (409) instead of falling through to the default 502 Bad Gateway. --- internal/api/middleware.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/api/middleware.go b/internal/api/middleware.go index cf9108f..95d2175 100644 --- a/internal/api/middleware.go +++ b/internal/api/middleware.go @@ -50,8 +50,12 @@ func agentErrToHTTP(err error) (int, string, string) { return http.StatusNotFound, "not_found", err.Error() case connect.CodeInvalidArgument: return http.StatusBadRequest, "invalid_request", err.Error() - case connect.CodeFailedPrecondition: + case connect.CodeFailedPrecondition, connect.CodeAlreadyExists: return http.StatusConflict, "conflict", err.Error() + case connect.CodePermissionDenied: + return http.StatusForbidden, "forbidden", err.Error() + case connect.CodeUnimplemented: + return http.StatusNotImplemented, "agent_error", err.Error() default: return http.StatusBadGateway, "agent_error", err.Error() }