prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Clarify max query limit on bulk query endpoint
  Looks like there's [a limit to the number of queries](https://github.com/google/osv/blob/168a6b2c593d4fac2defbc8546e634256cdfa5b0/gcp/api/server.py#L92-L94) that can be submitted at once with the bulk query endpoint, which is [set to 1000](https://github.com/google/osv/blob/168a6b2c593d4fac2defbc8546e634256cdfa5b0/gcp/api/server.py#L42).
  
  It's understandable but not documented in the api docs as far as I can see.
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `gcp/api/osv_service_v1_pb2_grpc.py`
  Content:
  ```
  1 # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
  2 """Client and server classes corresponding to protobuf-defined services."""
  3 import grpc
  4 
  5 from osv import vulnerability_pb2 as osv_dot_vulnerability__pb2
  6 import osv_service_v1_pb2 as osv__service__v1__pb2
  7 
  8 
  9 class OSVStub(object):
  10     """Open source vulnerability database.
  11     """
  12 
  13     def __init__(self, channel):
  14         """Constructor.
  15 
  16         Args:
  17             channel: A grpc.Channel.
  18         """
  19         self.GetVulnById = channel.unary_unary(
  20                 '/osv.v1.OSV/GetVulnById',
  21                 request_serializer=osv__service__v1__pb2.GetVulnByIdParameters.SerializeToString,
  22                 response_deserializer=osv_dot_vulnerability__pb2.Vulnerability.FromString,
  23                 )
  24         self.QueryAffected = channel.unary_unary(
  25                 '/osv.v1.OSV/QueryAffected',
  26                 request_serializer=osv__service__v1__pb2.QueryAffectedParameters.SerializeToString,
  27                 response_deserializer=osv__service__v1__pb2.VulnerabilityList.FromString,
  28                 )
  29         self.QueryAffectedBatch = channel.unary_unary(
  30                 '/osv.v1.OSV/QueryAffectedBatch',
  31                 request_serializer=osv__service__v1__pb2.QueryAffectedBatchParameters.SerializeToString,
  32                 response_deserializer=osv__service__v1__pb2.BatchVulnerabilityList.FromString,
  33                 )
  34 
  35 
  36 class OSVServicer(object):
  37     """Open source vulnerability database.
  38     """
  39 
  40     def GetVulnById(self, request, context):
  41         """Return a `Vulnerability` object for a given OSV ID.
  42         """
  43         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
  44         context.set_details('Method not implemented!')
  45         raise NotImplementedError('Method not implemented!')
  46 
  47     def QueryAffected(self, request, context):
  48         """Query vulnerabilities for a particular project at a given commit or
  49         version.
  50         """
  51         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
  52         context.set_details('Method not implemented!')
  53         raise NotImplementedError('Method not implemented!')
  54 
  55     def QueryAffectedBatch(self, request, context):
  56         """Query vulnerabilities (batched) for given package versions and commits.
  57         """
  58         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
  59         context.set_details('Method not implemented!')
  60         raise NotImplementedError('Method not implemented!')
  61 
  62 
  63 def add_OSVServicer_to_server(servicer, server):
  64     rpc_method_handlers = {
  65             'GetVulnById': grpc.unary_unary_rpc_method_handler(
  66                     servicer.GetVulnById,
  67                     request_deserializer=osv__service__v1__pb2.GetVulnByIdParameters.FromString,
  68                     response_serializer=osv_dot_vulnerability__pb2.Vulnerability.SerializeToString,
  69             ),
  70             'QueryAffected': grpc.unary_unary_rpc_method_handler(
  71                     servicer.QueryAffected,
  72                     request_deserializer=osv__service__v1__pb2.QueryAffectedParameters.FromString,
  73                     response_serializer=osv__service__v1__pb2.VulnerabilityList.SerializeToString,
  74             ),
  75             'QueryAffectedBatch': grpc.unary_unary_rpc_method_handler(
  76                     servicer.QueryAffectedBatch,
  77                     request_deserializer=osv__service__v1__pb2.QueryAffectedBatchParameters.FromString,
  78                     response_serializer=osv__service__v1__pb2.BatchVulnerabilityList.SerializeToString,
  79             ),
  80     }
  81     generic_handler = grpc.method_handlers_generic_handler(
  82             'osv.v1.OSV', rpc_method_handlers)
  83     server.add_generic_rpc_handlers((generic_handler,))
  84 
  85 
  86  # This class is part of an EXPERIMENTAL API.
  87 class OSV(object):
  88     """Open source vulnerability database.
  89     """
  90 
  91     @staticmethod
  92     def GetVulnById(request,
  93             target,
  94             options=(),
  95             channel_credentials=None,
  96             call_credentials=None,
  97             insecure=False,
  98             compression=None,
  99             wait_for_ready=None,
  100             timeout=None,
  101             metadata=None):
  102         return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/GetVulnById',
  103             osv__service__v1__pb2.GetVulnByIdParameters.SerializeToString,
  104             osv_dot_vulnerability__pb2.Vulnerability.FromString,
  105             options, channel_credentials,
  106             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
  107 
  108     @staticmethod
  109     def QueryAffected(request,
  110             target,
  111             options=(),
  112             channel_credentials=None,
  113             call_credentials=None,
  114             insecure=False,
  115             compression=None,
  116             wait_for_ready=None,
  117             timeout=None,
  118             metadata=None):
  119         return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/QueryAffected',
  120             osv__service__v1__pb2.QueryAffectedParameters.SerializeToString,
  121             osv__service__v1__pb2.VulnerabilityList.FromString,
  122             options, channel_credentials,
  123             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
  124 
  125     @staticmethod
  126     def QueryAffectedBatch(request,
  127             target,
  128             options=(),
  129             channel_credentials=None,
  130             call_credentials=None,
  131             insecure=False,
  132             compression=None,
  133             wait_for_ready=None,
  134             timeout=None,
  135             metadata=None):
  136         return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/QueryAffectedBatch',
  137             osv__service__v1__pb2.QueryAffectedBatchParameters.SerializeToString,
  138             osv__service__v1__pb2.BatchVulnerabilityList.FromString,
  139             options, channel_credentials,
  140             insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
  141
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/gcp/api/osv_service_v1_pb2_grpc.py b/gcp/api/osv_service_v1_pb2_grpc.py
  --- a/gcp/api/osv_service_v1_pb2_grpc.py
  +++ b/gcp/api/osv_service_v1_pb2_grpc.py
  @@ -54,6 +54,7 @@
   
       def QueryAffectedBatch(self, request, context):
           """Query vulnerabilities (batched) for given package versions and commits.
  +        This currently allows a maximum of 1000 package versions to be included in a single query.
           """
           context.set_code(grpc.StatusCode.UNIMPLEMENTED)
           context.set_details('Method not implemented!')
  
verification_info: {"golden_diff": "diff --git a/gcp/api/osv_service_v1_pb2_grpc.py b/gcp/api/osv_service_v1_pb2_grpc.py\n--- a/gcp/api/osv_service_v1_pb2_grpc.py\n+++ b/gcp/api/osv_service_v1_pb2_grpc.py\n@@ -54,6 +54,7 @@\n \n     def QueryAffectedBatch(self, request, context):\n         \"\"\"Query vulnerabilities (batched) for given package versions and commits.\n+        This currently allows a maximum of 1000 package versions to be included in a single query.\n         \"\"\"\n         context.set_code(grpc.StatusCode.UNIMPLEMENTED)\n         context.set_details('Method not implemented!')\n", "issue": "Clarify max query limit on bulk query endpoint\nLooks like there's [a limit to the number of queries](https://github.com/google/osv/blob/168a6b2c593d4fac2defbc8546e634256cdfa5b0/gcp/api/server.py#L92-L94) that can be submitted at once with the bulk query endpoint, which is [set to 1000](https://github.com/google/osv/blob/168a6b2c593d4fac2defbc8546e634256cdfa5b0/gcp/api/server.py#L42).\r\n\r\nIt's understandable but not documented in the api docs as far as I can see.\n", "before_files": [{"content": "# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!\n\"\"\"Client and server classes corresponding to protobuf-defined services.\"\"\"\nimport grpc\n\nfrom osv import vulnerability_pb2 as osv_dot_vulnerability__pb2\nimport osv_service_v1_pb2 as osv__service__v1__pb2\n\n\nclass OSVStub(object):\n    \"\"\"Open source vulnerability database.\n    \"\"\"\n\n    def __init__(self, channel):\n        \"\"\"Constructor.\n\n        Args:\n            channel: A grpc.Channel.\n        \"\"\"\n        self.GetVulnById = channel.unary_unary(\n                '/osv.v1.OSV/GetVulnById',\n                request_serializer=osv__service__v1__pb2.GetVulnByIdParameters.SerializeToString,\n                response_deserializer=osv_dot_vulnerability__pb2.Vulnerability.FromString,\n                )\n        self.QueryAffected = channel.unary_unary(\n                '/osv.v1.OSV/QueryAffected',\n                request_serializer=osv__service__v1__pb2.QueryAffectedParameters.SerializeToString,\n                response_deserializer=osv__service__v1__pb2.VulnerabilityList.FromString,\n                )\n        self.QueryAffectedBatch = channel.unary_unary(\n                '/osv.v1.OSV/QueryAffectedBatch',\n                request_serializer=osv__service__v1__pb2.QueryAffectedBatchParameters.SerializeToString,\n                response_deserializer=osv__service__v1__pb2.BatchVulnerabilityList.FromString,\n                )\n\n\nclass OSVServicer(object):\n    \"\"\"Open source vulnerability database.\n    \"\"\"\n\n    def GetVulnById(self, request, context):\n        \"\"\"Return a `Vulnerability` object for a given OSV ID.\n        \"\"\"\n        context.set_code(grpc.StatusCode.UNIMPLEMENTED)\n        context.set_details('Method not implemented!')\n        raise NotImplementedError('Method not implemented!')\n\n    def QueryAffected(self, request, context):\n        \"\"\"Query vulnerabilities for a particular project at a given commit or\n        version.\n        \"\"\"\n        context.set_code(grpc.StatusCode.UNIMPLEMENTED)\n        context.set_details('Method not implemented!')\n        raise NotImplementedError('Method not implemented!')\n\n    def QueryAffectedBatch(self, request, context):\n        \"\"\"Query vulnerabilities (batched) for given package versions and commits.\n        \"\"\"\n        context.set_code(grpc.StatusCode.UNIMPLEMENTED)\n        context.set_details('Method not implemented!')\n        raise NotImplementedError('Method not implemented!')\n\n\ndef add_OSVServicer_to_server(servicer, server):\n    rpc_method_handlers = {\n            'GetVulnById': grpc.unary_unary_rpc_method_handler(\n                    servicer.GetVulnById,\n                    request_deserializer=osv__service__v1__pb2.GetVulnByIdParameters.FromString,\n                    response_serializer=osv_dot_vulnerability__pb2.Vulnerability.SerializeToString,\n            ),\n            'QueryAffected': grpc.unary_unary_rpc_method_handler(\n                    servicer.QueryAffected,\n                    request_deserializer=osv__service__v1__pb2.QueryAffectedParameters.FromString,\n                    response_serializer=osv__service__v1__pb2.VulnerabilityList.SerializeToString,\n            ),\n            'QueryAffectedBatch': grpc.unary_unary_rpc_method_handler(\n                    servicer.QueryAffectedBatch,\n                    request_deserializer=osv__service__v1__pb2.QueryAffectedBatchParameters.FromString,\n                    response_serializer=osv__service__v1__pb2.BatchVulnerabilityList.SerializeToString,\n            ),\n    }\n    generic_handler = grpc.method_handlers_generic_handler(\n            'osv.v1.OSV', rpc_method_handlers)\n    server.add_generic_rpc_handlers((generic_handler,))\n\n\n # This class is part of an EXPERIMENTAL API.\nclass OSV(object):\n    \"\"\"Open source vulnerability database.\n    \"\"\"\n\n    @staticmethod\n    def GetVulnById(request,\n            target,\n            options=(),\n            channel_credentials=None,\n            call_credentials=None,\n            insecure=False,\n            compression=None,\n            wait_for_ready=None,\n            timeout=None,\n            metadata=None):\n        return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/GetVulnById',\n            osv__service__v1__pb2.GetVulnByIdParameters.SerializeToString,\n            osv_dot_vulnerability__pb2.Vulnerability.FromString,\n            options, channel_credentials,\n            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)\n\n    @staticmethod\n    def QueryAffected(request,\n            target,\n            options=(),\n            channel_credentials=None,\n            call_credentials=None,\n            insecure=False,\n            compression=None,\n            wait_for_ready=None,\n            timeout=None,\n            metadata=None):\n        return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/QueryAffected',\n            osv__service__v1__pb2.QueryAffectedParameters.SerializeToString,\n            osv__service__v1__pb2.VulnerabilityList.FromString,\n            options, channel_credentials,\n            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)\n\n    @staticmethod\n    def QueryAffectedBatch(request,\n            target,\n            options=(),\n            channel_credentials=None,\n            call_credentials=None,\n            insecure=False,\n            compression=None,\n            wait_for_ready=None,\n            timeout=None,\n            metadata=None):\n        return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/QueryAffectedBatch',\n            osv__service__v1__pb2.QueryAffectedBatchParameters.SerializeToString,\n            osv__service__v1__pb2.BatchVulnerabilityList.FromString,\n            options, channel_credentials,\n            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)\n", "path": "gcp/api/osv_service_v1_pb2_grpc.py"}], "after_files": [{"content": "# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!\n\"\"\"Client and server classes corresponding to protobuf-defined services.\"\"\"\nimport grpc\n\nfrom osv import vulnerability_pb2 as osv_dot_vulnerability__pb2\nimport osv_service_v1_pb2 as osv__service__v1__pb2\n\n\nclass OSVStub(object):\n    \"\"\"Open source vulnerability database.\n    \"\"\"\n\n    def __init__(self, channel):\n        \"\"\"Constructor.\n\n        Args:\n            channel: A grpc.Channel.\n        \"\"\"\n        self.GetVulnById = channel.unary_unary(\n                '/osv.v1.OSV/GetVulnById',\n                request_serializer=osv__service__v1__pb2.GetVulnByIdParameters.SerializeToString,\n                response_deserializer=osv_dot_vulnerability__pb2.Vulnerability.FromString,\n                )\n        self.QueryAffected = channel.unary_unary(\n                '/osv.v1.OSV/QueryAffected',\n                request_serializer=osv__service__v1__pb2.QueryAffectedParameters.SerializeToString,\n                response_deserializer=osv__service__v1__pb2.VulnerabilityList.FromString,\n                )\n        self.QueryAffectedBatch = channel.unary_unary(\n                '/osv.v1.OSV/QueryAffectedBatch',\n                request_serializer=osv__service__v1__pb2.QueryAffectedBatchParameters.SerializeToString,\n                response_deserializer=osv__service__v1__pb2.BatchVulnerabilityList.FromString,\n                )\n\n\nclass OSVServicer(object):\n    \"\"\"Open source vulnerability database.\n    \"\"\"\n\n    def GetVulnById(self, request, context):\n        \"\"\"Return a `Vulnerability` object for a given OSV ID.\n        \"\"\"\n        context.set_code(grpc.StatusCode.UNIMPLEMENTED)\n        context.set_details('Method not implemented!')\n        raise NotImplementedError('Method not implemented!')\n\n    def QueryAffected(self, request, context):\n        \"\"\"Query vulnerabilities for a particular project at a given commit or\n        version.\n        \"\"\"\n        context.set_code(grpc.StatusCode.UNIMPLEMENTED)\n        context.set_details('Method not implemented!')\n        raise NotImplementedError('Method not implemented!')\n\n    def QueryAffectedBatch(self, request, context):\n        \"\"\"Query vulnerabilities (batched) for given package versions and commits.\n        This currently allows a maximum of 1000 package versions to be included in a single query.\n        \"\"\"\n        context.set_code(grpc.StatusCode.UNIMPLEMENTED)\n        context.set_details('Method not implemented!')\n        raise NotImplementedError('Method not implemented!')\n\n\ndef add_OSVServicer_to_server(servicer, server):\n    rpc_method_handlers = {\n            'GetVulnById': grpc.unary_unary_rpc_method_handler(\n                    servicer.GetVulnById,\n                    request_deserializer=osv__service__v1__pb2.GetVulnByIdParameters.FromString,\n                    response_serializer=osv_dot_vulnerability__pb2.Vulnerability.SerializeToString,\n            ),\n            'QueryAffected': grpc.unary_unary_rpc_method_handler(\n                    servicer.QueryAffected,\n                    request_deserializer=osv__service__v1__pb2.QueryAffectedParameters.FromString,\n                    response_serializer=osv__service__v1__pb2.VulnerabilityList.SerializeToString,\n            ),\n            'QueryAffectedBatch': grpc.unary_unary_rpc_method_handler(\n                    servicer.QueryAffectedBatch,\n                    request_deserializer=osv__service__v1__pb2.QueryAffectedBatchParameters.FromString,\n                    response_serializer=osv__service__v1__pb2.BatchVulnerabilityList.SerializeToString,\n            ),\n    }\n    generic_handler = grpc.method_handlers_generic_handler(\n            'osv.v1.OSV', rpc_method_handlers)\n    server.add_generic_rpc_handlers((generic_handler,))\n\n\n # This class is part of an EXPERIMENTAL API.\nclass OSV(object):\n    \"\"\"Open source vulnerability database.\n    \"\"\"\n\n    @staticmethod\n    def GetVulnById(request,\n            target,\n            options=(),\n            channel_credentials=None,\n            call_credentials=None,\n            insecure=False,\n            compression=None,\n            wait_for_ready=None,\n            timeout=None,\n            metadata=None):\n        return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/GetVulnById',\n            osv__service__v1__pb2.GetVulnByIdParameters.SerializeToString,\n            osv_dot_vulnerability__pb2.Vulnerability.FromString,\n            options, channel_credentials,\n            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)\n\n    @staticmethod\n    def QueryAffected(request,\n            target,\n            options=(),\n            channel_credentials=None,\n            call_credentials=None,\n            insecure=False,\n            compression=None,\n            wait_for_ready=None,\n            timeout=None,\n            metadata=None):\n        return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/QueryAffected',\n            osv__service__v1__pb2.QueryAffectedParameters.SerializeToString,\n            osv__service__v1__pb2.VulnerabilityList.FromString,\n            options, channel_credentials,\n            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)\n\n    @staticmethod\n    def QueryAffectedBatch(request,\n            target,\n            options=(),\n            channel_credentials=None,\n            call_credentials=None,\n            insecure=False,\n            compression=None,\n            wait_for_ready=None,\n            timeout=None,\n            metadata=None):\n        return grpc.experimental.unary_unary(request, target, '/osv.v1.OSV/QueryAffectedBatch',\n            osv__service__v1__pb2.QueryAffectedBatchParameters.SerializeToString,\n            osv__service__v1__pb2.BatchVulnerabilityList.FromString,\n            options, channel_credentials,\n            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)\n", "path": "gcp/api/osv_service_v1_pb2_grpc.py"}]}