diff --git a/docs/openapi.json b/docs/openapi.json index a078b6d8b..29015eb64 100644 --- a/docs/openapi.json +++ b/docs/openapi.json @@ -5363,7 +5363,7 @@ ], "summary": "Handle A2A Jsonrpc", "description": "Handle A2A JSON-RPC requests following the A2A protocol specification.\n\nThis endpoint uses the DefaultRequestHandler from the A2A SDK to handle\nall JSON-RPC requests including message/send, message/stream, etc.\n\nThe A2A SDK application is created per-request to include authentication\ncontext while still leveraging FastAPI's authorization middleware.\n\nAutomatically detects streaming requests (message/stream JSON-RPC method)\nand returns a StreamingResponse to enable real-time chunk delivery.\n\nArgs:\n request: FastAPI request object\n auth: Authentication tuple\n mcp_headers: MCP headers for context propagation\n\nReturns:\n JSON-RPC response or streaming response", - "operationId": "handle_a2a_jsonrpc_a2a_post", + "operationId": "handle_a2a_jsonrpc_a2a_get", "responses": { "200": { "description": "Successful Response", @@ -5381,7 +5381,7 @@ ], "summary": "Handle A2A Jsonrpc", "description": "Handle A2A JSON-RPC requests following the A2A protocol specification.\n\nThis endpoint uses the DefaultRequestHandler from the A2A SDK to handle\nall JSON-RPC requests including message/send, message/stream, etc.\n\nThe A2A SDK application is created per-request to include authentication\ncontext while still leveraging FastAPI's authorization middleware.\n\nAutomatically detects streaming requests (message/stream JSON-RPC method)\nand returns a StreamingResponse to enable real-time chunk delivery.\n\nArgs:\n request: FastAPI request object\n auth: Authentication tuple\n mcp_headers: MCP headers for context propagation\n\nReturns:\n JSON-RPC response or streaming response", - "operationId": "handle_a2a_jsonrpc_a2a_post", + "operationId": "handle_a2a_jsonrpc_a2a_get", "responses": { "200": { "description": "Successful Response", @@ -8065,7 +8065,7 @@ }, { "detail": { - "cause": "ClusterVersion missing required field: 'clusterID'", + "cause": "Missing or invalid 'clusterID' in ClusterVersion", "response": "Internal server error" }, "label": "invalid cluster version" diff --git a/src/models/responses.py b/src/models/responses.py index 20a665060..5c2e974cc 100644 --- a/src/models/responses.py +++ b/src/models/responses.py @@ -2449,7 +2449,7 @@ class InternalServerErrorResponse(AbstractErrorResponse): "label": "invalid cluster version", "detail": { "response": "Internal server error", - "cause": "ClusterVersion missing required field: 'clusterID'", + "cause": "Missing or invalid 'clusterID' in ClusterVersion", }, }, ] diff --git a/tests/unit/authentication/test_k8s.py b/tests/unit/authentication/test_k8s.py index 89dc4afb0..fe02dbf92 100644 --- a/tests/unit/authentication/test_k8s.py +++ b/tests/unit/authentication/test_k8s.py @@ -909,7 +909,7 @@ async def test_kube_admin_invalid_cluster_version_returns_500( mocker.patch( "authentication.k8s.K8sClientSingleton.get_cluster_id", side_effect=InvalidClusterVersionError( - "ClusterVersion missing required field: 'clusterID'" + "Missing or invalid 'clusterID' in ClusterVersion" ), ) @@ -920,7 +920,7 @@ async def test_kube_admin_invalid_cluster_version_returns_500( assert exc_info.value.status_code == 500 detail = cast(dict[str, str], exc_info.value.detail) assert detail["response"] == "Internal server error" - assert "ClusterVersion missing required field" in detail["cause"] + assert "Missing or invalid 'clusterID' in ClusterVersion" in detail["cause"] @pytest.mark.parametrize(