modal 0.72.27__py3-none-any.whl → 0.72.29__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
modal/client.pyi CHANGED
@@ -27,7 +27,7 @@ class _Client:
27
27
  _snapshotted: bool
28
28
 
29
29
  def __init__(
30
- self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.72.27"
30
+ self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.72.29"
31
31
  ): ...
32
32
  def is_closed(self) -> bool: ...
33
33
  @property
@@ -83,7 +83,7 @@ class Client:
83
83
  _snapshotted: bool
84
84
 
85
85
  def __init__(
86
- self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.72.27"
86
+ self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.72.29"
87
87
  ): ...
88
88
  def is_closed(self) -> bool: ...
89
89
  @property
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: modal
3
- Version: 0.72.27
3
+ Version: 0.72.29
4
4
  Summary: Python client library for Modal
5
5
  Author: Modal Labs
6
6
  Author-email: support@modal.com
@@ -20,7 +20,7 @@ modal/app.py,sha256=UOuqlCKlFAjOXCacXmoEMM90FnqFwPRXUhLh0Gi6xzg,45344
20
20
  modal/app.pyi,sha256=5D3LkPP6qvTIl2_YgiyhNQ9X4VsOVuxd69a23UmohDg,25477
21
21
  modal/call_graph.py,sha256=1g2DGcMIJvRy-xKicuf63IVE98gJSnQsr8R_NVMptNc,2581
22
22
  modal/client.py,sha256=8SQawr7P1PNUCq1UmJMUQXG2jIo4Nmdcs311XqrNLRE,15276
23
- modal/client.pyi,sha256=3bLlslVmbEVRR-_1oOOdWxtMLgWoZiAp9tjSHFF95b0,7326
23
+ modal/client.pyi,sha256=sHhgC3tLrltFiFGK-hkQZjG3Nbd6kHnj8yXSXIkAtxQ,7326
24
24
  modal/cloud_bucket_mount.py,sha256=G7T7jWLD0QkmrfKR75mSTwdUZ2xNfj7pkVqb4ipmxmI,5735
25
25
  modal/cloud_bucket_mount.pyi,sha256=CEi7vrH3kDUF4LAy4qP6tfImy2UJuFRcRbsgRNM1wo8,1403
26
26
  modal/cls.py,sha256=xHgZZAmymplw0I2YZGAA8raBboixdNKKTrnsxQZI7G8,32159
@@ -149,10 +149,10 @@ modal_global_objects/mounts/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0
149
149
  modal_global_objects/mounts/modal_client_package.py,sha256=W0E_yShsRojPzWm6LtIQqNVolapdnrZkm2hVEQuZK_4,767
150
150
  modal_global_objects/mounts/python_standalone.py,sha256=pEML5GaV2_0ahci_1vpfc_FnySpsfi2fhYmFF5I7IiQ,1837
151
151
  modal_proto/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
152
- modal_proto/api.proto,sha256=307yBulNJZxQHq4kLX8Yj1eHayoUbG2YcIG-o2wpl5g,84046
152
+ modal_proto/api.proto,sha256=2x3bjUqfJ9GX1rpUjRq-1LLs-ATB-mWRpSsHIu-tnqQ,84218
153
153
  modal_proto/api_grpc.py,sha256=Bcgo5hmJ0FCAVvWAm7X7Qki2GZ2gvAu3kOtqzRtvoMc,106793
154
- modal_proto/api_pb2.py,sha256=hJUJMzvR6jbnM-Mizf_7th7nAoWWvweoSvtuKYuO6XA,307028
155
- modal_proto/api_pb2.pyi,sha256=lxnLtONZBKfxkNh0jo2uHrLfmf-jUPNfVa4paZIqO34,409936
154
+ modal_proto/api_pb2.py,sha256=TvykMt4Cc1srY4sqFLCoUq8sTiyMiDGuPCLUU5dJ0Gk,307105
155
+ modal_proto/api_pb2.pyi,sha256=L5IZqHkI4cnHx6Xz4DLwjxgRSsIH4k2TH5rYRhSMuXI,410164
156
156
  modal_proto/api_pb2_grpc.py,sha256=OTPQgFBajKwy7fhAFEewDjY6lK49C60Z9vTqUpQy_oY,230822
157
157
  modal_proto/api_pb2_grpc.pyi,sha256=mwP2mw6UE46CHlraqicXHsgyGPtV0mCy96LwnFMz74s,53787
158
158
  modal_proto/modal_api_grpc.py,sha256=C5QcdsBWEvF9ufbEjdyPQ5IDDexMdAI2_CQ_U2nEYuc,14258
@@ -166,10 +166,10 @@ modal_proto/options_pb2_grpc.pyi,sha256=CImmhxHsYnF09iENPoe8S4J-n93jtgUYD2JPAc0y
166
166
  modal_proto/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
167
167
  modal_version/__init__.py,sha256=kGya2ZlItX2zB7oHORs-wvP4PG8lg_mtbi1QIK3G6SQ,470
168
168
  modal_version/__main__.py,sha256=2FO0yYQQwDTh6udt1h-cBnGd1c4ZyHnHSI4BksxzVac,105
169
- modal_version/_version_generated.py,sha256=lj6XlIC7owYbmQpzTGNF1jA1FSxMHqSX0HdPqr7S8fc,149
170
- modal-0.72.27.dist-info/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
171
- modal-0.72.27.dist-info/METADATA,sha256=OLf58w13HmbaispDy6GCMT0weQ7RtxbTnwa0tlLJMqQ,2329
172
- modal-0.72.27.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
173
- modal-0.72.27.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
174
- modal-0.72.27.dist-info/top_level.txt,sha256=1nvYbOSIKcmU50fNrpnQnrrOpj269ei3LzgB6j9xGqg,64
175
- modal-0.72.27.dist-info/RECORD,,
169
+ modal_version/_version_generated.py,sha256=JFnduO4cvKKg42T8zHK4LjUtutzfXi-VZ7991muj2-8,149
170
+ modal-0.72.29.dist-info/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
171
+ modal-0.72.29.dist-info/METADATA,sha256=gsXsJbFWn2vvYFGLmWJ22XtkBiGafShUwUAnnM2azjo,2329
172
+ modal-0.72.29.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
173
+ modal-0.72.29.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
174
+ modal-0.72.29.dist-info/top_level.txt,sha256=1nvYbOSIKcmU50fNrpnQnrrOpj269ei3LzgB6j9xGqg,64
175
+ modal-0.72.29.dist-info/RECORD,,
modal_proto/api.proto CHANGED
@@ -82,6 +82,7 @@ enum ClientType {
82
82
  CLIENT_TYPE_WORKER = 2;
83
83
  CLIENT_TYPE_CONTAINER = 3;
84
84
  CLIENT_TYPE_WEB_SERVER = 5;
85
+ CLIENT_TYPE_NOTEBOOK_KERNEL = 6;
85
86
  }
86
87
 
87
88
  enum CloudProvider {
@@ -2227,8 +2228,9 @@ message Sandbox {
2227
2228
 
2228
2229
  optional string proxy_id = 23;
2229
2230
 
2230
- // Enable memory snapshots.
2231
- bool enable_memory_snapshot = 24;
2231
+ // Enable snapshotting the sandbox (both memory and filesystem).
2232
+ // This doesn't need to be enabled to save the filesystem as an image (i.e. a filesystem-only snapshot).
2233
+ bool enable_snapshot = 24;
2232
2234
 
2233
2235
  // Used to pin gVisor version for memory-snapshottable sandboxes.
2234
2236
  // This field is set by the server, not the client.
modal_proto/api_pb2.py CHANGED
@@ -19,7 +19,7 @@ from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
19
19
  from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
20
20
 
21
21
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15modal_proto/api.proto\x12\x0cmodal.client\x1a\x19modal_proto/options.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1egoogle/protobuf/wrappers.proto\"r\n\x1a\x41ppClientDisconnectRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x31\n\x06reason\x18\x02 \x01(\x0e\x32!.modal.client.AppDisconnectReason\x12\x11\n\texception\x18\x03 \x01(\t\"\x85\x01\n\x10\x41ppCreateRequest\x12\x17\n\tclient_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x05 \x01(\t\x12)\n\tapp_state\x18\x06 \x01(\x0e\x32\x16.modal.client.AppState\"O\n\x11\x41ppCreateResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x14\n\x0c\x61pp_page_url\x18\x02 \x01(\t\x12\x14\n\x0c\x61pp_logs_url\x18\x03 \x01(\t\"\xc7\x01\n\x10\x41ppDeployRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x15\n\robject_entity\x18\x04 \x01(\t\x12\x35\n\nvisibility\x18\x05 \x01(\x0e\x32!.modal.client.AppDeployVisibility\x12\x0b\n\x03tag\x18\x06 \x01(\t\" \n\x11\x41ppDeployResponse\x12\x0b\n\x03url\x18\x01 \x01(\t\"\xda\x01\n\x14\x41ppDeploymentHistory\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\r\x12\x16\n\x0e\x63lient_version\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65ployed_at\x18\x04 \x01(\x01\x12\x13\n\x0b\x64\x65ployed_by\x18\x05 \x01(\t\x12\x1e\n\x16\x64\x65ployed_by_avatar_url\x18\t \x01(\t\x12\x0b\n\x03tag\x18\x06 \x01(\t\x12\x18\n\x10rollback_version\x18\x07 \x01(\r\x12\x18\n\x10rollback_allowed\x18\x08 \x01(\x08\"-\n\x1b\x41ppDeploymentHistoryRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"d\n\x1c\x41ppDeploymentHistoryResponse\x12\x44\n\x18\x61pp_deployment_histories\x18\x01 \x03(\x0b\x32\".modal.client.AppDeploymentHistory\"}\n\x1d\x41ppGetByDeploymentNameRequest\x12\x34\n\tnamespace\x18\x01 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"0\n\x1e\x41ppGetByDeploymentNameResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"%\n\x13\x41ppGetLayoutRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"C\n\x14\x41ppGetLayoutResponse\x12+\n\napp_layout\x18\x01 \x01(\x0b\x32\x17.modal.client.AppLayout\"\xba\x01\n\x11\x41ppGetLogsRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x04 \x01(\t\x12\x13\n\x0b\x66unction_id\x18\x05 \x01(\t\x12\x10\n\x08input_id\x18\x06 \x01(\t\x12\x0f\n\x07task_id\x18\x07 \x01(\t\x12\x35\n\x0f\x66ile_descriptor\x18\x08 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\"F\n\x11\x41ppGetObjectsItem\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12$\n\x06object\x18\x06 \x01(\x0b\x32\x14.modal.client.Object\"^\n\x14\x41ppGetObjectsRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x19\n\x11include_unindexed\x18\x02 \x01(\x08\x12\x1b\n\x13only_class_function\x18\x03 \x01(\x08\"G\n\x15\x41ppGetObjectsResponse\x12.\n\x05items\x18\x02 \x03(\x0b\x32\x1f.modal.client.AppGetObjectsItem\"\x83\x01\n\x15\x41ppGetOrCreateRequest\x12\x10\n\x08\x61pp_name\x18\x01 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\x12>\n\x14object_creation_type\x18\x03 \x01(\x0e\x32 .modal.client.ObjectCreationType\"(\n\x16\x41ppGetOrCreateResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"%\n\x13\x41ppHeartbeatRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"\x91\x02\n\tAppLayout\x12%\n\x07objects\x18\x01 \x03(\x0b\x32\x14.modal.client.Object\x12>\n\x0c\x66unction_ids\x18\x02 \x03(\x0b\x32(.modal.client.AppLayout.FunctionIdsEntry\x12\x38\n\tclass_ids\x18\x03 \x03(\x0b\x32%.modal.client.AppLayout.ClassIdsEntry\x1a\x32\n\x10\x46unctionIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rClassIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"*\n\x0e\x41ppListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"\xf5\x01\n\x0f\x41ppListResponse\x12\x37\n\x04\x61pps\x18\x01 \x03(\x0b\x32).modal.client.AppListResponse.AppListItem\x1a\xa8\x01\n\x0b\x41ppListItem\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12%\n\x05state\x18\x04 \x01(\x0e\x32\x16.modal.client.AppState\x12\x12\n\ncreated_at\x18\x05 \x01(\x01\x12\x12\n\nstopped_at\x18\x06 \x01(\x01\x12\x17\n\x0fn_running_tasks\x18\x08 \x01(\x05\x12\x0c\n\x04name\x18\n \x01(\t\">\n\x10\x41ppLookupRequest\x12\x10\n\x08\x61pp_name\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\"#\n\x11\x41ppLookupResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"\x9d\x04\n\x11\x41ppPublishRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x16\n\x0e\x64\x65ployment_tag\x18\x03 \x01(\t\x12)\n\tapp_state\x18\x04 \x01(\x0e\x32\x16.modal.client.AppState\x12\x46\n\x0c\x66unction_ids\x18\x05 \x03(\x0b\x32\x30.modal.client.AppPublishRequest.FunctionIdsEntry\x12@\n\tclass_ids\x18\x06 \x03(\x0b\x32-.modal.client.AppPublishRequest.ClassIdsEntry\x12J\n\x0e\x64\x65\x66inition_ids\x18\x07 \x03(\x0b\x32\x32.modal.client.AppPublishRequest.DefinitionIdsEntry\x12\x18\n\x10rollback_version\x18\x08 \x01(\r\x12\x16\n\x0e\x63lient_version\x18\t \x01(\t\x1a\x32\n\x10\x46unctionIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rClassIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x34\n\x12\x44\x65\x66initionIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"Q\n\x12\x41ppPublishResponse\x12\x0b\n\x03url\x18\x01 \x01(\t\x12.\n\x0fserver_warnings\x18\x03 \x03(\x0b\x32\x15.modal.client.Warning\"5\n\x12\x41ppRollbackRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\x05\"\x9b\x02\n\x14\x41ppSetObjectsRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12T\n\x12indexed_object_ids\x18\x02 \x03(\x0b\x32\x38.modal.client.AppSetObjectsRequest.IndexedObjectIdsEntry\x12\x11\n\tclient_id\x18\x03 \x01(\t\x12\x1c\n\x14unindexed_object_ids\x18\x04 \x03(\t\x12-\n\rnew_app_state\x18\x05 \x01(\x0e\x32\x16.modal.client.AppState\x1a\x37\n\x15IndexedObjectIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01J\x04\x08\x06\x10\x07\"S\n\x0e\x41ppStopRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12+\n\x06source\x18\x02 \x01(\x0e\x32\x1b.modal.client.AppStopSource\"\xa3\x0e\n\x04\x41sgi\x12\'\n\x04http\x18\x01 \x01(\x0b\x32\x17.modal.client.Asgi.HttpH\x00\x12\x36\n\x0chttp_request\x18\x02 \x01(\x0b\x32\x1e.modal.client.Asgi.HttpRequestH\x00\x12\x43\n\x13http_response_start\x18\x03 \x01(\x0b\x32$.modal.client.Asgi.HttpResponseStartH\x00\x12\x41\n\x12http_response_body\x18\x04 \x01(\x0b\x32#.modal.client.Asgi.HttpResponseBodyH\x00\x12I\n\x16http_response_trailers\x18\x05 \x01(\x0b\x32\'.modal.client.Asgi.HttpResponseTrailersH\x00\x12<\n\x0fhttp_disconnect\x18\x06 \x01(\x0b\x32!.modal.client.Asgi.HttpDisconnectH\x00\x12\x31\n\twebsocket\x18\x07 \x01(\x0b\x32\x1c.modal.client.Asgi.WebsocketH\x00\x12@\n\x11websocket_connect\x18\x08 \x01(\x0b\x32#.modal.client.Asgi.WebsocketConnectH\x00\x12>\n\x10websocket_accept\x18\t \x01(\x0b\x32\".modal.client.Asgi.WebsocketAcceptH\x00\x12@\n\x11websocket_receive\x18\n \x01(\x0b\x32#.modal.client.Asgi.WebsocketReceiveH\x00\x12:\n\x0ewebsocket_send\x18\x0b \x01(\x0b\x32 .modal.client.Asgi.WebsocketSendH\x00\x12\x46\n\x14websocket_disconnect\x18\x0c \x01(\x0b\x32&.modal.client.Asgi.WebsocketDisconnectH\x00\x12<\n\x0fwebsocket_close\x18\r \x01(\x0b\x32!.modal.client.Asgi.WebsocketCloseH\x00\x1a\xc5\x01\n\x04Http\x12\x14\n\x0chttp_version\x18\x01 \x01(\t\x12\x0e\n\x06method\x18\x02 \x01(\t\x12\x0e\n\x06scheme\x18\x03 \x01(\t\x12\x0c\n\x04path\x18\x04 \x01(\t\x12\x14\n\x0cquery_string\x18\x05 \x01(\x0c\x12\x0f\n\x07headers\x18\x06 \x03(\x0c\x12\x18\n\x0b\x63lient_host\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x63lient_port\x18\x08 \x01(\rH\x01\x88\x01\x01\x42\x0e\n\x0c_client_hostB\x0e\n\x0c_client_port\x1a.\n\x0bHttpRequest\x12\x0c\n\x04\x62ody\x18\x01 \x01(\x0c\x12\x11\n\tmore_body\x18\x02 \x01(\x08\x1a\x46\n\x11HttpResponseStart\x12\x0e\n\x06status\x18\x01 \x01(\r\x12\x0f\n\x07headers\x18\x02 \x03(\x0c\x12\x10\n\x08trailers\x18\x03 \x01(\x08\x1a\x33\n\x10HttpResponseBody\x12\x0c\n\x04\x62ody\x18\x01 \x01(\x0c\x12\x11\n\tmore_body\x18\x02 \x01(\x08\x1a>\n\x14HttpResponseTrailers\x12\x0f\n\x07headers\x18\x01 \x03(\x0c\x12\x15\n\rmore_trailers\x18\x02 \x01(\x08\x1a\x10\n\x0eHttpDisconnect\x1a\xd0\x01\n\tWebsocket\x12\x14\n\x0chttp_version\x18\x01 \x01(\t\x12\x0e\n\x06scheme\x18\x02 \x01(\t\x12\x0c\n\x04path\x18\x03 \x01(\t\x12\x14\n\x0cquery_string\x18\x04 \x01(\x0c\x12\x0f\n\x07headers\x18\x05 \x03(\x0c\x12\x18\n\x0b\x63lient_host\x18\x06 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x63lient_port\x18\x07 \x01(\rH\x01\x88\x01\x01\x12\x14\n\x0csubprotocols\x18\x08 \x03(\tB\x0e\n\x0c_client_hostB\x0e\n\x0c_client_port\x1a\x12\n\x10WebsocketConnect\x1aL\n\x0fWebsocketAccept\x12\x18\n\x0bsubprotocol\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x07headers\x18\x02 \x03(\x0c\x42\x0e\n\x0c_subprotocol\x1a>\n\x10WebsocketReceive\x12\x0f\n\x05\x62ytes\x18\x01 \x01(\x0cH\x00\x12\x0e\n\x04text\x18\x02 \x01(\tH\x00\x42\t\n\x07\x63ontent\x1a;\n\rWebsocketSend\x12\x0f\n\x05\x62ytes\x18\x01 \x01(\x0cH\x00\x12\x0e\n\x04text\x18\x02 \x01(\tH\x00\x42\t\n\x07\x63ontent\x1a\x31\n\x13WebsocketDisconnect\x12\x11\n\x04\x63ode\x18\x01 \x01(\rH\x00\x88\x01\x01\x42\x07\n\x05_code\x1a<\n\x0eWebsocketClose\x12\x11\n\x04\x63ode\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x0e\n\x06reason\x18\x02 \x01(\tB\x07\n\x05_codeB\x06\n\x04type\"7\n\tBaseImage\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12\x12\n\ndocker_tag\x18\x02 \x01(\tJ\x04\x08\x04\x10\x05\"_\n\x11\x42lobCreateRequest\x12\x13\n\x0b\x63ontent_md5\x18\x01 \x01(\t\x12\x1d\n\x15\x63ontent_sha256_base64\x18\x02 \x01(\t\x12\x16\n\x0e\x63ontent_length\x18\x03 \x01(\x03\"\x84\x01\n\x12\x42lobCreateResponse\x12\x0f\n\x07\x62lob_id\x18\x02 \x01(\t\x12\x14\n\nupload_url\x18\x01 \x01(\tH\x00\x12\x32\n\tmultipart\x18\x03 \x01(\x0b\x32\x1d.modal.client.MultiPartUploadH\x00\x42\x13\n\x11upload_type_oneof\"!\n\x0e\x42lobGetRequest\x12\x0f\n\x07\x62lob_id\x18\x01 \x01(\t\"\'\n\x0f\x42lobGetResponse\x12\x14\n\x0c\x64ownload_url\x18\x01 \x01(\t\"`\n\rBuildFunction\x12\x12\n\ndefinition\x18\x01 \x01(\t\x12\x0f\n\x07globals\x18\x02 \x01(\x0c\x12*\n\x05input\x18\x03 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"C\n\x10\x43\x61ncelInputEvent\x12\x11\n\tinput_ids\x18\x01 \x03(\t\x12\x1c\n\x14terminate_containers\x18\x02 \x01(\x08\"\xe8\x01\n\x0e\x43heckpointInfo\x12\x10\n\x08\x63hecksum\x18\x01 \x01(\t\x12.\n\x06status\x18\x02 \x01(\x0e\x32\x1e.modal.client.CheckpointStatus\x12\x15\n\rcheckpoint_id\x18\x03 \x01(\t\x12\x1b\n\x13runtime_fingerprint\x18\x04 \x01(\t\x12\x0c\n\x04size\x18\x05 \x01(\x03\x12\x1e\n\x16\x63hecksum_is_file_index\x18\x06 \x01(\x08\x12\x18\n\x10original_task_id\x18\x07 \x01(\t\x12\x18\n\x10snapshot_version\x18\x08 \x01(\r\"\x94\x01\n\x12\x43lassCreateRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x19\n\x11\x65xisting_class_id\x18\x02 \x01(\t\x12*\n\x07methods\x18\x03 \x03(\x0b\x32\x19.modal.client.ClassMethod\x12\x1b\n\x13only_class_function\x18\x05 \x01(\x08J\x04\x08\x04\x10\x05\"c\n\x13\x43lassCreateResponse\x12\x10\n\x08\x63lass_id\x18\x01 \x01(\t\x12:\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32!.modal.client.ClassHandleMetadata\"\xd6\x01\n\x0f\x43lassGetRequest\x12\x10\n\x08\x61pp_name\x18\x01 \x01(\t\x12\x12\n\nobject_tag\x18\x02 \x01(\t\x12\x34\n\tnamespace\x18\x03 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\x12\x18\n\x10lookup_published\x18\x08 \x01(\x08\x12\x16\n\x0eworkspace_name\x18\t \x01(\t\x12\x1b\n\x13only_class_function\x18\n \x01(\x08\"\x90\x01\n\x10\x43lassGetResponse\x12\x10\n\x08\x63lass_id\x18\x01 \x01(\t\x12:\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32!.modal.client.ClassHandleMetadata\x12.\n\x0fserver_warnings\x18\x03 \x03(\x0b\x32\x15.modal.client.Warning\"\xa3\x01\n\x13\x43lassHandleMetadata\x12*\n\x07methods\x18\x01 \x03(\x0b\x32\x19.modal.client.ClassMethod\x12\x19\n\x11\x63lass_function_id\x18\x02 \x01(\t\x12\x45\n\x17\x63lass_function_metadata\x18\x03 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"\x81\x01\n\x0b\x43lassMethod\x12\x15\n\rfunction_name\x18\x01 \x01(\t\x12\x13\n\x0b\x66unction_id\x18\x02 \x01(\t\x12\x46\n\x18\x66unction_handle_metadata\x18\x03 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"\xaf\x02\n\x12\x43lassParameterInfo\x12M\n\x06\x66ormat\x18\x01 \x01(\x0e\x32=.modal.client.ClassParameterInfo.ParameterSerializationFormat\x12\x30\n\x06schema\x18\x02 \x03(\x0b\x32 .modal.client.ClassParameterSpec\"\x97\x01\n\x1cParameterSerializationFormat\x12*\n&PARAM_SERIALIZATION_FORMAT_UNSPECIFIED\x10\x00\x12%\n!PARAM_SERIALIZATION_FORMAT_PICKLE\x10\x01\x12$\n PARAM_SERIALIZATION_FORMAT_PROTO\x10\x02\"J\n\x11\x43lassParameterSet\x12\x35\n\nparameters\x18\x01 \x03(\x0b\x32!.modal.client.ClassParameterValue\"\xa4\x01\n\x12\x43lassParameterSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12)\n\x04type\x18\x02 \x01(\x0e\x32\x1b.modal.client.ParameterType\x12\x13\n\x0bhas_default\x18\x03 \x01(\x08\x12\x18\n\x0estring_default\x18\x04 \x01(\tH\x00\x12\x15\n\x0bint_default\x18\x05 \x01(\x03H\x00\x42\x0f\n\rdefault_oneof\"\x8a\x01\n\x13\x43lassParameterValue\x12\x0c\n\x04name\x18\x01 \x01(\t\x12)\n\x04type\x18\x02 \x01(\x0e\x32\x1b.modal.client.ParameterType\x12\x16\n\x0cstring_value\x18\x03 \x01(\tH\x00\x12\x13\n\tint_value\x18\x04 \x01(\x03H\x00\x42\r\n\x0bvalue_oneof\"u\n\x13\x43lientHelloResponse\x12\x0f\n\x07warning\x18\x01 \x01(\t\x12\x1d\n\x15image_builder_version\x18\x02 \x01(\t\x12.\n\x0fserver_warnings\x18\x04 \x03(\x0b\x32\x15.modal.client.Warning\"\xdf\x02\n\x10\x43loudBucketMount\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12\x1d\n\x15\x63redentials_secret_id\x18\x03 \x01(\t\x12\x11\n\tread_only\x18\x04 \x01(\x08\x12>\n\x0b\x62ucket_type\x18\x05 \x01(\x0e\x32).modal.client.CloudBucketMount.BucketType\x12\x16\n\x0erequester_pays\x18\x06 \x01(\x08\x12 \n\x13\x62ucket_endpoint_url\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x17\n\nkey_prefix\x18\x08 \x01(\tH\x01\x88\x01\x01\"6\n\nBucketType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x06\n\x02S3\x10\x01\x12\x06\n\x02R2\x10\x02\x12\x07\n\x03GCP\x10\x03\x42\x16\n\x14_bucket_endpoint_urlB\r\n\x0b_key_prefix\"\xcc\x03\n\x12\x43ontainerArguments\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x13\n\x0b\x66unction_id\x18\x02 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x04 \x01(\t\x12,\n\x0c\x66unction_def\x18\x07 \x01(\x0b\x32\x16.modal.client.Function\x12+\n\nproxy_info\x18\x08 \x01(\x0b\x32\x17.modal.client.ProxyInfo\x12M\n\x0ftracing_context\x18\t \x03(\x0b\x32\x34.modal.client.ContainerArguments.TracingContextEntry\x12\x19\n\x11serialized_params\x18\n \x01(\x0c\x12\x0f\n\x07runtime\x18\x0b \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\r \x01(\t\x12\x1a\n\rcheckpoint_id\x18\x0e \x01(\tH\x00\x88\x01\x01\x12+\n\napp_layout\x18\x0f \x01(\x0b\x32\x17.modal.client.AppLayout\x1a\x35\n\x13TracingContextEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x10\n\x0e_checkpoint_id\"3\n\x1a\x43ontainerCheckpointRequest\x12\x15\n\rcheckpoint_id\x18\x01 \x01(\t\"\xa9\x01\n\x1d\x43ontainerExecGetOutputRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\x12\x18\n\x10last_batch_index\x18\x03 \x01(\x04\x12\x35\n\x0f\x66ile_descriptor\x18\x04 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x15\n\rget_raw_bytes\x18\x05 \x01(\x08\"a\n\x1c\x43ontainerExecPutInputRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x30\n\x05input\x18\x02 \x01(\x0b\x32!.modal.client.RuntimeInputMessage\"\xd7\x02\n\x14\x43ontainerExecRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x63ommand\x18\x02 \x03(\t\x12\'\n\x08pty_info\x18\x03 \x01(\x0b\x32\x15.modal.client.PTYInfo\x12#\n\x1bterminate_container_on_exit\x18\x04 \x01(\x08\x12\x15\n\rruntime_debug\x18\x05 \x01(\x08\x12\x35\n\rstdout_output\x18\x06 \x01(\x0e\x32\x1e.modal.client.ExecOutputOption\x12\x35\n\rstderr_output\x18\x07 \x01(\x0e\x32\x1e.modal.client.ExecOutputOption\x12\x14\n\x0ctimeout_secs\x18\x08 \x01(\r\x12\x14\n\x07workdir\x18\t \x01(\tH\x00\x88\x01\x01\x12\x12\n\nsecret_ids\x18\n \x03(\tB\n\n\x08_workdir\"(\n\x15\x43ontainerExecResponse\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\"<\n\x18\x43ontainerExecWaitRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"T\n\x19\x43ontainerExecWaitResponse\x12\x16\n\texit_code\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x11\n\tcompleted\x18\x02 \x01(\x08\x42\x0c\n\n_exit_code\"4\n\x19\x43ontainerFileCloseRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\"\x9a\x01\n\x1f\x43ontainerFileDeleteBytesRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x1c\n\x0fstart_inclusive\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x1a\n\rend_exclusive\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x12\n\x10_start_inclusiveB\x10\n\x0e_end_exclusive\"4\n\x19\x43ontainerFileFlushRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\"&\n\x16\x43ontainerFileLsRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\"?\n\x19\x43ontainerFileMkdirRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x14\n\x0cmake_parents\x18\x02 \x01(\x08\"h\n\x18\x43ontainerFileOpenRequest\x12\x1c\n\x0f\x66ile_descriptor\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x0c\n\x04mode\x18\x03 \x01(\tB\x12\n\x10_file_descriptor\"7\n\x1c\x43ontainerFileReadLineRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\"I\n\x18\x43ontainerFileReadRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0e\n\x01n\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\x04\n\x02_n\"9\n\x16\x43ontainerFileRmRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x11\n\trecursive\x18\x02 \x01(\x08\"m\n\x18\x43ontainerFileSeekRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\x05\x12(\n\x06whence\x18\x03 \x01(\x0e\x32\x18.modal.client.SeekWhence\"h\n\x19\x43ontainerFileWatchRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x11\n\trecursive\x18\x02 \x01(\x08\x12\x19\n\x0ctimeout_secs\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x0f\n\r_timeout_secs\"\xae\x01\n%ContainerFileWriteReplaceBytesRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x12\x1c\n\x0fstart_inclusive\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x1a\n\rend_exclusive\x18\x04 \x01(\rH\x01\x88\x01\x01\x42\x12\n\x10_start_inclusiveB\x10\n\x0e_end_exclusive\"B\n\x19\x43ontainerFileWriteRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"K\n\'ContainerFilesystemExecGetOutputRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"\x83\x08\n\x1e\x43ontainerFilesystemExecRequest\x12\x43\n\x11\x66ile_open_request\x18\x01 \x01(\x0b\x32&.modal.client.ContainerFileOpenRequestH\x00\x12\x45\n\x12\x66ile_write_request\x18\x02 \x01(\x0b\x32\'.modal.client.ContainerFileWriteRequestH\x00\x12\x43\n\x11\x66ile_read_request\x18\x03 \x01(\x0b\x32&.modal.client.ContainerFileReadRequestH\x00\x12\x45\n\x12\x66ile_flush_request\x18\x04 \x01(\x0b\x32\'.modal.client.ContainerFileFlushRequestH\x00\x12L\n\x16\x66ile_read_line_request\x18\x05 \x01(\x0b\x32*.modal.client.ContainerFileReadLineRequestH\x00\x12\x43\n\x11\x66ile_seek_request\x18\x06 \x01(\x0b\x32&.modal.client.ContainerFileSeekRequestH\x00\x12R\n\x19\x66ile_delete_bytes_request\x18\x07 \x01(\x0b\x32-.modal.client.ContainerFileDeleteBytesRequestH\x00\x12_\n file_write_replace_bytes_request\x18\x08 \x01(\x0b\x32\x33.modal.client.ContainerFileWriteReplaceBytesRequestH\x00\x12\x45\n\x12\x66ile_close_request\x18\t \x01(\x0b\x32\'.modal.client.ContainerFileCloseRequestH\x00\x12?\n\x0f\x66ile_ls_request\x18\x0b \x01(\x0b\x32$.modal.client.ContainerFileLsRequestH\x00\x12\x45\n\x12\x66ile_mkdir_request\x18\x0c \x01(\x0b\x32\'.modal.client.ContainerFileMkdirRequestH\x00\x12?\n\x0f\x66ile_rm_request\x18\r \x01(\x0b\x32$.modal.client.ContainerFileRmRequestH\x00\x12\x45\n\x12\x66ile_watch_request\x18\x0e \x01(\x0b\x32\'.modal.client.ContainerFileWatchRequestH\x00\x12\x0f\n\x07task_id\x18\n \x01(\tB\x19\n\x17\x66ile_exec_request_oneof\"d\n\x1f\x43ontainerFilesystemExecResponse\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x1c\n\x0f\x66ile_descriptor\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_file_descriptor\"\x80\x01\n\x19\x43ontainerHeartbeatRequest\x12&\n\x1e\x63\x61nceled_inputs_return_outputs\x18\x04 \x01(\x08\x12)\n!canceled_inputs_return_outputs_v2\x18\x05 \x01(\x08J\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03J\x04\x08\x03\x10\x04\"t\n\x1a\x43ontainerHeartbeatResponse\x12?\n\x12\x63\x61ncel_input_event\x18\x01 \x01(\x0b\x32\x1e.modal.client.CancelInputEventH\x00\x88\x01\x01\x42\x15\n\x13_cancel_input_event\";\n\x13\x43ontainerLogRequest\x12$\n\x04logs\x18\x03 \x03(\x0b\x32\x16.modal.client.TaskLogs\"-\n\x14\x43ontainerStopRequest\x12\x15\n\x07task_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"\x17\n\x15\x43ontainerStopResponse\"\"\n\x12\x43ustomDomainConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1f\n\x10\x43ustomDomainInfo\x12\x0b\n\x03url\x18\x01 \x01(\t\"S\n\tDNSRecord\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.modal.client.DNSRecordType\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\"\x7f\n\tDataChunk\x12-\n\x0b\x64\x61ta_format\x18\x01 \x01(\x0e\x32\x18.modal.client.DataFormat\x12\x0e\n\x04\x64\x61ta\x18\x02 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x03 \x01(\tH\x00\x12\r\n\x05index\x18\x04 \x01(\x04\x42\x0c\n\ndata_oneof\"#\n\x10\x44ictClearRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"3\n\x13\x44ictContainsRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0b\n\x03key\x18\x02 \x01(\x0c\"%\n\x14\x44ictContainsResponse\x12\r\n\x05\x66ound\x18\x01 \x01(\x08\"D\n\x13\x44ictContentsRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0c\n\x04keys\x18\x02 \x01(\x08\x12\x0e\n\x06values\x18\x03 \x01(\x08\"$\n\x11\x44ictDeleteRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"\'\n\tDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\x0c\x12\r\n\x05value\x18\x02 \x01(\x0c\"\xee\x01\n\x16\x44ictGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12%\n\x04\x64\x61ta\x18\x05 \x03(\x0b\x32\x17.modal.client.DictEntry\"*\n\x17\x44ictGetOrCreateResponse\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\".\n\x0e\x44ictGetRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0b\n\x03key\x18\x02 \x01(\x0c\">\n\x0f\x44ictGetResponse\x12\r\n\x05\x66ound\x18\x01 \x01(\x08\x12\x12\n\x05value\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x42\x08\n\x06_value\"\'\n\x14\x44ictHeartbeatRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"!\n\x0e\x44ictLenRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"\x1e\n\x0f\x44ictLenResponse\x12\x0b\n\x03len\x18\x01 \x01(\x05\"+\n\x0f\x44ictListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"x\n\x10\x44ictListResponse\x12\x36\n\x05\x64icts\x18\x01 \x03(\x0b\x32\'.modal.client.DictListResponse.DictInfo\x1a,\n\x08\x44ictInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\".\n\x0e\x44ictPopRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0b\n\x03key\x18\x02 \x01(\x0c\">\n\x0f\x44ictPopResponse\x12\r\n\x05\x66ound\x18\x01 \x01(\x08\x12\x12\n\x05value\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x42\x08\n\x06_value\"T\n\x11\x44ictUpdateRequest\x12\x15\n\x07\x64ict_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12(\n\x07updates\x18\x02 \x03(\x0b\x32\x17.modal.client.DictEntry\"\x14\n\x12\x44ictUpdateResponse\"\xaf\x01\n\x06\x44omain\x12\x11\n\tdomain_id\x18\x01 \x01(\t\x12\x13\n\x0b\x64omain_name\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12;\n\x12\x63\x65rtificate_status\x18\x04 \x01(\x0e\x32\x1f.modal.client.CertificateStatus\x12,\n\x0b\x64ns_records\x18\x05 \x03(\x0b\x32\x17.modal.client.DNSRecord\"3\n\x1e\x44omainCertificateVerifyRequest\x12\x11\n\tdomain_id\x18\x01 \x01(\t\"G\n\x1f\x44omainCertificateVerifyResponse\x12$\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x14.modal.client.Domain\"0\n\x13\x44omainCreateRequest\x12\x19\n\x0b\x64omain_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"W\n\x14\x44omainCreateResponse\x12\x11\n\tdomain_id\x18\x01 \x01(\t\x12,\n\x0b\x64ns_records\x18\x02 \x03(\x0b\x32\x17.modal.client.DNSRecord\"\x13\n\x11\x44omainListRequest\";\n\x12\x44omainListResponse\x12%\n\x07\x64omains\x18\x01 \x03(\x0b\x32\x14.modal.client.Domain\".\n\x18\x45nvironmentCreateRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\".\n\x18\x45nvironmentDeleteRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"~\n\x1d\x45nvironmentGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12>\n\x14object_creation_type\x18\x02 \x01(\x0e\x32 .modal.client.ObjectCreationType\"m\n\x1e\x45nvironmentGetOrCreateResponse\x12\x16\n\x0e\x65nvironment_id\x18\x01 \x01(\t\x12\x33\n\x08metadata\x18\x02 \x01(\x0b\x32!.modal.client.EnvironmentMetadata\"`\n\x13\x45nvironmentListItem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x16\n\x0ewebhook_suffix\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\x0f\n\x07\x64\x65\x66\x61ult\x18\x04 \x01(\x08\"K\n\x17\x45nvironmentListResponse\x12\x30\n\x05items\x18\x02 \x03(\x0b\x32!.modal.client.EnvironmentListItem\"X\n\x13\x45nvironmentMetadata\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x33\n\x08settings\x18\x02 \x01(\x0b\x32!.modal.client.EnvironmentSettings\"L\n\x13\x45nvironmentSettings\x12\x1d\n\x15image_builder_version\x18\x01 \x01(\t\x12\x16\n\x0ewebhook_suffix\x18\x02 \x01(\t\"\x94\x01\n\x18\x45nvironmentUpdateRequest\x12\x1a\n\x0c\x63urrent_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12*\n\x04name\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nweb_suffix\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa9\x01\n\tFileEntry\x12\x0c\n\x04path\x18\x01 \x01(\t\x12.\n\x04type\x18\x02 \x01(\x0e\x32 .modal.client.FileEntry.FileType\x12\r\n\x05mtime\x18\x03 \x01(\x04\x12\x0c\n\x04size\x18\x04 \x01(\x04\"A\n\x08\x46ileType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x08\n\x04\x46ILE\x10\x01\x12\r\n\tDIRECTORY\x10\x02\x12\x0b\n\x07SYMLINK\x10\x03\"\x90\x01\n\x1c\x46ilesystemRuntimeOutputBatch\x12\x0e\n\x06output\x18\x01 \x03(\x0c\x12\x34\n\x05\x65rror\x18\x02 \x01(\x0b\x32 .modal.client.SystemErrorMessageH\x00\x88\x01\x01\x12\x13\n\x0b\x62\x61tch_index\x18\x03 \x01(\x04\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\x42\x08\n\x06_error\"\xa3\x15\n\x08\x46unction\x12\x13\n\x0bmodule_name\x18\x01 \x01(\t\x12\x15\n\rfunction_name\x18\x02 \x01(\t\x12\x11\n\tmount_ids\x18\x03 \x03(\t\x12\x10\n\x08image_id\x18\x04 \x01(\t\x12\x1b\n\x13\x66unction_serialized\x18\x06 \x01(\x0c\x12>\n\x0f\x64\x65\x66inition_type\x18\x07 \x01(\x0e\x32%.modal.client.Function.DefinitionType\x12:\n\rfunction_type\x18\x08 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12*\n\tresources\x18\t \x01(\x0b\x32\x17.modal.client.Resources\x12\x12\n\nsecret_ids\x18\n \x03(\t\x12+\n\nrate_limit\x18\x0b \x01(\x0b\x32\x17.modal.client.RateLimit\x12\x33\n\x0ewebhook_config\x18\x0f \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12=\n\x14shared_volume_mounts\x18\x10 \x03(\x0b\x32\x1f.modal.client.SharedVolumeMount\x12\x15\n\x08proxy_id\x18\x11 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x0cretry_policy\x18\x12 \x01(\x0b\x32!.modal.client.FunctionRetryPolicy\x12\x19\n\x11\x63oncurrency_limit\x18\x13 \x01(\r\x12\x14\n\x0ctimeout_secs\x18\x15 \x01(\r\x12\'\n\x08pty_info\x18\x16 \x01(\x0b\x32\x15.modal.client.PTYInfo\x12\x18\n\x10\x63lass_serialized\x18\x17 \x01(\x0c\x12\x1e\n\x16task_idle_timeout_secs\x18\x19 \x01(\r\x12\x38\n\x0e\x63loud_provider\x18\x1a \x01(\x0e\x32\x1b.modal.client.CloudProviderH\x01\x88\x01\x01\x12\x16\n\x0ewarm_pool_size\x18\x1b \x01(\r\x12\x0f\n\x07web_url\x18\x1c \x01(\t\x12.\n\x0cweb_url_info\x18\x1d \x01(\x0b\x32\x18.modal.client.WebUrlInfo\x12\x0f\n\x07runtime\x18\x1e \x01(\t\x12\x10\n\x08\x61pp_name\x18\x1f \x01(\t\x12\x30\n\rvolume_mounts\x18! \x03(\x0b\x32\x19.modal.client.VolumeMount\x12 \n\x18target_concurrent_inputs\x18\" \x01(\r\x12:\n\x12\x63ustom_domain_info\x18# \x03(\x0b\x32\x1e.modal.client.CustomDomainInfo\x12\x11\n\tworker_id\x18$ \x01(\t\x12\x15\n\rruntime_debug\x18% \x01(\x08\x12\x1b\n\x13is_builder_function\x18 \x01(\x08\x12\x18\n\x10is_auto_snapshot\x18& \x01(\x08\x12\x11\n\tis_method\x18\' \x01(\x08\x12!\n\x19is_checkpointing_function\x18( \x01(\x08\x12\x1d\n\x15\x63heckpointing_enabled\x18) \x01(\x08\x12\x30\n\ncheckpoint\x18* \x01(\x0b\x32\x1c.modal.client.CheckpointInfo\x12;\n\x13object_dependencies\x18+ \x03(\x0b\x32\x1e.modal.client.ObjectDependency\x12\x15\n\rblock_network\x18, \x01(\x08\x12\x12\n\nmax_inputs\x18. \x01(\r\x12(\n\ts3_mounts\x18/ \x03(\x0b\x32\x15.modal.client.S3Mount\x12;\n\x13\x63loud_bucket_mounts\x18\x33 \x03(\x0b\x32\x1e.modal.client.CloudBucketMount\x12\x42\n\x13scheduler_placement\x18\x32 \x01(\x0b\x32 .modal.client.SchedulerPlacementH\x02\x88\x01\x01\x12\x10\n\x08is_class\x18\x35 \x01(\x08\x12\x17\n\x0fuse_function_id\x18\x36 \x01(\t\x12\x17\n\x0fuse_method_name\x18\x37 \x01(\t\x12>\n\x14\x63lass_parameter_info\x18\x38 \x01(\x0b\x32 .modal.client.ClassParameterInfo\x12\x16\n\x0e\x62\x61tch_max_size\x18< \x01(\r\x12\x17\n\x0f\x62\x61tch_linger_ms\x18= \x01(\x04\x12\x14\n\x0ci6pn_enabled\x18> \x01(\x08\x12.\n&_experimental_concurrent_cancellations\x18? \x01(\x08\x12\x1d\n\x15max_concurrent_inputs\x18@ \x01(\r\x12,\n$_experimental_task_templates_enabled\x18\x41 \x01(\x08\x12@\n\x1c_experimental_task_templates\x18\x42 \x03(\x0b\x32\x1a.modal.client.TaskTemplate\x12 \n\x18_experimental_group_size\x18\x43 \x01(\r\x12\x11\n\tuntrusted\x18\x44 \x01(\x08\x12\'\n\x1f_experimental_buffer_containers\x18\x45 \x01(\r\x12#\n\x16_experimental_proxy_ip\x18\x46 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x13runtime_perf_record\x18G \x01(\x08\x12(\n\x08schedule\x18H \x01(\x0b\x32\x16.modal.client.Schedule\x12\x16\n\x0esnapshot_debug\x18I \x01(\x08\x12I\n\x12method_definitions\x18J \x03(\x0b\x32-.modal.client.Function.MethodDefinitionsEntry\x12\x1e\n\x16method_definitions_set\x18K \x01(\x08\x12$\n\x1c_experimental_custom_scaling\x18L \x01(\x08\x1aX\n\x16MethodDefinitionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.modal.client.MethodDefinition:\x02\x38\x01\"k\n\x0e\x44\x65\x66initionType\x12\x1f\n\x1b\x44\x45\x46INITION_TYPE_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x44\x45\x46INITION_TYPE_SERIALIZED\x10\x01\x12\x18\n\x14\x44\x45\x46INITION_TYPE_FILE\x10\x02\"f\n\x0c\x46unctionType\x12\x1d\n\x19\x46UNCTION_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x46UNCTION_TYPE_GENERATOR\x10\x01\x12\x1a\n\x16\x46UNCTION_TYPE_FUNCTION\x10\x02\x42\x0b\n\t_proxy_idB\x11\n\x0f_cloud_providerB\x16\n\x14_scheduler_placementB\x19\n\x17X_experimental_proxy_ipJ\x04\x08\x14\x10\x15J\x04\x08\x30\x10\x31J\x04\x08\x31\x10\x32J\x04\x08\x34\x10\x35J\x04\x08\x39\x10:J\x04\x08:\x10;J\x04\x08;\x10<\"v\n\x1a\x46unctionAsyncInvokeRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x17\n\x0fparent_input_id\x18\x02 \x01(\t\x12*\n\x05input\x18\x03 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"W\n\x1b\x46unctionAsyncInvokeResponse\x12\x1e\n\x16retry_with_blob_upload\x18\x01 \x01(\x08\x12\x18\n\x10\x66unction_call_id\x18\x02 \x01(\t\"\x9e\x01\n\x19\x46unctionBindParamsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x19\n\x11serialized_params\x18\x02 \x01(\x0c\x12\x37\n\x10\x66unction_options\x18\x03 \x01(\x0b\x32\x1d.modal.client.FunctionOptions\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"v\n\x1a\x46unctionBindParamsResponse\x12\x19\n\x11\x62ound_function_id\x18\x01 \x01(\t\x12=\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"z\n\x19\x46unctionCallCallGraphInfo\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x17\n\x0fparent_input_id\x18\x02 \x01(\t\x12\x15\n\rfunction_name\x18\x03 \x01(\t\x12\x13\n\x0bmodule_name\x18\x04 \x01(\t\"S\n\x19\x46unctionCallCancelRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x1c\n\x14terminate_containers\x18\x02 \x01(\x08\"J\n\x1a\x46unctionCallGetDataRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x12\n\nlast_index\x18\x02 \x01(\x04\"\xc3\x03\n\x10\x46unctionCallInfo\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x0b\n\x03idx\x18\x02 \x01(\x05\x12\x12\n\ncreated_at\x18\x06 \x01(\x01\x12\x14\n\x0cscheduled_at\x18\x07 \x01(\x01\x12\x37\n\x0epending_inputs\x18\x0c \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x36\n\rfailed_inputs\x18\r \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x39\n\x10succeeded_inputs\x18\x0e \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x37\n\x0etimeout_inputs\x18\x0f \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x39\n\x10\x63\x61ncelled_inputs\x18\x10 \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x14\n\x0ctotal_inputs\x18\x11 \x01(\x05J\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05J\x04\x08\x05\x10\x06J\x04\x08\x08\x10\tJ\x04\x08\t\x10\nJ\x04\x08\n\x10\x0bJ\x04\x08\x0b\x10\x0c\".\n\x17\x46unctionCallListRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\"R\n\x18\x46unctionCallListResponse\x12\x36\n\x0e\x66unction_calls\x18\x01 \x03(\x0b\x32\x1e.modal.client.FunctionCallInfo\"d\n\x1a\x46unctionCallPutDataRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12,\n\x0b\x64\x61ta_chunks\x18\x02 \x03(\x0b\x32\x17.modal.client.DataChunk\"\xed\x01\n\x15\x46unctionCreateRequest\x12(\n\x08\x66unction\x18\x01 \x01(\x0b\x32\x16.modal.client.Function\x12\x14\n\x06\x61pp_id\x18\x02 \x01(\tB\x04\x80\xb5\x18\x01\x12,\n\x08schedule\x18\x06 \x01(\x0b\x32\x16.modal.client.ScheduleB\x02\x18\x01\x12\x1c\n\x14\x65xisting_function_id\x18\x07 \x01(\t\x12\x15\n\rdefer_updates\x18\x08 \x01(\x08\x12\x31\n\rfunction_data\x18\t \x01(\x0b\x32\x1a.modal.client.FunctionData\"\xb8\x01\n\x16\x46unctionCreateResponse\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12 \n\x14__deprecated_web_url\x18\x02 \x01(\tB\x02\x18\x01\x12(\n\x08\x66unction\x18\x04 \x01(\x0b\x32\x16.modal.client.Function\x12=\n\x0fhandle_metadata\x18\x05 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"\xbc\t\n\x0c\x46unctionData\x12\x13\n\x0bmodule_name\x18\x01 \x01(\t\x12\x15\n\rfunction_name\x18\x02 \x01(\t\x12:\n\rfunction_type\x18\x03 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x16\n\x0ewarm_pool_size\x18\x04 \x01(\r\x12\x19\n\x11\x63oncurrency_limit\x18\x05 \x01(\r\x12\x1e\n\x16task_idle_timeout_secs\x18\x06 \x01(\r\x12 \n\x18_experimental_group_size\x18\x13 \x01(\r\x12\'\n\x1f_experimental_buffer_containers\x18\x16 \x01(\r\x12$\n\x1c_experimental_custom_scaling\x18\x17 \x01(\x08\x12\x11\n\tworker_id\x18\x07 \x01(\t\x12\x14\n\x0ctimeout_secs\x18\x08 \x01(\r\x12\x0f\n\x07web_url\x18\t \x01(\t\x12.\n\x0cweb_url_info\x18\n \x01(\x0b\x32\x18.modal.client.WebUrlInfo\x12\x33\n\x0ewebhook_config\x18\x0b \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12:\n\x12\x63ustom_domain_info\x18\x0c \x03(\x0b\x32\x1e.modal.client.CustomDomainInfo\x12#\n\x16_experimental_proxy_ip\x18\x18 \x01(\tH\x00\x88\x01\x01\x12M\n\x12method_definitions\x18\x19 \x03(\x0b\x32\x31.modal.client.FunctionData.MethodDefinitionsEntry\x12\x1e\n\x16method_definitions_set\x18\x1a \x01(\x08\x12\x10\n\x08is_class\x18\r \x01(\x08\x12>\n\x14\x63lass_parameter_info\x18\x0e \x01(\x0b\x32 .modal.client.ClassParameterInfo\x12\x11\n\tis_method\x18\x0f \x01(\x08\x12\x17\n\x0fuse_function_id\x18\x10 \x01(\t\x12\x17\n\x0fuse_method_name\x18\x11 \x01(\t\x12\x43\n\x10ranked_functions\x18\x12 \x03(\x0b\x32).modal.client.FunctionData.RankedFunction\x12(\n\x08schedule\x18\x14 \x01(\x0b\x32\x16.modal.client.Schedule\x12\x11\n\tuntrusted\x18\x1b \x01(\x08\x12\x16\n\x0esnapshot_debug\x18\x1c \x01(\x08\x12\x1b\n\x13runtime_perf_record\x18\x1d \x01(\x08\x1aX\n\x16MethodDefinitionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.modal.client.MethodDefinition:\x02\x38\x01\x1aH\n\x0eRankedFunction\x12\x0c\n\x04rank\x18\x01 \x01(\r\x12(\n\x08\x66unction\x18\x02 \x01(\x0b\x32\x16.modal.client.FunctionB\x19\n\x17X_experimental_proxy_ipJ\x04\x08\x15\x10\x16\"\xab\x01\n\x10\x46unctionExtended\x12\x17\n\x0ftype_identifier\x18\x01 \x01(\r\x12\x34\n\x12\x66unction_singleton\x18\x02 \x01(\x0b\x32\x16.modal.client.FunctionH\x00\x12\x33\n\rfunction_data\x18\x03 \x01(\x0b\x32\x1a.modal.client.FunctionDataH\x00\x42\x13\n\x11\x66unction_extended\"7\n\x1b\x46unctionGetCallGraphRequest\x12\x18\n\x10\x66unction_call_id\x18\x02 \x01(\t\"\x91\x01\n\x1c\x46unctionGetCallGraphResponse\x12\x30\n\x06inputs\x18\x01 \x03(\x0b\x32 .modal.client.InputCallGraphInfo\x12?\n\x0e\x66unction_calls\x18\x02 \x03(\x0b\x32\'.modal.client.FunctionCallCallGraphInfo\"5\n\x1e\x46unctionGetCurrentStatsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\"p\n$FunctionGetDynamicConcurrencyRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x1a\n\x12target_concurrency\x18\x02 \x01(\r\x12\x17\n\x0fmax_concurrency\x18\x03 \x01(\r\"<\n%FunctionGetDynamicConcurrencyResponse\x12\x13\n\x0b\x63oncurrency\x18\x01 \x01(\r\"\xdb\x01\n\x15\x46unctionGetInputsItem\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12*\n\x05input\x18\x02 \x01(\x0b\x32\x1b.modal.client.FunctionInput\x12\x13\n\x0bkill_switch\x18\x03 \x01(\x08\x12\x18\n\x10\x66unction_call_id\x18\x05 \x01(\t\x12O\n\x1d\x66unction_call_invocation_type\x18\x06 \x01(\x0e\x32(.modal.client.FunctionCallInvocationTypeJ\x04\x08\x04\x10\x05\"\xb6\x01\n\x18\x46unctionGetInputsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x12\n\nmax_values\x18\x03 \x01(\x05\x12\x19\n\x11\x61verage_call_time\x18\x05 \x01(\x02\x12\x19\n\x11input_concurrency\x18\x06 \x01(\x05\x12\x16\n\x0e\x62\x61tch_max_size\x18\x0b \x01(\r\x12\x17\n\x0f\x62\x61tch_linger_ms\x18\x0c \x01(\x04J\x04\x08\t\x10\nJ\x04\x08\n\x10\x0b\"s\n\x19\x46unctionGetInputsResponse\x12\x33\n\x06inputs\x18\x03 \x03(\x0b\x32#.modal.client.FunctionGetInputsItem\x12!\n\x19rate_limit_sleep_duration\x18\x04 \x01(\x02\"\xd9\x01\n\x16\x46unctionGetOutputsItem\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x0b\n\x03idx\x18\x02 \x01(\x05\x12\x10\n\x08input_id\x18\x03 \x01(\t\x12-\n\x0b\x64\x61ta_format\x18\x05 \x01(\x0e\x32\x18.modal.client.DataFormat\x12\x0f\n\x07task_id\x18\x06 \x01(\t\x12\x18\n\x10input_started_at\x18\x07 \x01(\x01\x12\x19\n\x11output_created_at\x18\x08 \x01(\x01\"\xb5\x01\n\x19\x46unctionGetOutputsRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x12\n\nmax_values\x18\x02 \x01(\x05\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x06 \x01(\t\x12\x18\n\x10\x63lear_on_success\x18\x07 \x01(\x08\x12\x14\n\x0crequested_at\x18\x08 \x01(\x01\x12\x12\n\ninput_jwts\x18\t \x03(\t\"\x97\x01\n\x1a\x46unctionGetOutputsResponse\x12\x0c\n\x04idxs\x18\x03 \x03(\x05\x12\x35\n\x07outputs\x18\x04 \x03(\x0b\x32$.modal.client.FunctionGetOutputsItem\x12\x15\n\rlast_entry_id\x18\x05 \x01(\t\x12\x1d\n\x15num_unfinished_inputs\x18\x06 \x01(\x05\"\x8a\x01\n\x12\x46unctionGetRequest\x12\x10\n\x08\x61pp_name\x18\x01 \x01(\t\x12\x12\n\nobject_tag\x18\x02 \x01(\t\x12\x34\n\tnamespace\x18\x03 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"\x99\x01\n\x13\x46unctionGetResponse\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12=\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\x12.\n\x0fserver_warnings\x18\x04 \x03(\x0b\x32\x15.modal.client.Warning\"3\n\x1c\x46unctionGetSerializedRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\"V\n\x1d\x46unctionGetSerializedResponse\x12\x1b\n\x13\x66unction_serialized\x18\x01 \x01(\x0c\x12\x18\n\x10\x63lass_serialized\x18\x02 \x01(\x0c\"\xdb\x03\n\x16\x46unctionHandleMetadata\x12\x15\n\rfunction_name\x18\x02 \x01(\t\x12:\n\rfunction_type\x18\x08 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x0f\n\x07web_url\x18\x1c \x01(\t\x12\x11\n\tis_method\x18\' \x01(\x08\x12\x17\n\x0fuse_function_id\x18( \x01(\t\x12\x17\n\x0fuse_method_name\x18) \x01(\t\x12\x15\n\rdefinition_id\x18* \x01(\t\x12>\n\x14\x63lass_parameter_info\x18+ \x01(\x0b\x32 .modal.client.ClassParameterInfo\x12^\n\x16method_handle_metadata\x18, \x03(\x0b\x32>.modal.client.FunctionHandleMetadata.MethodHandleMetadataEntry\x1a\x61\n\x19MethodHandleMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x33\n\x05value\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata:\x02\x38\x01\"\xb3\x01\n\rFunctionInput\x12\x0e\n\x04\x61rgs\x18\x01 \x01(\x0cH\x00\x12\x16\n\x0c\x61rgs_blob_id\x18\x07 \x01(\tH\x00\x12\x13\n\x0b\x66inal_input\x18\t \x01(\x08\x12-\n\x0b\x64\x61ta_format\x18\n \x01(\x0e\x32\x18.modal.client.DataFormat\x12\x18\n\x0bmethod_name\x18\x0b \x01(\tH\x01\x88\x01\x01\x42\x0c\n\nargs_oneofB\x0e\n\x0c_method_name\"\xa9\x02\n\x12\x46unctionMapRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x17\n\x0fparent_input_id\x18\x02 \x01(\t\x12\x19\n\x11return_exceptions\x18\x03 \x01(\x08\x12:\n\x12\x66unction_call_type\x18\x04 \x01(\x0e\x32\x1e.modal.client.FunctionCallType\x12=\n\x10pipelined_inputs\x18\x05 \x03(\x0b\x32#.modal.client.FunctionPutInputsItem\x12O\n\x1d\x66unction_call_invocation_type\x18\x06 \x01(\x0e\x32(.modal.client.FunctionCallInvocationType\"\xca\x01\n\x13\x46unctionMapResponse\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x45\n\x10pipelined_inputs\x18\x02 \x03(\x0b\x32+.modal.client.FunctionPutInputsResponseItem\x12\x37\n\x0cretry_policy\x18\x03 \x01(\x0b\x32!.modal.client.FunctionRetryPolicy\x12\x19\n\x11\x66unction_call_jwt\x18\x04 \x01(\t\"\xc9\x04\n\x0f\x46unctionOptions\x12\x12\n\nsecret_ids\x18\x01 \x03(\t\x12\x11\n\tmount_ids\x18\x02 \x03(\t\x12/\n\tresources\x18\x03 \x01(\x0b\x32\x17.modal.client.ResourcesH\x00\x88\x01\x01\x12<\n\x0cretry_policy\x18\x04 \x01(\x0b\x32!.modal.client.FunctionRetryPolicyH\x01\x88\x01\x01\x12\x1e\n\x11\x63oncurrency_limit\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x19\n\x0ctimeout_secs\x18\x06 \x01(\rH\x03\x88\x01\x01\x12#\n\x16task_idle_timeout_secs\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x1b\n\x0ewarm_pool_size\x18\x08 \x01(\rH\x05\x88\x01\x01\x12\x30\n\rvolume_mounts\x18\t \x03(\x0b\x32\x19.modal.client.VolumeMount\x12%\n\x18target_concurrent_inputs\x18\n \x01(\rH\x06\x88\x01\x01\x12\x1d\n\x15replace_volume_mounts\x18\x0b \x01(\x08\x12\x1a\n\x12replace_secret_ids\x18\x0c \x01(\x08\x42\x0c\n\n_resourcesB\x0f\n\r_retry_policyB\x14\n\x12_concurrency_limitB\x0f\n\r_timeout_secsB\x19\n\x17_task_idle_timeout_secsB\x11\n\x0f_warm_pool_sizeB\x1b\n\x19_target_concurrent_inputs\"\xbd\x03\n\x18\x46unctionPrecreateRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x1b\n\rfunction_name\x18\x02 \x01(\tB\x04\x80\xb5\x18\x01\x12\x1c\n\x14\x65xisting_function_id\x18\x03 \x01(\t\x12:\n\rfunction_type\x18\x04 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x33\n\x0ewebhook_config\x18\x05 \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12\x17\n\x0fuse_function_id\x18\x06 \x01(\t\x12\x17\n\x0fuse_method_name\x18\x07 \x01(\t\x12Y\n\x12method_definitions\x18\x08 \x03(\x0b\x32=.modal.client.FunctionPrecreateRequest.MethodDefinitionsEntry\x1aX\n\x16MethodDefinitionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.modal.client.MethodDefinition:\x02\x38\x01\"o\n\x19\x46unctionPrecreateResponse\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12=\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"P\n\x15\x46unctionPutInputsItem\x12\x0b\n\x03idx\x18\x01 \x01(\x05\x12*\n\x05input\x18\x02 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"~\n\x18\x46unctionPutInputsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x18\n\x10\x66unction_call_id\x18\x03 \x01(\t\x12\x33\n\x06inputs\x18\x04 \x03(\x0b\x32#.modal.client.FunctionPutInputsItem\"X\n\x19\x46unctionPutInputsResponse\x12;\n\x06inputs\x18\x01 \x03(\x0b\x32+.modal.client.FunctionPutInputsResponseItem\"Q\n\x1d\x46unctionPutInputsResponseItem\x12\x0b\n\x03idx\x18\x01 \x01(\x05\x12\x10\n\x08input_id\x18\x02 \x01(\t\x12\x11\n\tinput_jwt\x18\x03 \x01(\t\"\xbb\x01\n\x16\x46unctionPutOutputsItem\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x18\n\x10input_started_at\x18\x03 \x01(\x01\x12\x19\n\x11output_created_at\x18\x04 \x01(\x01\x12-\n\x0b\x64\x61ta_format\x18\x07 \x01(\x0e\x32\x18.modal.client.DataFormat\"h\n\x19\x46unctionPutOutputsRequest\x12\x35\n\x07outputs\x18\x04 \x03(\x0b\x32$.modal.client.FunctionPutOutputsItem\x12\x14\n\x0crequested_at\x18\x05 \x01(\x01\"X\n\x17\x46unctionRetryInputsItem\x12\x11\n\tinput_jwt\x18\x01 \x01(\t\x12*\n\x05input\x18\x02 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"n\n\x1a\x46unctionRetryInputsRequest\x12\x19\n\x11\x66unction_call_jwt\x18\x01 \x01(\t\x12\x35\n\x06inputs\x18\x02 \x03(\x0b\x32%.modal.client.FunctionRetryInputsItem\"\x1d\n\x1b\x46unctionRetryInputsResponse\"s\n\x13\x46unctionRetryPolicy\x12\x1b\n\x13\x62\x61\x63koff_coefficient\x18\x01 \x01(\x02\x12\x18\n\x10initial_delay_ms\x18\x02 \x01(\r\x12\x14\n\x0cmax_delay_ms\x18\x03 \x01(\r\x12\x0f\n\x07retries\x18\x12 \x01(\r\"S\n\rFunctionStats\x12\x0f\n\x07\x62\x61\x63klog\x18\x01 \x01(\r\x12\x18\n\x10num_active_tasks\x18\x02 \x01(\r\x12\x17\n\x0fnum_total_tasks\x18\x03 \x01(\r\"]\n%FunctionUpdateSchedulingParamsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x1f\n\x17warm_pool_size_override\x18\x02 \x01(\r\"(\n&FunctionUpdateSchedulingParamsResponse\"O\n\tGPUConfig\x12#\n\x04type\x18\x01 \x01(\x0e\x32\x15.modal.client.GPUType\x12\r\n\x05\x63ount\x18\x02 \x01(\r\x12\x0e\n\x06memory\x18\x03 \x01(\r\"$\n\rGeneratorDone\x12\x13\n\x0bitems_total\x18\x01 \x01(\x04\"\xed\x03\n\rGenericResult\x12\x39\n\x06status\x18\x01 \x01(\x0e\x32).modal.client.GenericResult.GenericStatus\x12\x11\n\texception\x18\x02 \x01(\t\x12\x10\n\x08\x65xitcode\x18\x03 \x01(\x05\x12\x11\n\ttraceback\x18\x04 \x01(\t\x12\x15\n\rserialized_tb\x18\x0b \x01(\x0c\x12\x15\n\rtb_line_cache\x18\x0c \x01(\x0c\x12\x0e\n\x04\x64\x61ta\x18\x05 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\n \x01(\tH\x00\x12\x1a\n\x12propagation_reason\x18\r \x01(\t\"\xe8\x01\n\rGenericStatus\x12\x1e\n\x1aGENERIC_STATUS_UNSPECIFIED\x10\x00\x12\x1a\n\x16GENERIC_STATUS_SUCCESS\x10\x01\x12\x1a\n\x16GENERIC_STATUS_FAILURE\x10\x02\x12\x1d\n\x19GENERIC_STATUS_TERMINATED\x10\x03\x12\x1a\n\x16GENERIC_STATUS_TIMEOUT\x10\x04\x12\x1f\n\x1bGENERIC_STATUS_INIT_FAILURE\x10\x05\x12#\n\x1fGENERIC_STATUS_INTERNAL_FAILURE\x10\x06\x42\x0c\n\ndata_oneof\"\xdd\x03\n\x05Image\x12,\n\x0b\x62\x61se_images\x18\x05 \x03(\x0b\x32\x17.modal.client.BaseImage\x12\x1b\n\x13\x64ockerfile_commands\x18\x06 \x03(\t\x12\x35\n\rcontext_files\x18\x07 \x03(\x0b\x32\x1e.modal.client.ImageContextFile\x12\x0f\n\x07version\x18\x0b \x01(\t\x12\x12\n\nsecret_ids\x18\x0c \x03(\t\x12\x0b\n\x03gpu\x18\r \x01(\x08\x12\x18\n\x10\x63ontext_mount_id\x18\x0f \x01(\t\x12+\n\ngpu_config\x18\x10 \x01(\x0b\x32\x17.modal.client.GPUConfig\x12@\n\x15image_registry_config\x18\x11 \x01(\x0b\x32!.modal.client.ImageRegistryConfig\x12\x1a\n\x12\x62uild_function_def\x18\x0e \x01(\t\x12\x1e\n\x16\x62uild_function_globals\x18\x12 \x01(\x0c\x12\x0f\n\x07runtime\x18\x13 \x01(\t\x12\x15\n\rruntime_debug\x18\x14 \x01(\x08\x12\x33\n\x0e\x62uild_function\x18\x15 \x01(\x0b\x32\x1b.modal.client.BuildFunction\"2\n\x10ImageContextFile\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"&\n\x12ImageFromIdRequest\x12\x10\n\x08image_id\x18\x01 \x01(\t\"V\n\x13ImageFromIdResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12-\n\x08metadata\x18\x02 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\"\x8e\x02\n\x17ImageGetOrCreateRequest\x12\"\n\x05image\x18\x02 \x01(\x0b\x32\x13.modal.client.Image\x12\x14\n\x06\x61pp_id\x18\x04 \x01(\tB\x04\x80\xb5\x18\x01\x12\x19\n\x11\x65xisting_image_id\x18\x05 \x01(\t\x12\x19\n\x11\x62uild_function_id\x18\x06 \x01(\t\x12\x13\n\x0b\x66orce_build\x18\x07 \x01(\x08\x12\x34\n\tnamespace\x18\x08 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x17\n\x0f\x62uilder_version\x18\t \x01(\t\x12\x1f\n\x17\x61llow_global_deployment\x18\n \x01(\x08\"\x88\x01\n\x18ImageGetOrCreateResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12-\n\x08metadata\x18\x03 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\"x\n\x19ImageJoinStreamingRequest\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x03 \x01(\t\x12!\n\x19include_logs_for_finished\x18\x04 \x01(\x08\"\xc2\x01\n\x1aImageJoinStreamingResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12)\n\ttask_logs\x18\x02 \x03(\x0b\x32\x16.modal.client.TaskLogs\x12\x10\n\x08\x65ntry_id\x18\x03 \x01(\t\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\x12-\n\x08metadata\x18\x05 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\"\xec\x01\n\rImageMetadata\x12 \n\x13python_version_info\x18\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x0fpython_packages\x18\x02 \x03(\x0b\x32/.modal.client.ImageMetadata.PythonPackagesEntry\x12\x14\n\x07workdir\x18\x03 \x01(\tH\x01\x88\x01\x01\x1a\x35\n\x13PythonPackagesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x16\n\x14_python_version_infoB\n\n\x08_workdir\"d\n\x13ImageRegistryConfig\x12:\n\x12registry_auth_type\x18\x01 \x01(\x0e\x32\x1e.modal.client.RegistryAuthType\x12\x11\n\tsecret_id\x18\x02 \x01(\t\"\x8c\x01\n\x12InputCallGraphInfo\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12\x39\n\x06status\x18\x02 \x01(\x0e\x32).modal.client.GenericResult.GenericStatus\x12\x18\n\x10\x66unction_call_id\x18\x03 \x01(\t\x12\x0f\n\x07task_id\x18\x04 \x01(\t\"K\n\x11InputCategoryInfo\x12\r\n\x05total\x18\x01 \x01(\x05\x12\'\n\x06latest\x18\x02 \x03(\x0b\x32\x17.modal.client.InputInfo\"\x99\x01\n\tInputInfo\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12\x0b\n\x03idx\x18\x02 \x01(\x05\x12\x0f\n\x07task_id\x18\x03 \x01(\t\x12\x12\n\nstarted_at\x18\x04 \x01(\x01\x12\x13\n\x0b\x66inished_at\x18\x05 \x01(\x01\x12\x19\n\x11task_startup_time\x18\x06 \x01(\x01\x12\x18\n\x10task_first_input\x18\x07 \x01(\x08\"\x97\x02\n\x10MethodDefinition\x12\x15\n\rfunction_name\x18\x01 \x01(\t\x12:\n\rfunction_type\x18\x02 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x33\n\x0ewebhook_config\x18\x03 \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12\x0f\n\x07web_url\x18\x04 \x01(\t\x12.\n\x0cweb_url_info\x18\x05 \x01(\x0b\x32\x18.modal.client.WebUrlInfo\x12:\n\x12\x63ustom_domain_info\x18\x06 \x03(\x0b\x32\x1e.modal.client.CustomDomainInfo\"i\n\tMountFile\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x12\n\nsha256_hex\x18\x03 \x01(\t\x12\x11\n\x04size\x18\x04 \x01(\x04H\x00\x88\x01\x01\x12\x11\n\x04mode\x18\x05 \x01(\rH\x01\x88\x01\x01\x42\x07\n\x05_sizeB\x07\n\x05_mode\"\xfa\x01\n\x17MountGetOrCreateRequest\x12\x17\n\x0f\x64\x65ployment_name\x18\x01 \x01(\t\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12&\n\x05\x66iles\x18\x05 \x03(\x0b\x32\x17.modal.client.MountFile\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\t\"h\n\x18MountGetOrCreateResponse\x12\x10\n\x08mount_id\x18\x01 \x01(\t\x12:\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32!.modal.client.MountHandleMetadata\":\n\x13MountHandleMetadata\x12#\n\x1b\x63ontent_checksum_sha256_hex\x18\x01 \x01(\t\"_\n\x13MountPutFileRequest\x12\x12\n\nsha256_hex\x18\x02 \x01(\t\x12\x0e\n\x04\x64\x61ta\x18\x03 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x05 \x01(\tH\x00\x42\x0c\n\ndata_oneof\"&\n\x14MountPutFileResponse\x12\x0e\n\x06\x65xists\x18\x02 \x01(\x08\"S\n\x0fMultiPartUpload\x12\x13\n\x0bpart_length\x18\x01 \x01(\x03\x12\x13\n\x0bupload_urls\x18\x02 \x03(\t\x12\x16\n\x0e\x63ompletion_url\x18\x03 \x01(\t\"\xbe\x01\n\rNetworkAccess\x12J\n\x13network_access_type\x18\x01 \x01(\x0e\x32-.modal.client.NetworkAccess.NetworkAccessType\x12\x15\n\rallowed_cidrs\x18\x02 \x03(\t\"J\n\x11NetworkAccessType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x08\n\x04OPEN\x10\x01\x12\x0b\n\x07\x42LOCKED\x10\x02\x12\r\n\tALLOWLIST\x10\x03\"\x92\x03\n#NotebookKernelPublishResultsRequest\x12\x13\n\x0bnotebook_id\x18\x01 \x01(\t\x12M\n\x07results\x18\x02 \x03(\x0b\x32<.modal.client.NotebookKernelPublishResultsRequest.CellResult\x1a\x37\n\x0c\x45xecuteReply\x12\x0e\n\x06status\x18\x01 \x01(\t\x12\x17\n\x0f\x65xecution_count\x18\x02 \x01(\r\x1a\xcd\x01\n\nCellResult\x12\x0f\n\x07\x63\x65ll_id\x18\x01 \x01(\t\x12.\n\x06output\x18\x02 \x01(\x0b\x32\x1c.modal.client.NotebookOutputH\x00\x12\x16\n\x0c\x63lear_output\x18\x03 \x01(\x08H\x00\x12W\n\rexecute_reply\x18\x04 \x01(\x0b\x32>.modal.client.NotebookKernelPublishResultsRequest.ExecuteReplyH\x00\x42\r\n\x0bresult_type\"\x8e\x05\n\x0eNotebookOutput\x12\x44\n\x0e\x65xecute_result\x18\x01 \x01(\x0b\x32*.modal.client.NotebookOutput.ExecuteResultH\x00\x12@\n\x0c\x64isplay_data\x18\x02 \x01(\x0b\x32(.modal.client.NotebookOutput.DisplayDataH\x00\x12\x35\n\x06stream\x18\x03 \x01(\x0b\x32#.modal.client.NotebookOutput.StreamH\x00\x12\x33\n\x05\x65rror\x18\x04 \x01(\x0b\x32\".modal.client.NotebookOutput.ErrorH\x00\x1az\n\rExecuteResult\x12\x17\n\x0f\x65xecution_count\x18\x01 \x01(\r\x12%\n\x04\x64\x61ta\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12)\n\x08metadata\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\x1a\x9b\x01\n\x0b\x44isplayData\x12%\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x17.google.protobuf.Struct\x12)\n\x08metadata\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12!\n\x14transient_display_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_transient_display_id\x1a$\n\x06Stream\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x1a\x39\n\x05\x45rror\x12\r\n\x05\x65name\x18\x01 \x01(\t\x12\x0e\n\x06\x65value\x18\x02 \x01(\t\x12\x11\n\ttraceback\x18\x03 \x03(\tB\r\n\x0boutput_type\"\xce\x02\n\x06Object\x12\x11\n\tobject_id\x18\x01 \x01(\t\x12H\n\x18\x66unction_handle_metadata\x18\x03 \x01(\x0b\x32$.modal.client.FunctionHandleMetadataH\x00\x12\x42\n\x15mount_handle_metadata\x18\x04 \x01(\x0b\x32!.modal.client.MountHandleMetadataH\x00\x12\x42\n\x15\x63lass_handle_metadata\x18\x05 \x01(\x0b\x32!.modal.client.ClassHandleMetadataH\x00\x12\x46\n\x17sandbox_handle_metadata\x18\x06 \x01(\x0b\x32#.modal.client.SandboxHandleMetadataH\x00\x42\x17\n\x15handle_metadata_oneof\"%\n\x10ObjectDependency\x12\x11\n\tobject_id\x18\x01 \x01(\t\"\x86\x02\n\x07PTYInfo\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x12\n\nwinsz_rows\x18\x02 \x01(\r\x12\x12\n\nwinsz_cols\x18\x03 \x01(\r\x12\x10\n\x08\x65nv_term\x18\x04 \x01(\t\x12\x15\n\renv_colorterm\x18\x05 \x01(\t\x12\x18\n\x10\x65nv_term_program\x18\x06 \x01(\t\x12/\n\x08pty_type\x18\x07 \x01(\x0e\x32\x1d.modal.client.PTYInfo.PTYType\"N\n\x07PTYType\x12\x18\n\x14PTY_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11PTY_TYPE_FUNCTION\x10\x01\x12\x12\n\x0ePTY_TYPE_SHELL\x10\x02\"-\n\x08PortSpec\x12\x0c\n\x04port\x18\x01 \x01(\r\x12\x13\n\x0bunencrypted\x18\x02 \x01(\x08\"2\n\tPortSpecs\x12%\n\x05ports\x18\x01 \x03(\x0b\x32\x16.modal.client.PortSpec\"\x7f\n\x05Proxy\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12\x10\n\x08proxy_id\x18\x05 \x01(\t\x12(\n\tproxy_ips\x18\x04 \x03(\x0b\x32\x15.modal.client.ProxyIp\"B\n\x12ProxyCreateRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"9\n\x13ProxyCreateResponse\x12\"\n\x05proxy\x18\x01 \x01(\x0b\x32\x13.modal.client.Proxy\",\n\x12ProxyDeleteRequest\x12\x16\n\x08proxy_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"\xc8\x01\n\x17ProxyGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\",\n\x18ProxyGetOrCreateResponse\x12\x10\n\x08proxy_id\x18\x01 \x01(\t\"?\n\x0fProxyGetRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"6\n\x10ProxyGetResponse\x12\"\n\x05proxy\x18\x01 \x01(\x0b\x32\x13.modal.client.Proxy\"\x89\x01\n\tProxyInfo\x12\x12\n\nelastic_ip\x18\x01 \x01(\t\x12\x11\n\tproxy_key\x18\x02 \x01(\t\x12\x13\n\x0bremote_addr\x18\x03 \x01(\t\x12\x13\n\x0bremote_port\x18\x04 \x01(\x05\x12+\n\nproxy_type\x18\x05 \x01(\x0e\x32\x17.modal.client.ProxyType\"v\n\x07ProxyIp\x12\x10\n\x08proxy_ip\x18\x01 \x01(\t\x12+\n\x06status\x18\x02 \x01(\x0e\x32\x1b.modal.client.ProxyIpStatus\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"9\n\x11ProxyListResponse\x12$\n\x07proxies\x18\x01 \x03(\x0b\x32\x13.modal.client.Proxy\"T\n\x11QueueClearRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x15\n\rpartition_key\x18\x02 \x01(\x0c\x12\x16\n\x0e\x61ll_partitions\x18\x03 \x01(\x08\",\n\x12QueueDeleteRequest\x12\x16\n\x08queue_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"\xc2\x01\n\x17QueueGetOrCreateRequest\x12\x17\n\x0f\x64\x65ployment_name\x18\x01 \x01(\t\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\",\n\x18QueueGetOrCreateResponse\x12\x10\n\x08queue_id\x18\x01 \x01(\t\"]\n\x0fQueueGetRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\x12\x10\n\x08n_values\x18\x04 \x01(\x05\x12\x15\n\rpartition_key\x18\x05 \x01(\x0c\"\"\n\x10QueueGetResponse\x12\x0e\n\x06values\x18\x02 \x03(\x0c\")\n\x15QueueHeartbeatRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\",\n\tQueueItem\x12\r\n\x05value\x18\x01 \x01(\x0c\x12\x10\n\x08\x65ntry_id\x18\x02 \x01(\t\"I\n\x0fQueueLenRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x15\n\rpartition_key\x18\x02 \x01(\x0c\x12\r\n\x05total\x18\x03 \x01(\x08\"\x1f\n\x10QueueLenResponse\x12\x0b\n\x03len\x18\x01 \x01(\x05\"F\n\x10QueueListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\x12\x18\n\x10total_size_limit\x18\x02 \x01(\x05\"\xa9\x01\n\x11QueueListResponse\x12\x39\n\x06queues\x18\x01 \x03(\x0b\x32).modal.client.QueueListResponse.QueueInfo\x1aY\n\tQueueInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\x12\x16\n\x0enum_partitions\x18\x03 \x01(\x05\x12\x12\n\ntotal_size\x18\x04 \x01(\x05\"r\n\x15QueueNextItemsRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x15\n\rpartition_key\x18\x02 \x01(\x0c\x12\x15\n\rlast_entry_id\x18\x03 \x01(\t\x12\x19\n\x11item_poll_timeout\x18\x04 \x01(\x02\"@\n\x16QueueNextItemsResponse\x12&\n\x05items\x18\x01 \x03(\x0b\x32\x17.modal.client.QueueItem\"i\n\x0fQueuePutRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x0e\n\x06values\x18\x04 \x03(\x0c\x12\x15\n\rpartition_key\x18\x05 \x01(\x0c\x12\x1d\n\x15partition_ttl_seconds\x18\x06 \x01(\x05\"M\n\tRateLimit\x12\r\n\x05limit\x18\x01 \x01(\x05\x12\x31\n\x08interval\x18\x02 \x01(\x0e\x32\x1f.modal.client.RateLimitInterval\"\xa7\x01\n\tResources\x12\x11\n\tmemory_mb\x18\x02 \x01(\r\x12\x11\n\tmilli_cpu\x18\x03 \x01(\r\x12+\n\ngpu_config\x18\x04 \x01(\x0b\x32\x17.modal.client.GPUConfig\x12\x15\n\rmemory_mb_max\x18\x05 \x01(\r\x12\x19\n\x11\x65phemeral_disk_mb\x18\x06 \x01(\r\x12\x15\n\rmilli_cpu_max\x18\x07 \x01(\r\"J\n\x13RuntimeInputMessage\x12\x0f\n\x07message\x18\x01 \x01(\x0c\x12\x15\n\rmessage_index\x18\x02 \x01(\x04\x12\x0b\n\x03\x65of\x18\x03 \x01(\x08\"\x9c\x02\n\x12RuntimeOutputBatch\x12\x31\n\x05items\x18\x01 \x03(\x0b\x32\".modal.client.RuntimeOutputMessage\x12\x13\n\x0b\x62\x61tch_index\x18\x02 \x01(\x04\x12\x16\n\texit_code\x18\x03 \x01(\x05H\x00\x88\x01\x01\x12\x32\n\x06stdout\x18\x04 \x03(\x0b\x32\".modal.client.RuntimeOutputMessage\x12\x32\n\x06stderr\x18\x05 \x03(\x0b\x32\".modal.client.RuntimeOutputMessage\x12\x30\n\x04info\x18\x06 \x03(\x0b\x32\".modal.client.RuntimeOutputMessageB\x0c\n\n_exit_code\"u\n\x14RuntimeOutputMessage\x12\x35\n\x0f\x66ile_descriptor\x18\x01 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x15\n\rmessage_bytes\x18\x03 \x01(\x0c\"d\n\x07S3Mount\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12\x1d\n\x15\x63redentials_secret_id\x18\x03 \x01(\t\x12\x11\n\tread_only\x18\x04 \x01(\x08\"\x9a\x07\n\x07Sandbox\x12\x17\n\x0f\x65ntrypoint_args\x18\x01 \x03(\t\x12\x11\n\tmount_ids\x18\x02 \x03(\t\x12\x10\n\x08image_id\x18\x03 \x01(\t\x12\x12\n\nsecret_ids\x18\x04 \x03(\t\x12*\n\tresources\x18\x05 \x01(\x0b\x32\x17.modal.client.Resources\x12\x33\n\x0e\x63loud_provider\x18\x06 \x01(\x0e\x32\x1b.modal.client.CloudProvider\x12\x14\n\x0ctimeout_secs\x18\x07 \x01(\r\x12\x14\n\x07workdir\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x33\n\nnfs_mounts\x18\t \x03(\x0b\x32\x1f.modal.client.SharedVolumeMount\x12\x15\n\rruntime_debug\x18\n \x01(\x08\x12\x15\n\rblock_network\x18\x0b \x01(\x08\x12(\n\ts3_mounts\x18\x0c \x03(\x0b\x32\x15.modal.client.S3Mount\x12;\n\x13\x63loud_bucket_mounts\x18\x0e \x03(\x0b\x32\x1e.modal.client.CloudBucketMount\x12\x30\n\rvolume_mounts\x18\r \x03(\x0b\x32\x19.modal.client.VolumeMount\x12\'\n\x08pty_info\x18\x0f \x01(\x0b\x32\x15.modal.client.PTYInfo\x12\x42\n\x13scheduler_placement\x18\x11 \x01(\x0b\x32 .modal.client.SchedulerPlacementH\x02\x88\x01\x01\x12\x11\n\tworker_id\x18\x13 \x01(\t\x12-\n\nopen_ports\x18\x14 \x01(\x0b\x32\x17.modal.client.PortSpecsH\x00\x12\x14\n\x0ci6pn_enabled\x18\x15 \x01(\x08\x12\x33\n\x0enetwork_access\x18\x16 \x01(\x0b\x32\x1b.modal.client.NetworkAccess\x12\x15\n\x08proxy_id\x18\x17 \x01(\tH\x03\x88\x01\x01\x12\x1e\n\x16\x65nable_memory_snapshot\x18\x18 \x01(\x08\x12\x1d\n\x10snapshot_version\x18\x19 \x01(\rH\x04\x88\x01\x01\x42\x12\n\x10open_ports_oneofB\n\n\x08_workdirB\x16\n\x14_scheduler_placementB\x0b\n\t_proxy_idB\x13\n\x11_snapshot_versionJ\x04\x08\x10\x10\x11J\x04\x08\x12\x10\x13\"q\n\x14SandboxCreateRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12)\n\ndefinition\x18\x02 \x01(\x0b\x32\x15.modal.client.Sandbox\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\"+\n\x15SandboxCreateResponse\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\"\x8a\x01\n\x15SandboxGetLogsRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x35\n\x0f\x66ile_descriptor\x18\x02 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x04 \x01(\t\"i\n\x17SandboxGetTaskIdRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x14\n\x07timeout\x18\x02 \x01(\x02H\x00\x88\x01\x01\x12\x18\n\x10wait_until_ready\x18\x03 \x01(\x08\x42\n\n\x08_timeout\"\x83\x01\n\x18SandboxGetTaskIdResponse\x12\x14\n\x07task_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x35\n\x0btask_result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResultH\x01\x88\x01\x01\x42\n\n\x08_task_idB\x0e\n\x0c_task_result\"?\n\x18SandboxGetTunnelsRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"s\n\x19SandboxGetTunnelsResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12)\n\x07tunnels\x18\x02 \x03(\x0b\x32\x18.modal.client.TunnelData\"D\n\x15SandboxHandleMetadata\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"^\n\x0bSandboxInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12)\n\ttask_info\x18\x04 \x01(\x0b\x32\x16.modal.client.TaskInfoJ\x04\x08\x02\x10\x03\"\x9a\x01\n\x12SandboxListRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x18\n\x10\x62\x65\x66ore_timestamp\x18\x02 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12\x18\n\x10include_finished\x18\x04 \x01(\x08\x12&\n\x04tags\x18\x05 \x03(\x0b\x32\x18.modal.client.SandboxTag\"C\n\x13SandboxListResponse\x12,\n\tsandboxes\x18\x01 \x03(\x0b\x32\x19.modal.client.SandboxInfo\"\\\n\x15SandboxRestoreRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x13\n\x0bsnapshot_id\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\",\n\x16SandboxRestoreResponse\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\"?\n\x18SandboxSnapshotFsRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"\x8f\x01\n\x19SandboxSnapshotFsResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x33\n\x0eimage_metadata\x18\x03 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\",\n\x16SandboxSnapshotRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\".\n\x17SandboxSnapshotResponse\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\"B\n\x1aSandboxSnapshotWaitRequest\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"J\n\x1bSandboxSnapshotWaitResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"Y\n\x18SandboxStdinWriteRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\r\n\x05input\x18\x02 \x01(\x0c\x12\r\n\x05index\x18\x03 \x01(\r\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\"\x1b\n\x19SandboxStdinWriteResponse\"1\n\nSandboxTag\x12\x10\n\x08tag_name\x18\x01 \x01(\t\x12\x11\n\ttag_value\x18\x02 \x01(\t\"m\n\x15SandboxTagsSetRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\x12\x12\n\nsandbox_id\x18\x02 \x01(\t\x12&\n\x04tags\x18\x03 \x03(\x0b\x32\x18.modal.client.SandboxTag\"-\n\x17SandboxTerminateRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\"P\n\x18SandboxTerminateResponse\x12\x34\n\x0f\x65xisting_result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"9\n\x12SandboxWaitRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"B\n\x13SandboxWaitResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"\x8e\x02\n\x08Schedule\x12+\n\x04\x63ron\x18\x01 \x01(\x0b\x32\x1b.modal.client.Schedule.CronH\x00\x12/\n\x06period\x18\x02 \x01(\x0b\x32\x1d.modal.client.Schedule.PeriodH\x00\x1a\x1b\n\x04\x43ron\x12\x13\n\x0b\x63ron_string\x18\x01 \x01(\t\x1au\n\x06Period\x12\r\n\x05years\x18\x01 \x01(\x05\x12\x0e\n\x06months\x18\x02 \x01(\x05\x12\r\n\x05weeks\x18\x03 \x01(\x05\x12\x0c\n\x04\x64\x61ys\x18\x04 \x01(\x05\x12\r\n\x05hours\x18\x05 \x01(\x05\x12\x0f\n\x07minutes\x18\x06 \x01(\x05\x12\x0f\n\x07seconds\x18\x07 \x01(\x02\x42\x10\n\x0eschedule_oneof\"\x8a\x01\n\x12SchedulerPlacement\x12\x0f\n\x07regions\x18\x04 \x03(\t\x12\x12\n\x05_zone\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x17\n\n_lifecycle\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x17\n\x0f_instance_types\x18\x05 \x03(\tB\x08\n\x06X_zoneB\r\n\x0bX_lifecycleJ\x04\x08\x01\x10\x02\"\xd0\x01\n\x13SecretCreateRequest\x12@\n\x08\x65nv_dict\x18\x01 \x03(\x0b\x32..modal.client.SecretCreateRequest.EnvDictEntry\x12\x14\n\x06\x61pp_id\x18\x02 \x01(\tB\x04\x80\xb5\x18\x01\x12\x15\n\rtemplate_type\x18\x03 \x01(\t\x12\x1a\n\x12\x65xisting_secret_id\x18\x04 \x01(\t\x1a.\n\x0c\x45nvDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\")\n\x14SecretCreateResponse\x12\x11\n\tsecret_id\x18\x01 \x01(\t\"(\n\x13SecretDeleteRequest\x12\x11\n\tsecret_id\x18\x01 \x01(\t\"\xe7\x02\n\x18SecretGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12\x45\n\x08\x65nv_dict\x18\x05 \x03(\x0b\x32\x33.modal.client.SecretGetOrCreateRequest.EnvDictEntry\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\t\x12\x15\n\rrequired_keys\x18\x07 \x03(\t\x1a.\n\x0c\x45nvDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\".\n\x19SecretGetOrCreateResponse\x12\x11\n\tsecret_id\x18\x01 \x01(\t\"v\n\x0eSecretListItem\x12\r\n\x05label\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\x12\x14\n\x0clast_used_at\x18\x03 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\x12\x11\n\tsecret_id\x18\x05 \x01(\t\"-\n\x11SecretListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"[\n\x12SecretListResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.modal.client.SecretListItem\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"5\n\x19SharedVolumeDeleteRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\"D\n\x1aSharedVolumeGetFileRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"S\n\x1bSharedVolumeGetFileResponse\x12\x0e\n\x04\x64\x61ta\x18\x01 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x02 \x01(\tH\x00\x42\x0c\n\ndata_oneof\"\xdf\x01\n\x1eSharedVolumeGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12\x0e\n\x06\x61pp_id\x18\x05 \x01(\t\";\n\x1fSharedVolumeGetOrCreateResponse\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\"8\n\x1cSharedVolumeHeartbeatRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\"F\n\x1cSharedVolumeListFilesRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"I\n\x1dSharedVolumeListFilesResponse\x12(\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x17.modal.client.FileEntry\"\x88\x01\n\x14SharedVolumeListItem\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x10shared_volume_id\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\x33\n\x0e\x63loud_provider\x18\x04 \x01(\x0e\x32\x1b.modal.client.CloudProvider\"3\n\x17SharedVolumeListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"g\n\x18SharedVolumeListResponse\x12\x31\n\x05items\x18\x01 \x03(\x0b\x32\".modal.client.SharedVolumeListItem\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"\x92\x01\n\x11SharedVolumeMount\x12\x12\n\nmount_path\x18\x01 \x01(\t\x12\x18\n\x10shared_volume_id\x18\x02 \x01(\t\x12\x33\n\x0e\x63loud_provider\x18\x03 \x01(\x0e\x32\x1b.modal.client.CloudProvider\x12\x1a\n\x12\x61llow_cross_region\x18\x04 \x01(\x08\"\xa7\x01\n\x1aSharedVolumePutFileRequest\x12\x1e\n\x10shared_volume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x12\n\nsha256_hex\x18\x03 \x01(\t\x12\x0e\n\x04\x64\x61ta\x18\x04 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x05 \x01(\tH\x00\x12\x11\n\tresumable\x18\x06 \x01(\x08\x42\x0c\n\ndata_oneof\"-\n\x1bSharedVolumePutFileResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\"`\n\x1dSharedVolumeRemoveFileRequest\x12\x1e\n\x10shared_volume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\trecursive\x18\x03 \x01(\x08\"^\n\x12SystemErrorMessage\x12\x31\n\nerror_code\x18\x01 \x01(\x0e\x32\x1d.modal.client.SystemErrorCode\x12\x15\n\rerror_message\x18\x02 \x01(\t\"@\n\x17TaskClusterHelloRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontainer_ip\x18\x02 \x01(\t\"[\n\x18TaskClusterHelloResponse\x12\x12\n\ncluster_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63luster_rank\x18\x02 \x01(\r\x12\x15\n\rcontainer_ips\x18\x03 \x03(\t\".\n\x19TaskCurrentInputsResponse\x12\x11\n\tinput_ids\x18\x01 \x03(\t\"\x81\x01\n\x08TaskInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\nstarted_at\x18\x02 \x01(\x01\x12\x13\n\x0b\x66inished_at\x18\x03 \x01(\x01\x12+\n\x06result\x18\x04 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x13\n\x0b\x65nqueued_at\x18\x05 \x01(\x01\"+\n\x0fTaskListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\":\n\x10TaskListResponse\x12&\n\x05tasks\x18\x01 \x03(\x0b\x32\x17.modal.client.TaskStats\"\xee\x01\n\x08TaskLogs\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\t\x12+\n\ntask_state\x18\x06 \x01(\x0e\x32\x17.modal.client.TaskState\x12\x11\n\ttimestamp\x18\x07 \x01(\x01\x12\x35\n\x0f\x66ile_descriptor\x18\x08 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x31\n\rtask_progress\x18\t \x01(\x0b\x32\x1a.modal.client.TaskProgress\x12\x18\n\x10\x66unction_call_id\x18\n \x01(\t\x12\x10\n\x08input_id\x18\x0b \x01(\t\"\xc6\x01\n\rTaskLogsBatch\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12%\n\x05items\x18\x02 \x03(\x0b\x32\x16.modal.client.TaskLogs\x12\x10\n\x08\x65ntry_id\x18\x05 \x01(\t\x12\x10\n\x08\x61pp_done\x18\n \x01(\x08\x12\x13\n\x0b\x66unction_id\x18\x0b \x01(\t\x12\x10\n\x08input_id\x18\x0c \x01(\t\x12\x10\n\x08image_id\x18\r \x01(\t\x12\x0b\n\x03\x65of\x18\x0e \x01(\x08\x12\x13\n\x0bpty_exec_id\x18\x0f \x01(\t\"p\n\x0cTaskProgress\x12\x0b\n\x03len\x18\x01 \x01(\x04\x12\x0b\n\x03pos\x18\x02 \x01(\x04\x12\x31\n\rprogress_type\x18\x03 \x01(\x0e\x32\x1a.modal.client.ProgressType\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\"@\n\x11TaskResultRequest\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\"Y\n\tTaskStats\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\t\x12\x17\n\x0f\x61pp_description\x18\x03 \x01(\t\x12\x12\n\nstarted_at\x18\x04 \x01(\x01\"\x98\x01\n\x0cTaskTemplate\x12\x0c\n\x04rank\x18\x01 \x01(\r\x12*\n\tresources\x18\x02 \x01(\x0b\x32\x17.modal.client.Resources\x12 \n\x18target_concurrent_inputs\x18\x03 \x01(\r\x12\x1d\n\x15max_concurrent_inputs\x18\x04 \x01(\r\x12\r\n\x05index\x18\x05 \x01(\r\"V\n\x16TokenFlowCreateRequest\x12\x12\n\nutm_source\x18\x03 \x01(\t\x12\x16\n\x0elocalhost_port\x18\x04 \x01(\x05\x12\x10\n\x08next_url\x18\x05 \x01(\t\"d\n\x17TokenFlowCreateResponse\x12\x15\n\rtoken_flow_id\x18\x01 \x01(\t\x12\x0f\n\x07web_url\x18\x02 \x01(\t\x12\x0c\n\x04\x63ode\x18\x03 \x01(\t\x12\x13\n\x0bwait_secret\x18\x04 \x01(\t\"S\n\x14TokenFlowWaitRequest\x12\x0f\n\x07timeout\x18\x01 \x01(\x02\x12\x15\n\rtoken_flow_id\x18\x02 \x01(\t\x12\x13\n\x0bwait_secret\x18\x03 \x01(\t\"l\n\x15TokenFlowWaitResponse\x12\x10\n\x08token_id\x18\x01 \x01(\t\x12\x14\n\x0ctoken_secret\x18\x02 \x01(\t\x12\x0f\n\x07timeout\x18\x03 \x01(\x08\x12\x1a\n\x12workspace_username\x18\x04 \x01(\t\"\xa8\x01\n\nTunnelData\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x1d\n\x10unencrypted_host\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10unencrypted_port\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x16\n\x0e\x63ontainer_port\x18\x05 \x01(\rB\x13\n\x11_unencrypted_hostB\x13\n\x11_unencrypted_port\"7\n\x12TunnelStartRequest\x12\x0c\n\x04port\x18\x01 \x01(\r\x12\x13\n\x0bunencrypted\x18\x02 \x01(\x08\"\x99\x01\n\x13TunnelStartResponse\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x1d\n\x10unencrypted_host\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10unencrypted_port\x18\x04 \x01(\rH\x01\x88\x01\x01\x42\x13\n\x11_unencrypted_hostB\x13\n\x11_unencrypted_port\"!\n\x11TunnelStopRequest\x12\x0c\n\x04port\x18\x01 \x01(\r\"$\n\x12TunnelStopResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\".\n\x13VolumeCommitRequest\x12\x17\n\tvolume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"+\n\x14VolumeCommitResponse\x12\x13\n\x0bskip_reload\x18\x01 \x01(\x08\"c\n\x16VolumeCopyFilesRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x11\n\tsrc_paths\x18\x02 \x03(\t\x12\x10\n\x08\x64st_path\x18\x03 \x01(\t\x12\x11\n\trecursive\x18\x04 \x01(\x08\"F\n\x13VolumeDeleteRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x1c\n\x10\x65nvironment_name\x18\x02 \x01(\tB\x02\x18\x01\"S\n\x14VolumeGetFileRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\r\n\x05start\x18\x03 \x01(\x04\x12\x0b\n\x03len\x18\x04 \x01(\x04\"w\n\x15VolumeGetFileResponse\x12\x0e\n\x04\x64\x61ta\x18\x01 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x02 \x01(\tH\x00\x12\x0c\n\x04size\x18\x03 \x01(\x04\x12\r\n\x05start\x18\x04 \x01(\x04\x12\x0b\n\x03len\x18\x05 \x01(\x04\x42\x0c\n\ndata_oneof\"\x89\x02\n\x18VolumeGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12\x0e\n\x06\x61pp_id\x18\x05 \x01(\t\x12.\n\x07version\x18\x06 \x01(\x0e\x32\x1d.modal.client.VolumeFsVersion\"^\n\x19VolumeGetOrCreateResponse\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12.\n\x07version\x18\x02 \x01(\x0e\x32\x1d.modal.client.VolumeFsVersion\"+\n\x16VolumeHeartbeatRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\"v\n\x16VolumeListFilesRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\trecursive\x18\x04 \x01(\x08\x12\x18\n\x0bmax_entries\x18\x03 \x01(\rH\x00\x88\x01\x01\x42\x0e\n\x0c_max_entries\"C\n\x17VolumeListFilesResponse\x12(\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x17.modal.client.FileEntry\"F\n\x0eVolumeListItem\x12\r\n\x05label\x18\x01 \x01(\t\x12\x11\n\tvolume_id\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\"-\n\x11VolumeListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"[\n\x12VolumeListResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.modal.client.VolumeListItem\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"V\n\x0bVolumeMount\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12 \n\x18\x61llow_background_commits\x18\x03 \x01(\x08\"}\n\x15VolumePutFilesRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12&\n\x05\x66iles\x18\x02 \x03(\x0b\x32\x17.modal.client.MountFile\x12)\n!disallow_overwrite_existing_files\x18\x03 \x01(\x08\"(\n\x13VolumeReloadRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\"S\n\x17VolumeRemoveFileRequest\x12\x17\n\tvolume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\trecursive\x18\x03 \x01(\x08\"<\n\x13VolumeRenameRequest\x12\x17\n\tvolume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xbe\x01\n\x07Warning\x12/\n\x04type\x18\x01 \x01(\x0e\x32!.modal.client.Warning.WarningType\x12\x0f\n\x07message\x18\x02 \x01(\t\"q\n\x0bWarningType\x12\x1c\n\x18WARNING_TYPE_UNSPECIFIED\x10\x00\x12#\n\x1fWARNING_TYPE_CLIENT_DEPRECATION\x10\x01\x12\x1f\n\x1bWARNING_TYPE_RESOURCE_LIMIT\x10\x02\"R\n\nWebUrlInfo\x12\x11\n\ttruncated\x18\x01 \x01(\x08\x12\x1b\n\x0fhas_unique_hash\x18\x02 \x01(\x08\x42\x02\x18\x01\x12\x14\n\x0clabel_stolen\x18\x03 \x01(\x08\"\xc5\x02\n\rWebhookConfig\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.modal.client.WebhookType\x12\x0e\n\x06method\x18\x02 \x01(\t\x12\x18\n\x10requested_suffix\x18\x04 \x01(\t\x12\x32\n\nasync_mode\x18\x05 \x01(\x0e\x32\x1e.modal.client.WebhookAsyncMode\x12\x38\n\x0e\x63ustom_domains\x18\x06 \x03(\x0b\x32 .modal.client.CustomDomainConfig\x12\x17\n\x0fweb_server_port\x18\x07 \x01(\r\x12\"\n\x1aweb_server_startup_timeout\x18\x08 \x01(\x02\x12\x19\n\x11web_endpoint_docs\x18\t \x01(\x08\x12\x1b\n\x13requires_proxy_auth\x18\n \x01(\x08\"K\n\x1bWorkspaceNameLookupResponse\x12\x1a\n\x0eworkspace_name\x18\x01 \x01(\tB\x02\x18\x01\x12\x10\n\x08username\x18\x02 \x01(\t*\x83\x01\n\x13\x41ppDeployVisibility\x12%\n!APP_DEPLOY_VISIBILITY_UNSPECIFIED\x10\x00\x12#\n\x1f\x41PP_DEPLOY_VISIBILITY_WORKSPACE\x10\x01\x12 \n\x1c\x41PP_DEPLOY_VISIBILITY_PUBLIC\x10\x02*\xa1\x02\n\x13\x41ppDisconnectReason\x12%\n!APP_DISCONNECT_REASON_UNSPECIFIED\x10\x00\x12)\n%APP_DISCONNECT_REASON_LOCAL_EXCEPTION\x10\x01\x12,\n(APP_DISCONNECT_REASON_KEYBOARD_INTERRUPT\x10\x02\x12.\n*APP_DISCONNECT_REASON_ENTRYPOINT_COMPLETED\x10\x03\x12.\n*APP_DISCONNECT_REASON_DEPLOYMENT_EXCEPTION\x10\x04\x12*\n&APP_DISCONNECT_REASON_REMOTE_EXCEPTION\x10\x05*\x91\x02\n\x08\x41ppState\x12\x19\n\x15\x41PP_STATE_UNSPECIFIED\x10\x00\x12\x17\n\x13\x41PP_STATE_EPHEMERAL\x10\x01\x12\x16\n\x12\x41PP_STATE_DETACHED\x10\x02\x12\x16\n\x12\x41PP_STATE_DEPLOYED\x10\x03\x12\x16\n\x12\x41PP_STATE_STOPPING\x10\x04\x12\x15\n\x11\x41PP_STATE_STOPPED\x10\x05\x12\x1a\n\x16\x41PP_STATE_INITIALIZING\x10\x06\x12\x16\n\x12\x41PP_STATE_DISABLED\x10\x07\x12#\n\x1f\x41PP_STATE_DETACHED_DISCONNECTED\x10\x08\x12\x19\n\x11\x41PP_STATE_DERIVED\x10\t\x1a\x02\x08\x01*\x85\x01\n\rAppStopSource\x12\x1f\n\x1b\x41PP_STOP_SOURCE_UNSPECIFIED\x10\x00\x12\x17\n\x13\x41PP_STOP_SOURCE_CLI\x10\x01\x12!\n\x1d\x41PP_STOP_SOURCE_PYTHON_CLIENT\x10\x02\x12\x17\n\x13\x41PP_STOP_SOURCE_WEB\x10\x03*\x91\x01\n\x11\x43\x65rtificateStatus\x12\x1e\n\x1a\x43\x45RTIFICATE_STATUS_PENDING\x10\x00\x12\x1d\n\x19\x43\x45RTIFICATE_STATUS_ISSUED\x10\x01\x12\x1d\n\x19\x43\x45RTIFICATE_STATUS_FAILED\x10\x02\x12\x1e\n\x1a\x43\x45RTIFICATE_STATUS_REVOKED\x10\x03*\xb1\x01\n\x10\x43heckpointStatus\x12!\n\x1d\x43HECKPOINT_STATUS_UNSPECIFIED\x10\x00\x12\x1d\n\x19\x43HECKPOINT_STATUS_PENDING\x10\x01\x12 \n\x1c\x43HECKPOINT_STATUS_PROCESSING\x10\x02\x12\x1b\n\x17\x43HECKPOINT_STATUS_READY\x10\x03\x12\x1c\n\x18\x43HECKPOINT_STATUS_FAILED\x10\x04*\x90\x01\n\nClientType\x12\x1b\n\x17\x43LIENT_TYPE_UNSPECIFIED\x10\x00\x12\x16\n\x12\x43LIENT_TYPE_CLIENT\x10\x01\x12\x16\n\x12\x43LIENT_TYPE_WORKER\x10\x02\x12\x19\n\x15\x43LIENT_TYPE_CONTAINER\x10\x03\x12\x1a\n\x16\x43LIENT_TYPE_WEB_SERVER\x10\x05*\xa8\x01\n\rCloudProvider\x12\x1e\n\x1a\x43LOUD_PROVIDER_UNSPECIFIED\x10\x00\x12\x16\n\x12\x43LOUD_PROVIDER_AWS\x10\x01\x12\x16\n\x12\x43LOUD_PROVIDER_GCP\x10\x02\x12\x17\n\x13\x43LOUD_PROVIDER_AUTO\x10\x03\x12\x16\n\x12\x43LOUD_PROVIDER_OCI\x10\x04\"\x04\x08\x05\x10\x05\"\x04\x08\x06\x10\x06\"\x04\x08\x07\x10\x07\"\x04\x08\x08\x10\x08*Z\n\rDNSRecordType\x12\x15\n\x11\x44NS_RECORD_TYPE_A\x10\x00\x12\x17\n\x13\x44NS_RECORD_TYPE_TXT\x10\x01\x12\x19\n\x15\x44NS_RECORD_TYPE_CNAME\x10\x02*w\n\nDataFormat\x12\x1b\n\x17\x44\x41TA_FORMAT_UNSPECIFIED\x10\x00\x12\x16\n\x12\x44\x41TA_FORMAT_PICKLE\x10\x01\x12\x14\n\x10\x44\x41TA_FORMAT_ASGI\x10\x02\x12\x1e\n\x1a\x44\x41TA_FORMAT_GENERATOR_DONE\x10\x03*\x80\x01\n\x13\x44\x65ploymentNamespace\x12$\n DEPLOYMENT_NAMESPACE_UNSPECIFIED\x10\x00\x12\"\n\x1e\x44\x45PLOYMENT_NAMESPACE_WORKSPACE\x10\x01\x12\x1f\n\x1b\x44\x45PLOYMENT_NAMESPACE_GLOBAL\x10\x03*\x92\x01\n\x10\x45xecOutputOption\x12\"\n\x1e\x45XEC_OUTPUT_OPTION_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x45XEC_OUTPUT_OPTION_DEVNULL\x10\x01\x12\x1b\n\x17\x45XEC_OUTPUT_OPTION_PIPE\x10\x02\x12\x1d\n\x19\x45XEC_OUTPUT_OPTION_STDOUT\x10\x03*\x83\x01\n\x0e\x46ileDescriptor\x12\x1f\n\x1b\x46ILE_DESCRIPTOR_UNSPECIFIED\x10\x00\x12\x1a\n\x16\x46ILE_DESCRIPTOR_STDOUT\x10\x01\x12\x1a\n\x16\x46ILE_DESCRIPTOR_STDERR\x10\x02\x12\x18\n\x14\x46ILE_DESCRIPTOR_INFO\x10\x03*\xfb\x01\n\x1a\x46unctionCallInvocationType\x12-\n)FUNCTION_CALL_INVOCATION_TYPE_UNSPECIFIED\x10\x00\x12-\n)FUNCTION_CALL_INVOCATION_TYPE_SYNC_LEGACY\x10\x01\x12.\n*FUNCTION_CALL_INVOCATION_TYPE_ASYNC_LEGACY\x10\x02\x12\'\n#FUNCTION_CALL_INVOCATION_TYPE_ASYNC\x10\x03\x12&\n\"FUNCTION_CALL_INVOCATION_TYPE_SYNC\x10\x04*p\n\x10\x46unctionCallType\x12\"\n\x1e\x46UNCTION_CALL_TYPE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x46UNCTION_CALL_TYPE_UNARY\x10\x01\x12\x1a\n\x16\x46UNCTION_CALL_TYPE_MAP\x10\x02*\xce\x01\n\x07GPUType\x12\x18\n\x14GPU_TYPE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bGPU_TYPE_T4\x10\x01\x12\x11\n\rGPU_TYPE_A100\x10\x02\x12\x11\n\rGPU_TYPE_A10G\x10\x03\x12\x10\n\x0cGPU_TYPE_ANY\x10\x04\x12\x16\n\x12GPU_TYPE_A100_80GB\x10\x08\x12\x0f\n\x0bGPU_TYPE_L4\x10\t\x12\x11\n\rGPU_TYPE_H100\x10\n\x12\x11\n\rGPU_TYPE_L40S\x10\x0b\x12\x11\n\rGPU_TYPE_H200\x10\x0c*\xa0\x02\n\x12ObjectCreationType\x12$\n OBJECT_CREATION_TYPE_UNSPECIFIED\x10\x00\x12*\n&OBJECT_CREATION_TYPE_CREATE_IF_MISSING\x10\x01\x12.\n*OBJECT_CREATION_TYPE_CREATE_FAIL_IF_EXISTS\x10\x02\x12\x33\n/OBJECT_CREATION_TYPE_CREATE_OVERWRITE_IF_EXISTS\x10\x03\x12/\n+OBJECT_CREATION_TYPE_ANONYMOUS_OWNED_BY_APP\x10\x04\x12\"\n\x1eOBJECT_CREATION_TYPE_EPHEMERAL\x10\x05*V\n\rParameterType\x12\x1a\n\x16PARAM_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11PARAM_TYPE_STRING\x10\x01\x12\x12\n\x0ePARAM_TYPE_INT\x10\x02*>\n\x0cProgressType\x12\x19\n\x15IMAGE_SNAPSHOT_UPLOAD\x10\x00\x12\x13\n\x0f\x46UNCTION_QUEUED\x10\x01*\xa9\x01\n\rProxyIpStatus\x12\x1f\n\x1bPROXY_IP_STATUS_UNSPECIFIED\x10\x00\x12\x1c\n\x18PROXY_IP_STATUS_CREATING\x10\x01\x12\x1a\n\x16PROXY_IP_STATUS_ONLINE\x10\x02\x12\x1e\n\x1aPROXY_IP_STATUS_TERMINATED\x10\x03\x12\x1d\n\x19PROXY_IP_STATUS_UNHEALTHY\x10\x04*T\n\tProxyType\x12\x1a\n\x16PROXY_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11PROXY_TYPE_LEGACY\x10\x01\x12\x14\n\x10PROXY_TYPE_VPROX\x10\x02*x\n\x11RateLimitInterval\x12#\n\x1fRATE_LIMIT_INTERVAL_UNSPECIFIED\x10\x00\x12\x1e\n\x1aRATE_LIMIT_INTERVAL_SECOND\x10\x01\x12\x1e\n\x1aRATE_LIMIT_INTERVAL_MINUTE\x10\x02*\xb2\x01\n\x10RegistryAuthType\x12\"\n\x1eREGISTRY_AUTH_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16REGISTRY_AUTH_TYPE_AWS\x10\x01\x12\x1a\n\x16REGISTRY_AUTH_TYPE_GCP\x10\x02\x12\x1d\n\x19REGISTRY_AUTH_TYPE_PUBLIC\x10\x03\x12#\n\x1fREGISTRY_AUTH_TYPE_STATIC_CREDS\x10\x04*6\n\nSeekWhence\x12\x0c\n\x08SEEK_SET\x10\x00\x12\x0c\n\x08SEEK_CUR\x10\x01\x12\x0c\n\x08SEEK_END\x10\x02*\xa8\x03\n\x0fSystemErrorCode\x12!\n\x1dSYSTEM_ERROR_CODE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SYSTEM_ERROR_CODE_PERM\x10\x01\x12\x1b\n\x17SYSTEM_ERROR_CODE_NOENT\x10\x02\x12\x18\n\x14SYSTEM_ERROR_CODE_IO\x10\x05\x12\x1a\n\x16SYSTEM_ERROR_CODE_NXIO\x10\x06\x12\x1b\n\x17SYSTEM_ERROR_CODE_NOMEM\x10\x0c\x12\x1b\n\x17SYSTEM_ERROR_CODE_ACCES\x10\r\x12\x1b\n\x17SYSTEM_ERROR_CODE_EXIST\x10\x11\x12\x1c\n\x18SYSTEM_ERROR_CODE_NOTDIR\x10\x14\x12\x1b\n\x17SYSTEM_ERROR_CODE_ISDIR\x10\x15\x12\x1b\n\x17SYSTEM_ERROR_CODE_INVAL\x10\x16\x12\x1b\n\x17SYSTEM_ERROR_CODE_MFILE\x10\x18\x12\x1a\n\x16SYSTEM_ERROR_CODE_FBIG\x10\x1b\x12\x1b\n\x17SYSTEM_ERROR_CODE_NOSPC\x10\x1c*\xdc\x02\n\tTaskState\x12\x1a\n\x16TASK_STATE_UNSPECIFIED\x10\x00\x12\x16\n\x12TASK_STATE_CREATED\x10\x06\x12\x15\n\x11TASK_STATE_QUEUED\x10\x01\x12\x1e\n\x1aTASK_STATE_WORKER_ASSIGNED\x10\x02\x12\x1c\n\x18TASK_STATE_LOADING_IMAGE\x10\x03\x12\x15\n\x11TASK_STATE_ACTIVE\x10\x04\x12\x18\n\x14TASK_STATE_COMPLETED\x10\x05\x12!\n\x1dTASK_STATE_CREATING_CONTAINER\x10\x07\x12\x13\n\x0fTASK_STATE_IDLE\x10\x08\x12\x1a\n\x16TASK_STATE_PREEMPTIBLE\x10\t\x12\x18\n\x14TASK_STATE_PREEMPTED\x10\n\x12\'\n#TASK_STATE_LOADING_CHECKPOINT_IMAGE\x10\x0b*h\n\x0fVolumeFsVersion\x12!\n\x1dVOLUME_FS_VERSION_UNSPECIFIED\x10\x00\x12\x18\n\x14VOLUME_FS_VERSION_V1\x10\x01\x12\x18\n\x14VOLUME_FS_VERSION_V2\x10\x02*\x9a\x01\n\x10WebhookAsyncMode\x12\"\n\x1eWEBHOOK_ASYNC_MODE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bWEBHOOK_ASYNC_MODE_DISABLED\x10\x02\x12\x1e\n\x1aWEBHOOK_ASYNC_MODE_TRIGGER\x10\x03\x12\x1b\n\x17WEBHOOK_ASYNC_MODE_AUTO\x10\x04\"\x04\x08\x01\x10\x01*\x99\x01\n\x0bWebhookType\x12\x1c\n\x18WEBHOOK_TYPE_UNSPECIFIED\x10\x00\x12\x19\n\x15WEBHOOK_TYPE_ASGI_APP\x10\x01\x12\x19\n\x15WEBHOOK_TYPE_FUNCTION\x10\x02\x12\x19\n\x15WEBHOOK_TYPE_WSGI_APP\x10\x03\x12\x1b\n\x17WEBHOOK_TYPE_WEB_SERVER\x10\x04\x32\x84\x62\n\x0bModalClient\x12W\n\x13\x41ppClientDisconnect\x12(.modal.client.AppClientDisconnectRequest\x1a\x16.google.protobuf.Empty\x12L\n\tAppCreate\x12\x1e.modal.client.AppCreateRequest\x1a\x1f.modal.client.AppCreateResponse\x12L\n\tAppDeploy\x12\x1e.modal.client.AppDeployRequest\x1a\x1f.modal.client.AppDeployResponse\x12m\n\x14\x41ppDeploymentHistory\x12).modal.client.AppDeploymentHistoryRequest\x1a*.modal.client.AppDeploymentHistoryResponse\x12s\n\x16\x41ppGetByDeploymentName\x12+.modal.client.AppGetByDeploymentNameRequest\x1a,.modal.client.AppGetByDeploymentNameResponse\x12U\n\x0c\x41ppGetLayout\x12!.modal.client.AppGetLayoutRequest\x1a\".modal.client.AppGetLayoutResponse\x12L\n\nAppGetLogs\x12\x1f.modal.client.AppGetLogsRequest\x1a\x1b.modal.client.TaskLogsBatch0\x01\x12X\n\rAppGetObjects\x12\".modal.client.AppGetObjectsRequest\x1a#.modal.client.AppGetObjectsResponse\x12[\n\x0e\x41ppGetOrCreate\x12#.modal.client.AppGetOrCreateRequest\x1a$.modal.client.AppGetOrCreateResponse\x12I\n\x0c\x41ppHeartbeat\x12!.modal.client.AppHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12\x46\n\x07\x41ppList\x12\x1c.modal.client.AppListRequest\x1a\x1d.modal.client.AppListResponse\x12L\n\tAppLookup\x12\x1e.modal.client.AppLookupRequest\x1a\x1f.modal.client.AppLookupResponse\x12O\n\nAppPublish\x12\x1f.modal.client.AppPublishRequest\x1a .modal.client.AppPublishResponse\x12G\n\x0b\x41ppRollback\x12 .modal.client.AppRollbackRequest\x1a\x16.google.protobuf.Empty\x12K\n\rAppSetObjects\x12\".modal.client.AppSetObjectsRequest\x1a\x16.google.protobuf.Empty\x12?\n\x07\x41ppStop\x12\x1c.modal.client.AppStopRequest\x1a\x16.google.protobuf.Empty\x12O\n\nBlobCreate\x12\x1f.modal.client.BlobCreateRequest\x1a .modal.client.BlobCreateResponse\x12\x46\n\x07\x42lobGet\x12\x1c.modal.client.BlobGetRequest\x1a\x1d.modal.client.BlobGetResponse\x12R\n\x0b\x43lassCreate\x12 .modal.client.ClassCreateRequest\x1a!.modal.client.ClassCreateResponse\x12I\n\x08\x43lassGet\x12\x1d.modal.client.ClassGetRequest\x1a\x1e.modal.client.ClassGetResponse\x12H\n\x0b\x43lientHello\x12\x16.google.protobuf.Empty\x1a!.modal.client.ClientHelloResponse\x12W\n\x13\x43ontainerCheckpoint\x12(.modal.client.ContainerCheckpointRequest\x1a\x16.google.protobuf.Empty\x12X\n\rContainerExec\x12\".modal.client.ContainerExecRequest\x1a#.modal.client.ContainerExecResponse\x12i\n\x16\x43ontainerExecGetOutput\x12+.modal.client.ContainerExecGetOutputRequest\x1a .modal.client.RuntimeOutputBatch0\x01\x12[\n\x15\x43ontainerExecPutInput\x12*.modal.client.ContainerExecPutInputRequest\x1a\x16.google.protobuf.Empty\x12\x64\n\x11\x43ontainerExecWait\x12&.modal.client.ContainerExecWaitRequest\x1a\'.modal.client.ContainerExecWaitResponse\x12v\n\x17\x43ontainerFilesystemExec\x12,.modal.client.ContainerFilesystemExecRequest\x1a-.modal.client.ContainerFilesystemExecResponse\x12\x87\x01\n ContainerFilesystemExecGetOutput\x12\x35.modal.client.ContainerFilesystemExecGetOutputRequest\x1a*.modal.client.FilesystemRuntimeOutputBatch0\x01\x12g\n\x12\x43ontainerHeartbeat\x12\'.modal.client.ContainerHeartbeatRequest\x1a(.modal.client.ContainerHeartbeatResponse\x12@\n\x0e\x43ontainerHello\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\x12I\n\x0c\x43ontainerLog\x12!.modal.client.ContainerLogRequest\x1a\x16.google.protobuf.Empty\x12X\n\rContainerStop\x12\".modal.client.ContainerStopRequest\x1a#.modal.client.ContainerStopResponse\x12\x43\n\tDictClear\x12\x1e.modal.client.DictClearRequest\x1a\x16.google.protobuf.Empty\x12U\n\x0c\x44ictContains\x12!.modal.client.DictContainsRequest\x1a\".modal.client.DictContainsResponse\x12L\n\x0c\x44ictContents\x12!.modal.client.DictContentsRequest\x1a\x17.modal.client.DictEntry0\x01\x12\x45\n\nDictDelete\x12\x1f.modal.client.DictDeleteRequest\x1a\x16.google.protobuf.Empty\x12\x46\n\x07\x44ictGet\x12\x1c.modal.client.DictGetRequest\x1a\x1d.modal.client.DictGetResponse\x12^\n\x0f\x44ictGetOrCreate\x12$.modal.client.DictGetOrCreateRequest\x1a%.modal.client.DictGetOrCreateResponse\x12K\n\rDictHeartbeat\x12\".modal.client.DictHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12\x46\n\x07\x44ictLen\x12\x1c.modal.client.DictLenRequest\x1a\x1d.modal.client.DictLenResponse\x12I\n\x08\x44ictList\x12\x1d.modal.client.DictListRequest\x1a\x1e.modal.client.DictListResponse\x12\x46\n\x07\x44ictPop\x12\x1c.modal.client.DictPopRequest\x1a\x1d.modal.client.DictPopResponse\x12O\n\nDictUpdate\x12\x1f.modal.client.DictUpdateRequest\x1a .modal.client.DictUpdateResponse\x12v\n\x17\x44omainCertificateVerify\x12,.modal.client.DomainCertificateVerifyRequest\x1a-.modal.client.DomainCertificateVerifyResponse\x12U\n\x0c\x44omainCreate\x12!.modal.client.DomainCreateRequest\x1a\".modal.client.DomainCreateResponse\x12O\n\nDomainList\x12\x1f.modal.client.DomainListRequest\x1a .modal.client.DomainListResponse\x12S\n\x11\x45nvironmentCreate\x12&.modal.client.EnvironmentCreateRequest\x1a\x16.google.protobuf.Empty\x12S\n\x11\x45nvironmentDelete\x12&.modal.client.EnvironmentDeleteRequest\x1a\x16.google.protobuf.Empty\x12s\n\x16\x45nvironmentGetOrCreate\x12+.modal.client.EnvironmentGetOrCreateRequest\x1a,.modal.client.EnvironmentGetOrCreateResponse\x12P\n\x0f\x45nvironmentList\x12\x16.google.protobuf.Empty\x1a%.modal.client.EnvironmentListResponse\x12^\n\x11\x45nvironmentUpdate\x12&.modal.client.EnvironmentUpdateRequest\x1a!.modal.client.EnvironmentListItem\x12j\n\x13\x46unctionAsyncInvoke\x12(.modal.client.FunctionAsyncInvokeRequest\x1a).modal.client.FunctionAsyncInvokeResponse\x12g\n\x12\x46unctionBindParams\x12\'.modal.client.FunctionBindParamsRequest\x1a(.modal.client.FunctionBindParamsResponse\x12U\n\x12\x46unctionCallCancel\x12\'.modal.client.FunctionCallCancelRequest\x1a\x16.google.protobuf.Empty\x12\\\n\x15\x46unctionCallGetDataIn\x12(.modal.client.FunctionCallGetDataRequest\x1a\x17.modal.client.DataChunk0\x01\x12]\n\x16\x46unctionCallGetDataOut\x12(.modal.client.FunctionCallGetDataRequest\x1a\x17.modal.client.DataChunk0\x01\x12\x61\n\x10\x46unctionCallList\x12%.modal.client.FunctionCallListRequest\x1a&.modal.client.FunctionCallListResponse\x12Z\n\x16\x46unctionCallPutDataOut\x12(.modal.client.FunctionCallPutDataRequest\x1a\x16.google.protobuf.Empty\x12[\n\x0e\x46unctionCreate\x12#.modal.client.FunctionCreateRequest\x1a$.modal.client.FunctionCreateResponse\x12R\n\x0b\x46unctionGet\x12 .modal.client.FunctionGetRequest\x1a!.modal.client.FunctionGetResponse\x12m\n\x14\x46unctionGetCallGraph\x12).modal.client.FunctionGetCallGraphRequest\x1a*.modal.client.FunctionGetCallGraphResponse\x12\x64\n\x17\x46unctionGetCurrentStats\x12,.modal.client.FunctionGetCurrentStatsRequest\x1a\x1b.modal.client.FunctionStats\x12\x88\x01\n\x1d\x46unctionGetDynamicConcurrency\x12\x32.modal.client.FunctionGetDynamicConcurrencyRequest\x1a\x33.modal.client.FunctionGetDynamicConcurrencyResponse\x12\x64\n\x11\x46unctionGetInputs\x12&.modal.client.FunctionGetInputsRequest\x1a\'.modal.client.FunctionGetInputsResponse\x12g\n\x12\x46unctionGetOutputs\x12\'.modal.client.FunctionGetOutputsRequest\x1a(.modal.client.FunctionGetOutputsResponse\x12p\n\x15\x46unctionGetSerialized\x12*.modal.client.FunctionGetSerializedRequest\x1a+.modal.client.FunctionGetSerializedResponse\x12R\n\x0b\x46unctionMap\x12 .modal.client.FunctionMapRequest\x1a!.modal.client.FunctionMapResponse\x12\x64\n\x11\x46unctionPrecreate\x12&.modal.client.FunctionPrecreateRequest\x1a\'.modal.client.FunctionPrecreateResponse\x12\x64\n\x11\x46unctionPutInputs\x12&.modal.client.FunctionPutInputsRequest\x1a\'.modal.client.FunctionPutInputsResponse\x12U\n\x12\x46unctionPutOutputs\x12\'.modal.client.FunctionPutOutputsRequest\x1a\x16.google.protobuf.Empty\x12j\n\x13\x46unctionRetryInputs\x12(.modal.client.FunctionRetryInputsRequest\x1a).modal.client.FunctionRetryInputsResponse\x12G\n\x15\x46unctionStartPtyShell\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\x12\x8b\x01\n\x1e\x46unctionUpdateSchedulingParams\x12\x33.modal.client.FunctionUpdateSchedulingParamsRequest\x1a\x34.modal.client.FunctionUpdateSchedulingParamsResponse\x12R\n\x0bImageFromId\x12 .modal.client.ImageFromIdRequest\x1a!.modal.client.ImageFromIdResponse\x12\x61\n\x10ImageGetOrCreate\x12%.modal.client.ImageGetOrCreateRequest\x1a&.modal.client.ImageGetOrCreateResponse\x12i\n\x12ImageJoinStreaming\x12\'.modal.client.ImageJoinStreamingRequest\x1a(.modal.client.ImageJoinStreamingResponse0\x01\x12\x61\n\x10MountGetOrCreate\x12%.modal.client.MountGetOrCreateRequest\x1a&.modal.client.MountGetOrCreateResponse\x12U\n\x0cMountPutFile\x12!.modal.client.MountPutFileRequest\x1a\".modal.client.MountPutFileResponse\x12i\n\x1cNotebookKernelPublishResults\x12\x31.modal.client.NotebookKernelPublishResultsRequest\x1a\x16.google.protobuf.Empty\x12R\n\x0bProxyCreate\x12 .modal.client.ProxyCreateRequest\x1a!.modal.client.ProxyCreateResponse\x12G\n\x0bProxyDelete\x12 .modal.client.ProxyDeleteRequest\x1a\x16.google.protobuf.Empty\x12I\n\x08ProxyGet\x12\x1d.modal.client.ProxyGetRequest\x1a\x1e.modal.client.ProxyGetResponse\x12\x61\n\x10ProxyGetOrCreate\x12%.modal.client.ProxyGetOrCreateRequest\x1a&.modal.client.ProxyGetOrCreateResponse\x12\x44\n\tProxyList\x12\x16.google.protobuf.Empty\x1a\x1f.modal.client.ProxyListResponse\x12\x45\n\nQueueClear\x12\x1f.modal.client.QueueClearRequest\x1a\x16.google.protobuf.Empty\x12G\n\x0bQueueDelete\x12 .modal.client.QueueDeleteRequest\x1a\x16.google.protobuf.Empty\x12I\n\x08QueueGet\x12\x1d.modal.client.QueueGetRequest\x1a\x1e.modal.client.QueueGetResponse\x12\x61\n\x10QueueGetOrCreate\x12%.modal.client.QueueGetOrCreateRequest\x1a&.modal.client.QueueGetOrCreateResponse\x12M\n\x0eQueueHeartbeat\x12#.modal.client.QueueHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12I\n\x08QueueLen\x12\x1d.modal.client.QueueLenRequest\x1a\x1e.modal.client.QueueLenResponse\x12L\n\tQueueList\x12\x1e.modal.client.QueueListRequest\x1a\x1f.modal.client.QueueListResponse\x12[\n\x0eQueueNextItems\x12#.modal.client.QueueNextItemsRequest\x1a$.modal.client.QueueNextItemsResponse\x12\x41\n\x08QueuePut\x12\x1d.modal.client.QueuePutRequest\x1a\x16.google.protobuf.Empty\x12X\n\rSandboxCreate\x12\".modal.client.SandboxCreateRequest\x1a#.modal.client.SandboxCreateResponse\x12T\n\x0eSandboxGetLogs\x12#.modal.client.SandboxGetLogsRequest\x1a\x1b.modal.client.TaskLogsBatch0\x01\x12\x61\n\x10SandboxGetTaskId\x12%.modal.client.SandboxGetTaskIdRequest\x1a&.modal.client.SandboxGetTaskIdResponse\x12\x64\n\x11SandboxGetTunnels\x12&.modal.client.SandboxGetTunnelsRequest\x1a\'.modal.client.SandboxGetTunnelsResponse\x12R\n\x0bSandboxList\x12 .modal.client.SandboxListRequest\x1a!.modal.client.SandboxListResponse\x12[\n\x0eSandboxRestore\x12#.modal.client.SandboxRestoreRequest\x1a$.modal.client.SandboxRestoreResponse\x12^\n\x0fSandboxSnapshot\x12$.modal.client.SandboxSnapshotRequest\x1a%.modal.client.SandboxSnapshotResponse\x12\x64\n\x11SandboxSnapshotFs\x12&.modal.client.SandboxSnapshotFsRequest\x1a\'.modal.client.SandboxSnapshotFsResponse\x12j\n\x13SandboxSnapshotWait\x12(.modal.client.SandboxSnapshotWaitRequest\x1a).modal.client.SandboxSnapshotWaitResponse\x12\x64\n\x11SandboxStdinWrite\x12&.modal.client.SandboxStdinWriteRequest\x1a\'.modal.client.SandboxStdinWriteResponse\x12M\n\x0eSandboxTagsSet\x12#.modal.client.SandboxTagsSetRequest\x1a\x16.google.protobuf.Empty\x12\x61\n\x10SandboxTerminate\x12%.modal.client.SandboxTerminateRequest\x1a&.modal.client.SandboxTerminateResponse\x12R\n\x0bSandboxWait\x12 .modal.client.SandboxWaitRequest\x1a!.modal.client.SandboxWaitResponse\x12I\n\x0cSecretDelete\x12!.modal.client.SecretDeleteRequest\x1a\x16.google.protobuf.Empty\x12\x64\n\x11SecretGetOrCreate\x12&.modal.client.SecretGetOrCreateRequest\x1a\'.modal.client.SecretGetOrCreateResponse\x12O\n\nSecretList\x12\x1f.modal.client.SecretListRequest\x1a .modal.client.SecretListResponse\x12U\n\x12SharedVolumeDelete\x12\'.modal.client.SharedVolumeDeleteRequest\x1a\x16.google.protobuf.Empty\x12j\n\x13SharedVolumeGetFile\x12(.modal.client.SharedVolumeGetFileRequest\x1a).modal.client.SharedVolumeGetFileResponse\x12v\n\x17SharedVolumeGetOrCreate\x12,.modal.client.SharedVolumeGetOrCreateRequest\x1a-.modal.client.SharedVolumeGetOrCreateResponse\x12[\n\x15SharedVolumeHeartbeat\x12*.modal.client.SharedVolumeHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12\x61\n\x10SharedVolumeList\x12%.modal.client.SharedVolumeListRequest\x1a&.modal.client.SharedVolumeListResponse\x12p\n\x15SharedVolumeListFiles\x12*.modal.client.SharedVolumeListFilesRequest\x1a+.modal.client.SharedVolumeListFilesResponse\x12x\n\x1bSharedVolumeListFilesStream\x12*.modal.client.SharedVolumeListFilesRequest\x1a+.modal.client.SharedVolumeListFilesResponse0\x01\x12j\n\x13SharedVolumePutFile\x12(.modal.client.SharedVolumePutFileRequest\x1a).modal.client.SharedVolumePutFileResponse\x12]\n\x16SharedVolumeRemoveFile\x12+.modal.client.SharedVolumeRemoveFileRequest\x1a\x16.google.protobuf.Empty\x12\x61\n\x10TaskClusterHello\x12%.modal.client.TaskClusterHelloRequest\x1a&.modal.client.TaskClusterHelloResponse\x12T\n\x11TaskCurrentInputs\x12\x16.google.protobuf.Empty\x1a\'.modal.client.TaskCurrentInputsResponse\x12I\n\x08TaskList\x12\x1d.modal.client.TaskListRequest\x1a\x1e.modal.client.TaskListResponse\x12\x45\n\nTaskResult\x12\x1f.modal.client.TaskResultRequest\x1a\x16.google.protobuf.Empty\x12^\n\x0fTokenFlowCreate\x12$.modal.client.TokenFlowCreateRequest\x1a%.modal.client.TokenFlowCreateResponse\x12X\n\rTokenFlowWait\x12\".modal.client.TokenFlowWaitRequest\x1a#.modal.client.TokenFlowWaitResponse\x12R\n\x0bTunnelStart\x12 .modal.client.TunnelStartRequest\x1a!.modal.client.TunnelStartResponse\x12O\n\nTunnelStop\x12\x1f.modal.client.TunnelStopRequest\x1a .modal.client.TunnelStopResponse\x12U\n\x0cVolumeCommit\x12!.modal.client.VolumeCommitRequest\x1a\".modal.client.VolumeCommitResponse\x12O\n\x0fVolumeCopyFiles\x12$.modal.client.VolumeCopyFilesRequest\x1a\x16.google.protobuf.Empty\x12I\n\x0cVolumeDelete\x12!.modal.client.VolumeDeleteRequest\x1a\x16.google.protobuf.Empty\x12X\n\rVolumeGetFile\x12\".modal.client.VolumeGetFileRequest\x1a#.modal.client.VolumeGetFileResponse\x12\x64\n\x11VolumeGetOrCreate\x12&.modal.client.VolumeGetOrCreateRequest\x1a\'.modal.client.VolumeGetOrCreateResponse\x12O\n\x0fVolumeHeartbeat\x12$.modal.client.VolumeHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12O\n\nVolumeList\x12\x1f.modal.client.VolumeListRequest\x1a .modal.client.VolumeListResponse\x12`\n\x0fVolumeListFiles\x12$.modal.client.VolumeListFilesRequest\x1a%.modal.client.VolumeListFilesResponse0\x01\x12M\n\x0eVolumePutFiles\x12#.modal.client.VolumePutFilesRequest\x1a\x16.google.protobuf.Empty\x12I\n\x0cVolumeReload\x12!.modal.client.VolumeReloadRequest\x1a\x16.google.protobuf.Empty\x12Q\n\x10VolumeRemoveFile\x12%.modal.client.VolumeRemoveFileRequest\x1a\x16.google.protobuf.Empty\x12I\n\x0cVolumeRename\x12!.modal.client.VolumeRenameRequest\x1a\x16.google.protobuf.Empty\x12X\n\x13WorkspaceNameLookup\x12\x16.google.protobuf.Empty\x1a).modal.client.WorkspaceNameLookupResponseb\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15modal_proto/api.proto\x12\x0cmodal.client\x1a\x19modal_proto/options.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1egoogle/protobuf/wrappers.proto\"r\n\x1a\x41ppClientDisconnectRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x31\n\x06reason\x18\x02 \x01(\x0e\x32!.modal.client.AppDisconnectReason\x12\x11\n\texception\x18\x03 \x01(\t\"\x85\x01\n\x10\x41ppCreateRequest\x12\x17\n\tclient_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x05 \x01(\t\x12)\n\tapp_state\x18\x06 \x01(\x0e\x32\x16.modal.client.AppState\"O\n\x11\x41ppCreateResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x14\n\x0c\x61pp_page_url\x18\x02 \x01(\t\x12\x14\n\x0c\x61pp_logs_url\x18\x03 \x01(\t\"\xc7\x01\n\x10\x41ppDeployRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x15\n\robject_entity\x18\x04 \x01(\t\x12\x35\n\nvisibility\x18\x05 \x01(\x0e\x32!.modal.client.AppDeployVisibility\x12\x0b\n\x03tag\x18\x06 \x01(\t\" \n\x11\x41ppDeployResponse\x12\x0b\n\x03url\x18\x01 \x01(\t\"\xda\x01\n\x14\x41ppDeploymentHistory\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\r\x12\x16\n\x0e\x63lient_version\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65ployed_at\x18\x04 \x01(\x01\x12\x13\n\x0b\x64\x65ployed_by\x18\x05 \x01(\t\x12\x1e\n\x16\x64\x65ployed_by_avatar_url\x18\t \x01(\t\x12\x0b\n\x03tag\x18\x06 \x01(\t\x12\x18\n\x10rollback_version\x18\x07 \x01(\r\x12\x18\n\x10rollback_allowed\x18\x08 \x01(\x08\"-\n\x1b\x41ppDeploymentHistoryRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"d\n\x1c\x41ppDeploymentHistoryResponse\x12\x44\n\x18\x61pp_deployment_histories\x18\x01 \x03(\x0b\x32\".modal.client.AppDeploymentHistory\"}\n\x1d\x41ppGetByDeploymentNameRequest\x12\x34\n\tnamespace\x18\x01 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"0\n\x1e\x41ppGetByDeploymentNameResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"%\n\x13\x41ppGetLayoutRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"C\n\x14\x41ppGetLayoutResponse\x12+\n\napp_layout\x18\x01 \x01(\x0b\x32\x17.modal.client.AppLayout\"\xba\x01\n\x11\x41ppGetLogsRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x04 \x01(\t\x12\x13\n\x0b\x66unction_id\x18\x05 \x01(\t\x12\x10\n\x08input_id\x18\x06 \x01(\t\x12\x0f\n\x07task_id\x18\x07 \x01(\t\x12\x35\n\x0f\x66ile_descriptor\x18\x08 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\"F\n\x11\x41ppGetObjectsItem\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12$\n\x06object\x18\x06 \x01(\x0b\x32\x14.modal.client.Object\"^\n\x14\x41ppGetObjectsRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x19\n\x11include_unindexed\x18\x02 \x01(\x08\x12\x1b\n\x13only_class_function\x18\x03 \x01(\x08\"G\n\x15\x41ppGetObjectsResponse\x12.\n\x05items\x18\x02 \x03(\x0b\x32\x1f.modal.client.AppGetObjectsItem\"\x83\x01\n\x15\x41ppGetOrCreateRequest\x12\x10\n\x08\x61pp_name\x18\x01 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\x12>\n\x14object_creation_type\x18\x03 \x01(\x0e\x32 .modal.client.ObjectCreationType\"(\n\x16\x41ppGetOrCreateResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"%\n\x13\x41ppHeartbeatRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"\x91\x02\n\tAppLayout\x12%\n\x07objects\x18\x01 \x03(\x0b\x32\x14.modal.client.Object\x12>\n\x0c\x66unction_ids\x18\x02 \x03(\x0b\x32(.modal.client.AppLayout.FunctionIdsEntry\x12\x38\n\tclass_ids\x18\x03 \x03(\x0b\x32%.modal.client.AppLayout.ClassIdsEntry\x1a\x32\n\x10\x46unctionIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rClassIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"*\n\x0e\x41ppListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"\xf5\x01\n\x0f\x41ppListResponse\x12\x37\n\x04\x61pps\x18\x01 \x03(\x0b\x32).modal.client.AppListResponse.AppListItem\x1a\xa8\x01\n\x0b\x41ppListItem\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12%\n\x05state\x18\x04 \x01(\x0e\x32\x16.modal.client.AppState\x12\x12\n\ncreated_at\x18\x05 \x01(\x01\x12\x12\n\nstopped_at\x18\x06 \x01(\x01\x12\x17\n\x0fn_running_tasks\x18\x08 \x01(\x05\x12\x0c\n\x04name\x18\n \x01(\t\">\n\x10\x41ppLookupRequest\x12\x10\n\x08\x61pp_name\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\"#\n\x11\x41ppLookupResponse\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\"\x9d\x04\n\x11\x41ppPublishRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x16\n\x0e\x64\x65ployment_tag\x18\x03 \x01(\t\x12)\n\tapp_state\x18\x04 \x01(\x0e\x32\x16.modal.client.AppState\x12\x46\n\x0c\x66unction_ids\x18\x05 \x03(\x0b\x32\x30.modal.client.AppPublishRequest.FunctionIdsEntry\x12@\n\tclass_ids\x18\x06 \x03(\x0b\x32-.modal.client.AppPublishRequest.ClassIdsEntry\x12J\n\x0e\x64\x65\x66inition_ids\x18\x07 \x03(\x0b\x32\x32.modal.client.AppPublishRequest.DefinitionIdsEntry\x12\x18\n\x10rollback_version\x18\x08 \x01(\r\x12\x16\n\x0e\x63lient_version\x18\t \x01(\t\x1a\x32\n\x10\x46unctionIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rClassIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x34\n\x12\x44\x65\x66initionIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"Q\n\x12\x41ppPublishResponse\x12\x0b\n\x03url\x18\x01 \x01(\t\x12.\n\x0fserver_warnings\x18\x03 \x03(\x0b\x32\x15.modal.client.Warning\"5\n\x12\x41ppRollbackRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\x05\"\x9b\x02\n\x14\x41ppSetObjectsRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12T\n\x12indexed_object_ids\x18\x02 \x03(\x0b\x32\x38.modal.client.AppSetObjectsRequest.IndexedObjectIdsEntry\x12\x11\n\tclient_id\x18\x03 \x01(\t\x12\x1c\n\x14unindexed_object_ids\x18\x04 \x03(\t\x12-\n\rnew_app_state\x18\x05 \x01(\x0e\x32\x16.modal.client.AppState\x1a\x37\n\x15IndexedObjectIdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01J\x04\x08\x06\x10\x07\"S\n\x0e\x41ppStopRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12+\n\x06source\x18\x02 \x01(\x0e\x32\x1b.modal.client.AppStopSource\"\xa3\x0e\n\x04\x41sgi\x12\'\n\x04http\x18\x01 \x01(\x0b\x32\x17.modal.client.Asgi.HttpH\x00\x12\x36\n\x0chttp_request\x18\x02 \x01(\x0b\x32\x1e.modal.client.Asgi.HttpRequestH\x00\x12\x43\n\x13http_response_start\x18\x03 \x01(\x0b\x32$.modal.client.Asgi.HttpResponseStartH\x00\x12\x41\n\x12http_response_body\x18\x04 \x01(\x0b\x32#.modal.client.Asgi.HttpResponseBodyH\x00\x12I\n\x16http_response_trailers\x18\x05 \x01(\x0b\x32\'.modal.client.Asgi.HttpResponseTrailersH\x00\x12<\n\x0fhttp_disconnect\x18\x06 \x01(\x0b\x32!.modal.client.Asgi.HttpDisconnectH\x00\x12\x31\n\twebsocket\x18\x07 \x01(\x0b\x32\x1c.modal.client.Asgi.WebsocketH\x00\x12@\n\x11websocket_connect\x18\x08 \x01(\x0b\x32#.modal.client.Asgi.WebsocketConnectH\x00\x12>\n\x10websocket_accept\x18\t \x01(\x0b\x32\".modal.client.Asgi.WebsocketAcceptH\x00\x12@\n\x11websocket_receive\x18\n \x01(\x0b\x32#.modal.client.Asgi.WebsocketReceiveH\x00\x12:\n\x0ewebsocket_send\x18\x0b \x01(\x0b\x32 .modal.client.Asgi.WebsocketSendH\x00\x12\x46\n\x14websocket_disconnect\x18\x0c \x01(\x0b\x32&.modal.client.Asgi.WebsocketDisconnectH\x00\x12<\n\x0fwebsocket_close\x18\r \x01(\x0b\x32!.modal.client.Asgi.WebsocketCloseH\x00\x1a\xc5\x01\n\x04Http\x12\x14\n\x0chttp_version\x18\x01 \x01(\t\x12\x0e\n\x06method\x18\x02 \x01(\t\x12\x0e\n\x06scheme\x18\x03 \x01(\t\x12\x0c\n\x04path\x18\x04 \x01(\t\x12\x14\n\x0cquery_string\x18\x05 \x01(\x0c\x12\x0f\n\x07headers\x18\x06 \x03(\x0c\x12\x18\n\x0b\x63lient_host\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x63lient_port\x18\x08 \x01(\rH\x01\x88\x01\x01\x42\x0e\n\x0c_client_hostB\x0e\n\x0c_client_port\x1a.\n\x0bHttpRequest\x12\x0c\n\x04\x62ody\x18\x01 \x01(\x0c\x12\x11\n\tmore_body\x18\x02 \x01(\x08\x1a\x46\n\x11HttpResponseStart\x12\x0e\n\x06status\x18\x01 \x01(\r\x12\x0f\n\x07headers\x18\x02 \x03(\x0c\x12\x10\n\x08trailers\x18\x03 \x01(\x08\x1a\x33\n\x10HttpResponseBody\x12\x0c\n\x04\x62ody\x18\x01 \x01(\x0c\x12\x11\n\tmore_body\x18\x02 \x01(\x08\x1a>\n\x14HttpResponseTrailers\x12\x0f\n\x07headers\x18\x01 \x03(\x0c\x12\x15\n\rmore_trailers\x18\x02 \x01(\x08\x1a\x10\n\x0eHttpDisconnect\x1a\xd0\x01\n\tWebsocket\x12\x14\n\x0chttp_version\x18\x01 \x01(\t\x12\x0e\n\x06scheme\x18\x02 \x01(\t\x12\x0c\n\x04path\x18\x03 \x01(\t\x12\x14\n\x0cquery_string\x18\x04 \x01(\x0c\x12\x0f\n\x07headers\x18\x05 \x03(\x0c\x12\x18\n\x0b\x63lient_host\x18\x06 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x63lient_port\x18\x07 \x01(\rH\x01\x88\x01\x01\x12\x14\n\x0csubprotocols\x18\x08 \x03(\tB\x0e\n\x0c_client_hostB\x0e\n\x0c_client_port\x1a\x12\n\x10WebsocketConnect\x1aL\n\x0fWebsocketAccept\x12\x18\n\x0bsubprotocol\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x07headers\x18\x02 \x03(\x0c\x42\x0e\n\x0c_subprotocol\x1a>\n\x10WebsocketReceive\x12\x0f\n\x05\x62ytes\x18\x01 \x01(\x0cH\x00\x12\x0e\n\x04text\x18\x02 \x01(\tH\x00\x42\t\n\x07\x63ontent\x1a;\n\rWebsocketSend\x12\x0f\n\x05\x62ytes\x18\x01 \x01(\x0cH\x00\x12\x0e\n\x04text\x18\x02 \x01(\tH\x00\x42\t\n\x07\x63ontent\x1a\x31\n\x13WebsocketDisconnect\x12\x11\n\x04\x63ode\x18\x01 \x01(\rH\x00\x88\x01\x01\x42\x07\n\x05_code\x1a<\n\x0eWebsocketClose\x12\x11\n\x04\x63ode\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x0e\n\x06reason\x18\x02 \x01(\tB\x07\n\x05_codeB\x06\n\x04type\"7\n\tBaseImage\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12\x12\n\ndocker_tag\x18\x02 \x01(\tJ\x04\x08\x04\x10\x05\"_\n\x11\x42lobCreateRequest\x12\x13\n\x0b\x63ontent_md5\x18\x01 \x01(\t\x12\x1d\n\x15\x63ontent_sha256_base64\x18\x02 \x01(\t\x12\x16\n\x0e\x63ontent_length\x18\x03 \x01(\x03\"\x84\x01\n\x12\x42lobCreateResponse\x12\x0f\n\x07\x62lob_id\x18\x02 \x01(\t\x12\x14\n\nupload_url\x18\x01 \x01(\tH\x00\x12\x32\n\tmultipart\x18\x03 \x01(\x0b\x32\x1d.modal.client.MultiPartUploadH\x00\x42\x13\n\x11upload_type_oneof\"!\n\x0e\x42lobGetRequest\x12\x0f\n\x07\x62lob_id\x18\x01 \x01(\t\"\'\n\x0f\x42lobGetResponse\x12\x14\n\x0c\x64ownload_url\x18\x01 \x01(\t\"`\n\rBuildFunction\x12\x12\n\ndefinition\x18\x01 \x01(\t\x12\x0f\n\x07globals\x18\x02 \x01(\x0c\x12*\n\x05input\x18\x03 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"C\n\x10\x43\x61ncelInputEvent\x12\x11\n\tinput_ids\x18\x01 \x03(\t\x12\x1c\n\x14terminate_containers\x18\x02 \x01(\x08\"\xe8\x01\n\x0e\x43heckpointInfo\x12\x10\n\x08\x63hecksum\x18\x01 \x01(\t\x12.\n\x06status\x18\x02 \x01(\x0e\x32\x1e.modal.client.CheckpointStatus\x12\x15\n\rcheckpoint_id\x18\x03 \x01(\t\x12\x1b\n\x13runtime_fingerprint\x18\x04 \x01(\t\x12\x0c\n\x04size\x18\x05 \x01(\x03\x12\x1e\n\x16\x63hecksum_is_file_index\x18\x06 \x01(\x08\x12\x18\n\x10original_task_id\x18\x07 \x01(\t\x12\x18\n\x10snapshot_version\x18\x08 \x01(\r\"\x94\x01\n\x12\x43lassCreateRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x19\n\x11\x65xisting_class_id\x18\x02 \x01(\t\x12*\n\x07methods\x18\x03 \x03(\x0b\x32\x19.modal.client.ClassMethod\x12\x1b\n\x13only_class_function\x18\x05 \x01(\x08J\x04\x08\x04\x10\x05\"c\n\x13\x43lassCreateResponse\x12\x10\n\x08\x63lass_id\x18\x01 \x01(\t\x12:\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32!.modal.client.ClassHandleMetadata\"\xd6\x01\n\x0f\x43lassGetRequest\x12\x10\n\x08\x61pp_name\x18\x01 \x01(\t\x12\x12\n\nobject_tag\x18\x02 \x01(\t\x12\x34\n\tnamespace\x18\x03 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\x12\x18\n\x10lookup_published\x18\x08 \x01(\x08\x12\x16\n\x0eworkspace_name\x18\t \x01(\t\x12\x1b\n\x13only_class_function\x18\n \x01(\x08\"\x90\x01\n\x10\x43lassGetResponse\x12\x10\n\x08\x63lass_id\x18\x01 \x01(\t\x12:\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32!.modal.client.ClassHandleMetadata\x12.\n\x0fserver_warnings\x18\x03 \x03(\x0b\x32\x15.modal.client.Warning\"\xa3\x01\n\x13\x43lassHandleMetadata\x12*\n\x07methods\x18\x01 \x03(\x0b\x32\x19.modal.client.ClassMethod\x12\x19\n\x11\x63lass_function_id\x18\x02 \x01(\t\x12\x45\n\x17\x63lass_function_metadata\x18\x03 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"\x81\x01\n\x0b\x43lassMethod\x12\x15\n\rfunction_name\x18\x01 \x01(\t\x12\x13\n\x0b\x66unction_id\x18\x02 \x01(\t\x12\x46\n\x18\x66unction_handle_metadata\x18\x03 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"\xaf\x02\n\x12\x43lassParameterInfo\x12M\n\x06\x66ormat\x18\x01 \x01(\x0e\x32=.modal.client.ClassParameterInfo.ParameterSerializationFormat\x12\x30\n\x06schema\x18\x02 \x03(\x0b\x32 .modal.client.ClassParameterSpec\"\x97\x01\n\x1cParameterSerializationFormat\x12*\n&PARAM_SERIALIZATION_FORMAT_UNSPECIFIED\x10\x00\x12%\n!PARAM_SERIALIZATION_FORMAT_PICKLE\x10\x01\x12$\n PARAM_SERIALIZATION_FORMAT_PROTO\x10\x02\"J\n\x11\x43lassParameterSet\x12\x35\n\nparameters\x18\x01 \x03(\x0b\x32!.modal.client.ClassParameterValue\"\xa4\x01\n\x12\x43lassParameterSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12)\n\x04type\x18\x02 \x01(\x0e\x32\x1b.modal.client.ParameterType\x12\x13\n\x0bhas_default\x18\x03 \x01(\x08\x12\x18\n\x0estring_default\x18\x04 \x01(\tH\x00\x12\x15\n\x0bint_default\x18\x05 \x01(\x03H\x00\x42\x0f\n\rdefault_oneof\"\x8a\x01\n\x13\x43lassParameterValue\x12\x0c\n\x04name\x18\x01 \x01(\t\x12)\n\x04type\x18\x02 \x01(\x0e\x32\x1b.modal.client.ParameterType\x12\x16\n\x0cstring_value\x18\x03 \x01(\tH\x00\x12\x13\n\tint_value\x18\x04 \x01(\x03H\x00\x42\r\n\x0bvalue_oneof\"u\n\x13\x43lientHelloResponse\x12\x0f\n\x07warning\x18\x01 \x01(\t\x12\x1d\n\x15image_builder_version\x18\x02 \x01(\t\x12.\n\x0fserver_warnings\x18\x04 \x03(\x0b\x32\x15.modal.client.Warning\"\xdf\x02\n\x10\x43loudBucketMount\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12\x1d\n\x15\x63redentials_secret_id\x18\x03 \x01(\t\x12\x11\n\tread_only\x18\x04 \x01(\x08\x12>\n\x0b\x62ucket_type\x18\x05 \x01(\x0e\x32).modal.client.CloudBucketMount.BucketType\x12\x16\n\x0erequester_pays\x18\x06 \x01(\x08\x12 \n\x13\x62ucket_endpoint_url\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x17\n\nkey_prefix\x18\x08 \x01(\tH\x01\x88\x01\x01\"6\n\nBucketType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x06\n\x02S3\x10\x01\x12\x06\n\x02R2\x10\x02\x12\x07\n\x03GCP\x10\x03\x42\x16\n\x14_bucket_endpoint_urlB\r\n\x0b_key_prefix\"\xcc\x03\n\x12\x43ontainerArguments\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x13\n\x0b\x66unction_id\x18\x02 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x04 \x01(\t\x12,\n\x0c\x66unction_def\x18\x07 \x01(\x0b\x32\x16.modal.client.Function\x12+\n\nproxy_info\x18\x08 \x01(\x0b\x32\x17.modal.client.ProxyInfo\x12M\n\x0ftracing_context\x18\t \x03(\x0b\x32\x34.modal.client.ContainerArguments.TracingContextEntry\x12\x19\n\x11serialized_params\x18\n \x01(\x0c\x12\x0f\n\x07runtime\x18\x0b \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\r \x01(\t\x12\x1a\n\rcheckpoint_id\x18\x0e \x01(\tH\x00\x88\x01\x01\x12+\n\napp_layout\x18\x0f \x01(\x0b\x32\x17.modal.client.AppLayout\x1a\x35\n\x13TracingContextEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x10\n\x0e_checkpoint_id\"3\n\x1a\x43ontainerCheckpointRequest\x12\x15\n\rcheckpoint_id\x18\x01 \x01(\t\"\xa9\x01\n\x1d\x43ontainerExecGetOutputRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\x12\x18\n\x10last_batch_index\x18\x03 \x01(\x04\x12\x35\n\x0f\x66ile_descriptor\x18\x04 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x15\n\rget_raw_bytes\x18\x05 \x01(\x08\"a\n\x1c\x43ontainerExecPutInputRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x30\n\x05input\x18\x02 \x01(\x0b\x32!.modal.client.RuntimeInputMessage\"\xd7\x02\n\x14\x43ontainerExecRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x63ommand\x18\x02 \x03(\t\x12\'\n\x08pty_info\x18\x03 \x01(\x0b\x32\x15.modal.client.PTYInfo\x12#\n\x1bterminate_container_on_exit\x18\x04 \x01(\x08\x12\x15\n\rruntime_debug\x18\x05 \x01(\x08\x12\x35\n\rstdout_output\x18\x06 \x01(\x0e\x32\x1e.modal.client.ExecOutputOption\x12\x35\n\rstderr_output\x18\x07 \x01(\x0e\x32\x1e.modal.client.ExecOutputOption\x12\x14\n\x0ctimeout_secs\x18\x08 \x01(\r\x12\x14\n\x07workdir\x18\t \x01(\tH\x00\x88\x01\x01\x12\x12\n\nsecret_ids\x18\n \x03(\tB\n\n\x08_workdir\"(\n\x15\x43ontainerExecResponse\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\"<\n\x18\x43ontainerExecWaitRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"T\n\x19\x43ontainerExecWaitResponse\x12\x16\n\texit_code\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x11\n\tcompleted\x18\x02 \x01(\x08\x42\x0c\n\n_exit_code\"4\n\x19\x43ontainerFileCloseRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\"\x9a\x01\n\x1f\x43ontainerFileDeleteBytesRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x1c\n\x0fstart_inclusive\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x1a\n\rend_exclusive\x18\x03 \x01(\rH\x01\x88\x01\x01\x42\x12\n\x10_start_inclusiveB\x10\n\x0e_end_exclusive\"4\n\x19\x43ontainerFileFlushRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\"&\n\x16\x43ontainerFileLsRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\"?\n\x19\x43ontainerFileMkdirRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x14\n\x0cmake_parents\x18\x02 \x01(\x08\"h\n\x18\x43ontainerFileOpenRequest\x12\x1c\n\x0f\x66ile_descriptor\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x0c\n\x04mode\x18\x03 \x01(\tB\x12\n\x10_file_descriptor\"7\n\x1c\x43ontainerFileReadLineRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\"I\n\x18\x43ontainerFileReadRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0e\n\x01n\x18\x02 \x01(\rH\x00\x88\x01\x01\x42\x04\n\x02_n\"9\n\x16\x43ontainerFileRmRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x11\n\trecursive\x18\x02 \x01(\x08\"m\n\x18\x43ontainerFileSeekRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\x05\x12(\n\x06whence\x18\x03 \x01(\x0e\x32\x18.modal.client.SeekWhence\"h\n\x19\x43ontainerFileWatchRequest\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x11\n\trecursive\x18\x02 \x01(\x08\x12\x19\n\x0ctimeout_secs\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x0f\n\r_timeout_secs\"\xae\x01\n%ContainerFileWriteReplaceBytesRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x12\x1c\n\x0fstart_inclusive\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x1a\n\rend_exclusive\x18\x04 \x01(\rH\x01\x88\x01\x01\x42\x12\n\x10_start_inclusiveB\x10\n\x0e_end_exclusive\"B\n\x19\x43ontainerFileWriteRequest\x12\x17\n\x0f\x66ile_descriptor\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"K\n\'ContainerFilesystemExecGetOutputRequest\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"\x83\x08\n\x1e\x43ontainerFilesystemExecRequest\x12\x43\n\x11\x66ile_open_request\x18\x01 \x01(\x0b\x32&.modal.client.ContainerFileOpenRequestH\x00\x12\x45\n\x12\x66ile_write_request\x18\x02 \x01(\x0b\x32\'.modal.client.ContainerFileWriteRequestH\x00\x12\x43\n\x11\x66ile_read_request\x18\x03 \x01(\x0b\x32&.modal.client.ContainerFileReadRequestH\x00\x12\x45\n\x12\x66ile_flush_request\x18\x04 \x01(\x0b\x32\'.modal.client.ContainerFileFlushRequestH\x00\x12L\n\x16\x66ile_read_line_request\x18\x05 \x01(\x0b\x32*.modal.client.ContainerFileReadLineRequestH\x00\x12\x43\n\x11\x66ile_seek_request\x18\x06 \x01(\x0b\x32&.modal.client.ContainerFileSeekRequestH\x00\x12R\n\x19\x66ile_delete_bytes_request\x18\x07 \x01(\x0b\x32-.modal.client.ContainerFileDeleteBytesRequestH\x00\x12_\n file_write_replace_bytes_request\x18\x08 \x01(\x0b\x32\x33.modal.client.ContainerFileWriteReplaceBytesRequestH\x00\x12\x45\n\x12\x66ile_close_request\x18\t \x01(\x0b\x32\'.modal.client.ContainerFileCloseRequestH\x00\x12?\n\x0f\x66ile_ls_request\x18\x0b \x01(\x0b\x32$.modal.client.ContainerFileLsRequestH\x00\x12\x45\n\x12\x66ile_mkdir_request\x18\x0c \x01(\x0b\x32\'.modal.client.ContainerFileMkdirRequestH\x00\x12?\n\x0f\x66ile_rm_request\x18\r \x01(\x0b\x32$.modal.client.ContainerFileRmRequestH\x00\x12\x45\n\x12\x66ile_watch_request\x18\x0e \x01(\x0b\x32\'.modal.client.ContainerFileWatchRequestH\x00\x12\x0f\n\x07task_id\x18\n \x01(\tB\x19\n\x17\x66ile_exec_request_oneof\"d\n\x1f\x43ontainerFilesystemExecResponse\x12\x0f\n\x07\x65xec_id\x18\x01 \x01(\t\x12\x1c\n\x0f\x66ile_descriptor\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_file_descriptor\"\x80\x01\n\x19\x43ontainerHeartbeatRequest\x12&\n\x1e\x63\x61nceled_inputs_return_outputs\x18\x04 \x01(\x08\x12)\n!canceled_inputs_return_outputs_v2\x18\x05 \x01(\x08J\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03J\x04\x08\x03\x10\x04\"t\n\x1a\x43ontainerHeartbeatResponse\x12?\n\x12\x63\x61ncel_input_event\x18\x01 \x01(\x0b\x32\x1e.modal.client.CancelInputEventH\x00\x88\x01\x01\x42\x15\n\x13_cancel_input_event\";\n\x13\x43ontainerLogRequest\x12$\n\x04logs\x18\x03 \x03(\x0b\x32\x16.modal.client.TaskLogs\"-\n\x14\x43ontainerStopRequest\x12\x15\n\x07task_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"\x17\n\x15\x43ontainerStopResponse\"\"\n\x12\x43ustomDomainConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1f\n\x10\x43ustomDomainInfo\x12\x0b\n\x03url\x18\x01 \x01(\t\"S\n\tDNSRecord\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.modal.client.DNSRecordType\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\"\x7f\n\tDataChunk\x12-\n\x0b\x64\x61ta_format\x18\x01 \x01(\x0e\x32\x18.modal.client.DataFormat\x12\x0e\n\x04\x64\x61ta\x18\x02 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x03 \x01(\tH\x00\x12\r\n\x05index\x18\x04 \x01(\x04\x42\x0c\n\ndata_oneof\"#\n\x10\x44ictClearRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"3\n\x13\x44ictContainsRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0b\n\x03key\x18\x02 \x01(\x0c\"%\n\x14\x44ictContainsResponse\x12\r\n\x05\x66ound\x18\x01 \x01(\x08\"D\n\x13\x44ictContentsRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0c\n\x04keys\x18\x02 \x01(\x08\x12\x0e\n\x06values\x18\x03 \x01(\x08\"$\n\x11\x44ictDeleteRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"\'\n\tDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\x0c\x12\r\n\x05value\x18\x02 \x01(\x0c\"\xee\x01\n\x16\x44ictGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12%\n\x04\x64\x61ta\x18\x05 \x03(\x0b\x32\x17.modal.client.DictEntry\"*\n\x17\x44ictGetOrCreateResponse\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\".\n\x0e\x44ictGetRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0b\n\x03key\x18\x02 \x01(\x0c\">\n\x0f\x44ictGetResponse\x12\r\n\x05\x66ound\x18\x01 \x01(\x08\x12\x12\n\x05value\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x42\x08\n\x06_value\"\'\n\x14\x44ictHeartbeatRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"!\n\x0e\x44ictLenRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\"\x1e\n\x0f\x44ictLenResponse\x12\x0b\n\x03len\x18\x01 \x01(\x05\"+\n\x0f\x44ictListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"x\n\x10\x44ictListResponse\x12\x36\n\x05\x64icts\x18\x01 \x03(\x0b\x32\'.modal.client.DictListResponse.DictInfo\x1a,\n\x08\x44ictInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\".\n\x0e\x44ictPopRequest\x12\x0f\n\x07\x64ict_id\x18\x01 \x01(\t\x12\x0b\n\x03key\x18\x02 \x01(\x0c\">\n\x0f\x44ictPopResponse\x12\r\n\x05\x66ound\x18\x01 \x01(\x08\x12\x12\n\x05value\x18\x02 \x01(\x0cH\x00\x88\x01\x01\x42\x08\n\x06_value\"T\n\x11\x44ictUpdateRequest\x12\x15\n\x07\x64ict_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12(\n\x07updates\x18\x02 \x03(\x0b\x32\x17.modal.client.DictEntry\"\x14\n\x12\x44ictUpdateResponse\"\xaf\x01\n\x06\x44omain\x12\x11\n\tdomain_id\x18\x01 \x01(\t\x12\x13\n\x0b\x64omain_name\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12;\n\x12\x63\x65rtificate_status\x18\x04 \x01(\x0e\x32\x1f.modal.client.CertificateStatus\x12,\n\x0b\x64ns_records\x18\x05 \x03(\x0b\x32\x17.modal.client.DNSRecord\"3\n\x1e\x44omainCertificateVerifyRequest\x12\x11\n\tdomain_id\x18\x01 \x01(\t\"G\n\x1f\x44omainCertificateVerifyResponse\x12$\n\x06\x64omain\x18\x01 \x01(\x0b\x32\x14.modal.client.Domain\"0\n\x13\x44omainCreateRequest\x12\x19\n\x0b\x64omain_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"W\n\x14\x44omainCreateResponse\x12\x11\n\tdomain_id\x18\x01 \x01(\t\x12,\n\x0b\x64ns_records\x18\x02 \x03(\x0b\x32\x17.modal.client.DNSRecord\"\x13\n\x11\x44omainListRequest\";\n\x12\x44omainListResponse\x12%\n\x07\x64omains\x18\x01 \x03(\x0b\x32\x14.modal.client.Domain\".\n\x18\x45nvironmentCreateRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\".\n\x18\x45nvironmentDeleteRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"~\n\x1d\x45nvironmentGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12>\n\x14object_creation_type\x18\x02 \x01(\x0e\x32 .modal.client.ObjectCreationType\"m\n\x1e\x45nvironmentGetOrCreateResponse\x12\x16\n\x0e\x65nvironment_id\x18\x01 \x01(\t\x12\x33\n\x08metadata\x18\x02 \x01(\x0b\x32!.modal.client.EnvironmentMetadata\"`\n\x13\x45nvironmentListItem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x16\n\x0ewebhook_suffix\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\x0f\n\x07\x64\x65\x66\x61ult\x18\x04 \x01(\x08\"K\n\x17\x45nvironmentListResponse\x12\x30\n\x05items\x18\x02 \x03(\x0b\x32!.modal.client.EnvironmentListItem\"X\n\x13\x45nvironmentMetadata\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x33\n\x08settings\x18\x02 \x01(\x0b\x32!.modal.client.EnvironmentSettings\"L\n\x13\x45nvironmentSettings\x12\x1d\n\x15image_builder_version\x18\x01 \x01(\t\x12\x16\n\x0ewebhook_suffix\x18\x02 \x01(\t\"\x94\x01\n\x18\x45nvironmentUpdateRequest\x12\x1a\n\x0c\x63urrent_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12*\n\x04name\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nweb_suffix\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa9\x01\n\tFileEntry\x12\x0c\n\x04path\x18\x01 \x01(\t\x12.\n\x04type\x18\x02 \x01(\x0e\x32 .modal.client.FileEntry.FileType\x12\r\n\x05mtime\x18\x03 \x01(\x04\x12\x0c\n\x04size\x18\x04 \x01(\x04\"A\n\x08\x46ileType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x08\n\x04\x46ILE\x10\x01\x12\r\n\tDIRECTORY\x10\x02\x12\x0b\n\x07SYMLINK\x10\x03\"\x90\x01\n\x1c\x46ilesystemRuntimeOutputBatch\x12\x0e\n\x06output\x18\x01 \x03(\x0c\x12\x34\n\x05\x65rror\x18\x02 \x01(\x0b\x32 .modal.client.SystemErrorMessageH\x00\x88\x01\x01\x12\x13\n\x0b\x62\x61tch_index\x18\x03 \x01(\x04\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\x42\x08\n\x06_error\"\xa3\x15\n\x08\x46unction\x12\x13\n\x0bmodule_name\x18\x01 \x01(\t\x12\x15\n\rfunction_name\x18\x02 \x01(\t\x12\x11\n\tmount_ids\x18\x03 \x03(\t\x12\x10\n\x08image_id\x18\x04 \x01(\t\x12\x1b\n\x13\x66unction_serialized\x18\x06 \x01(\x0c\x12>\n\x0f\x64\x65\x66inition_type\x18\x07 \x01(\x0e\x32%.modal.client.Function.DefinitionType\x12:\n\rfunction_type\x18\x08 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12*\n\tresources\x18\t \x01(\x0b\x32\x17.modal.client.Resources\x12\x12\n\nsecret_ids\x18\n \x03(\t\x12+\n\nrate_limit\x18\x0b \x01(\x0b\x32\x17.modal.client.RateLimit\x12\x33\n\x0ewebhook_config\x18\x0f \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12=\n\x14shared_volume_mounts\x18\x10 \x03(\x0b\x32\x1f.modal.client.SharedVolumeMount\x12\x15\n\x08proxy_id\x18\x11 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x0cretry_policy\x18\x12 \x01(\x0b\x32!.modal.client.FunctionRetryPolicy\x12\x19\n\x11\x63oncurrency_limit\x18\x13 \x01(\r\x12\x14\n\x0ctimeout_secs\x18\x15 \x01(\r\x12\'\n\x08pty_info\x18\x16 \x01(\x0b\x32\x15.modal.client.PTYInfo\x12\x18\n\x10\x63lass_serialized\x18\x17 \x01(\x0c\x12\x1e\n\x16task_idle_timeout_secs\x18\x19 \x01(\r\x12\x38\n\x0e\x63loud_provider\x18\x1a \x01(\x0e\x32\x1b.modal.client.CloudProviderH\x01\x88\x01\x01\x12\x16\n\x0ewarm_pool_size\x18\x1b \x01(\r\x12\x0f\n\x07web_url\x18\x1c \x01(\t\x12.\n\x0cweb_url_info\x18\x1d \x01(\x0b\x32\x18.modal.client.WebUrlInfo\x12\x0f\n\x07runtime\x18\x1e \x01(\t\x12\x10\n\x08\x61pp_name\x18\x1f \x01(\t\x12\x30\n\rvolume_mounts\x18! \x03(\x0b\x32\x19.modal.client.VolumeMount\x12 \n\x18target_concurrent_inputs\x18\" \x01(\r\x12:\n\x12\x63ustom_domain_info\x18# \x03(\x0b\x32\x1e.modal.client.CustomDomainInfo\x12\x11\n\tworker_id\x18$ \x01(\t\x12\x15\n\rruntime_debug\x18% \x01(\x08\x12\x1b\n\x13is_builder_function\x18 \x01(\x08\x12\x18\n\x10is_auto_snapshot\x18& \x01(\x08\x12\x11\n\tis_method\x18\' \x01(\x08\x12!\n\x19is_checkpointing_function\x18( \x01(\x08\x12\x1d\n\x15\x63heckpointing_enabled\x18) \x01(\x08\x12\x30\n\ncheckpoint\x18* \x01(\x0b\x32\x1c.modal.client.CheckpointInfo\x12;\n\x13object_dependencies\x18+ \x03(\x0b\x32\x1e.modal.client.ObjectDependency\x12\x15\n\rblock_network\x18, \x01(\x08\x12\x12\n\nmax_inputs\x18. \x01(\r\x12(\n\ts3_mounts\x18/ \x03(\x0b\x32\x15.modal.client.S3Mount\x12;\n\x13\x63loud_bucket_mounts\x18\x33 \x03(\x0b\x32\x1e.modal.client.CloudBucketMount\x12\x42\n\x13scheduler_placement\x18\x32 \x01(\x0b\x32 .modal.client.SchedulerPlacementH\x02\x88\x01\x01\x12\x10\n\x08is_class\x18\x35 \x01(\x08\x12\x17\n\x0fuse_function_id\x18\x36 \x01(\t\x12\x17\n\x0fuse_method_name\x18\x37 \x01(\t\x12>\n\x14\x63lass_parameter_info\x18\x38 \x01(\x0b\x32 .modal.client.ClassParameterInfo\x12\x16\n\x0e\x62\x61tch_max_size\x18< \x01(\r\x12\x17\n\x0f\x62\x61tch_linger_ms\x18= \x01(\x04\x12\x14\n\x0ci6pn_enabled\x18> \x01(\x08\x12.\n&_experimental_concurrent_cancellations\x18? \x01(\x08\x12\x1d\n\x15max_concurrent_inputs\x18@ \x01(\r\x12,\n$_experimental_task_templates_enabled\x18\x41 \x01(\x08\x12@\n\x1c_experimental_task_templates\x18\x42 \x03(\x0b\x32\x1a.modal.client.TaskTemplate\x12 \n\x18_experimental_group_size\x18\x43 \x01(\r\x12\x11\n\tuntrusted\x18\x44 \x01(\x08\x12\'\n\x1f_experimental_buffer_containers\x18\x45 \x01(\r\x12#\n\x16_experimental_proxy_ip\x18\x46 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x13runtime_perf_record\x18G \x01(\x08\x12(\n\x08schedule\x18H \x01(\x0b\x32\x16.modal.client.Schedule\x12\x16\n\x0esnapshot_debug\x18I \x01(\x08\x12I\n\x12method_definitions\x18J \x03(\x0b\x32-.modal.client.Function.MethodDefinitionsEntry\x12\x1e\n\x16method_definitions_set\x18K \x01(\x08\x12$\n\x1c_experimental_custom_scaling\x18L \x01(\x08\x1aX\n\x16MethodDefinitionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.modal.client.MethodDefinition:\x02\x38\x01\"k\n\x0e\x44\x65\x66initionType\x12\x1f\n\x1b\x44\x45\x46INITION_TYPE_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x44\x45\x46INITION_TYPE_SERIALIZED\x10\x01\x12\x18\n\x14\x44\x45\x46INITION_TYPE_FILE\x10\x02\"f\n\x0c\x46unctionType\x12\x1d\n\x19\x46UNCTION_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x46UNCTION_TYPE_GENERATOR\x10\x01\x12\x1a\n\x16\x46UNCTION_TYPE_FUNCTION\x10\x02\x42\x0b\n\t_proxy_idB\x11\n\x0f_cloud_providerB\x16\n\x14_scheduler_placementB\x19\n\x17X_experimental_proxy_ipJ\x04\x08\x14\x10\x15J\x04\x08\x30\x10\x31J\x04\x08\x31\x10\x32J\x04\x08\x34\x10\x35J\x04\x08\x39\x10:J\x04\x08:\x10;J\x04\x08;\x10<\"v\n\x1a\x46unctionAsyncInvokeRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x17\n\x0fparent_input_id\x18\x02 \x01(\t\x12*\n\x05input\x18\x03 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"W\n\x1b\x46unctionAsyncInvokeResponse\x12\x1e\n\x16retry_with_blob_upload\x18\x01 \x01(\x08\x12\x18\n\x10\x66unction_call_id\x18\x02 \x01(\t\"\x9e\x01\n\x19\x46unctionBindParamsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x19\n\x11serialized_params\x18\x02 \x01(\x0c\x12\x37\n\x10\x66unction_options\x18\x03 \x01(\x0b\x32\x1d.modal.client.FunctionOptions\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"v\n\x1a\x46unctionBindParamsResponse\x12\x19\n\x11\x62ound_function_id\x18\x01 \x01(\t\x12=\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"z\n\x19\x46unctionCallCallGraphInfo\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x17\n\x0fparent_input_id\x18\x02 \x01(\t\x12\x15\n\rfunction_name\x18\x03 \x01(\t\x12\x13\n\x0bmodule_name\x18\x04 \x01(\t\"S\n\x19\x46unctionCallCancelRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x1c\n\x14terminate_containers\x18\x02 \x01(\x08\"J\n\x1a\x46unctionCallGetDataRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x12\n\nlast_index\x18\x02 \x01(\x04\"\xc3\x03\n\x10\x46unctionCallInfo\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x0b\n\x03idx\x18\x02 \x01(\x05\x12\x12\n\ncreated_at\x18\x06 \x01(\x01\x12\x14\n\x0cscheduled_at\x18\x07 \x01(\x01\x12\x37\n\x0epending_inputs\x18\x0c \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x36\n\rfailed_inputs\x18\r \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x39\n\x10succeeded_inputs\x18\x0e \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x37\n\x0etimeout_inputs\x18\x0f \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x39\n\x10\x63\x61ncelled_inputs\x18\x10 \x01(\x0b\x32\x1f.modal.client.InputCategoryInfo\x12\x14\n\x0ctotal_inputs\x18\x11 \x01(\x05J\x04\x08\x03\x10\x04J\x04\x08\x04\x10\x05J\x04\x08\x05\x10\x06J\x04\x08\x08\x10\tJ\x04\x08\t\x10\nJ\x04\x08\n\x10\x0bJ\x04\x08\x0b\x10\x0c\".\n\x17\x46unctionCallListRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\"R\n\x18\x46unctionCallListResponse\x12\x36\n\x0e\x66unction_calls\x18\x01 \x03(\x0b\x32\x1e.modal.client.FunctionCallInfo\"d\n\x1a\x46unctionCallPutDataRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12,\n\x0b\x64\x61ta_chunks\x18\x02 \x03(\x0b\x32\x17.modal.client.DataChunk\"\xed\x01\n\x15\x46unctionCreateRequest\x12(\n\x08\x66unction\x18\x01 \x01(\x0b\x32\x16.modal.client.Function\x12\x14\n\x06\x61pp_id\x18\x02 \x01(\tB\x04\x80\xb5\x18\x01\x12,\n\x08schedule\x18\x06 \x01(\x0b\x32\x16.modal.client.ScheduleB\x02\x18\x01\x12\x1c\n\x14\x65xisting_function_id\x18\x07 \x01(\t\x12\x15\n\rdefer_updates\x18\x08 \x01(\x08\x12\x31\n\rfunction_data\x18\t \x01(\x0b\x32\x1a.modal.client.FunctionData\"\xb8\x01\n\x16\x46unctionCreateResponse\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12 \n\x14__deprecated_web_url\x18\x02 \x01(\tB\x02\x18\x01\x12(\n\x08\x66unction\x18\x04 \x01(\x0b\x32\x16.modal.client.Function\x12=\n\x0fhandle_metadata\x18\x05 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"\xbc\t\n\x0c\x46unctionData\x12\x13\n\x0bmodule_name\x18\x01 \x01(\t\x12\x15\n\rfunction_name\x18\x02 \x01(\t\x12:\n\rfunction_type\x18\x03 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x16\n\x0ewarm_pool_size\x18\x04 \x01(\r\x12\x19\n\x11\x63oncurrency_limit\x18\x05 \x01(\r\x12\x1e\n\x16task_idle_timeout_secs\x18\x06 \x01(\r\x12 \n\x18_experimental_group_size\x18\x13 \x01(\r\x12\'\n\x1f_experimental_buffer_containers\x18\x16 \x01(\r\x12$\n\x1c_experimental_custom_scaling\x18\x17 \x01(\x08\x12\x11\n\tworker_id\x18\x07 \x01(\t\x12\x14\n\x0ctimeout_secs\x18\x08 \x01(\r\x12\x0f\n\x07web_url\x18\t \x01(\t\x12.\n\x0cweb_url_info\x18\n \x01(\x0b\x32\x18.modal.client.WebUrlInfo\x12\x33\n\x0ewebhook_config\x18\x0b \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12:\n\x12\x63ustom_domain_info\x18\x0c \x03(\x0b\x32\x1e.modal.client.CustomDomainInfo\x12#\n\x16_experimental_proxy_ip\x18\x18 \x01(\tH\x00\x88\x01\x01\x12M\n\x12method_definitions\x18\x19 \x03(\x0b\x32\x31.modal.client.FunctionData.MethodDefinitionsEntry\x12\x1e\n\x16method_definitions_set\x18\x1a \x01(\x08\x12\x10\n\x08is_class\x18\r \x01(\x08\x12>\n\x14\x63lass_parameter_info\x18\x0e \x01(\x0b\x32 .modal.client.ClassParameterInfo\x12\x11\n\tis_method\x18\x0f \x01(\x08\x12\x17\n\x0fuse_function_id\x18\x10 \x01(\t\x12\x17\n\x0fuse_method_name\x18\x11 \x01(\t\x12\x43\n\x10ranked_functions\x18\x12 \x03(\x0b\x32).modal.client.FunctionData.RankedFunction\x12(\n\x08schedule\x18\x14 \x01(\x0b\x32\x16.modal.client.Schedule\x12\x11\n\tuntrusted\x18\x1b \x01(\x08\x12\x16\n\x0esnapshot_debug\x18\x1c \x01(\x08\x12\x1b\n\x13runtime_perf_record\x18\x1d \x01(\x08\x1aX\n\x16MethodDefinitionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.modal.client.MethodDefinition:\x02\x38\x01\x1aH\n\x0eRankedFunction\x12\x0c\n\x04rank\x18\x01 \x01(\r\x12(\n\x08\x66unction\x18\x02 \x01(\x0b\x32\x16.modal.client.FunctionB\x19\n\x17X_experimental_proxy_ipJ\x04\x08\x15\x10\x16\"\xab\x01\n\x10\x46unctionExtended\x12\x17\n\x0ftype_identifier\x18\x01 \x01(\r\x12\x34\n\x12\x66unction_singleton\x18\x02 \x01(\x0b\x32\x16.modal.client.FunctionH\x00\x12\x33\n\rfunction_data\x18\x03 \x01(\x0b\x32\x1a.modal.client.FunctionDataH\x00\x42\x13\n\x11\x66unction_extended\"7\n\x1b\x46unctionGetCallGraphRequest\x12\x18\n\x10\x66unction_call_id\x18\x02 \x01(\t\"\x91\x01\n\x1c\x46unctionGetCallGraphResponse\x12\x30\n\x06inputs\x18\x01 \x03(\x0b\x32 .modal.client.InputCallGraphInfo\x12?\n\x0e\x66unction_calls\x18\x02 \x03(\x0b\x32\'.modal.client.FunctionCallCallGraphInfo\"5\n\x1e\x46unctionGetCurrentStatsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\"p\n$FunctionGetDynamicConcurrencyRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x1a\n\x12target_concurrency\x18\x02 \x01(\r\x12\x17\n\x0fmax_concurrency\x18\x03 \x01(\r\"<\n%FunctionGetDynamicConcurrencyResponse\x12\x13\n\x0b\x63oncurrency\x18\x01 \x01(\r\"\xdb\x01\n\x15\x46unctionGetInputsItem\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12*\n\x05input\x18\x02 \x01(\x0b\x32\x1b.modal.client.FunctionInput\x12\x13\n\x0bkill_switch\x18\x03 \x01(\x08\x12\x18\n\x10\x66unction_call_id\x18\x05 \x01(\t\x12O\n\x1d\x66unction_call_invocation_type\x18\x06 \x01(\x0e\x32(.modal.client.FunctionCallInvocationTypeJ\x04\x08\x04\x10\x05\"\xb6\x01\n\x18\x46unctionGetInputsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x12\n\nmax_values\x18\x03 \x01(\x05\x12\x19\n\x11\x61verage_call_time\x18\x05 \x01(\x02\x12\x19\n\x11input_concurrency\x18\x06 \x01(\x05\x12\x16\n\x0e\x62\x61tch_max_size\x18\x0b \x01(\r\x12\x17\n\x0f\x62\x61tch_linger_ms\x18\x0c \x01(\x04J\x04\x08\t\x10\nJ\x04\x08\n\x10\x0b\"s\n\x19\x46unctionGetInputsResponse\x12\x33\n\x06inputs\x18\x03 \x03(\x0b\x32#.modal.client.FunctionGetInputsItem\x12!\n\x19rate_limit_sleep_duration\x18\x04 \x01(\x02\"\xd9\x01\n\x16\x46unctionGetOutputsItem\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x0b\n\x03idx\x18\x02 \x01(\x05\x12\x10\n\x08input_id\x18\x03 \x01(\t\x12-\n\x0b\x64\x61ta_format\x18\x05 \x01(\x0e\x32\x18.modal.client.DataFormat\x12\x0f\n\x07task_id\x18\x06 \x01(\t\x12\x18\n\x10input_started_at\x18\x07 \x01(\x01\x12\x19\n\x11output_created_at\x18\x08 \x01(\x01\"\xb5\x01\n\x19\x46unctionGetOutputsRequest\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x12\n\nmax_values\x18\x02 \x01(\x05\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x06 \x01(\t\x12\x18\n\x10\x63lear_on_success\x18\x07 \x01(\x08\x12\x14\n\x0crequested_at\x18\x08 \x01(\x01\x12\x12\n\ninput_jwts\x18\t \x03(\t\"\x97\x01\n\x1a\x46unctionGetOutputsResponse\x12\x0c\n\x04idxs\x18\x03 \x03(\x05\x12\x35\n\x07outputs\x18\x04 \x03(\x0b\x32$.modal.client.FunctionGetOutputsItem\x12\x15\n\rlast_entry_id\x18\x05 \x01(\t\x12\x1d\n\x15num_unfinished_inputs\x18\x06 \x01(\x05\"\x8a\x01\n\x12\x46unctionGetRequest\x12\x10\n\x08\x61pp_name\x18\x01 \x01(\t\x12\x12\n\nobject_tag\x18\x02 \x01(\t\x12\x34\n\tnamespace\x18\x03 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"\x99\x01\n\x13\x46unctionGetResponse\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12=\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\x12.\n\x0fserver_warnings\x18\x04 \x03(\x0b\x32\x15.modal.client.Warning\"3\n\x1c\x46unctionGetSerializedRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\"V\n\x1d\x46unctionGetSerializedResponse\x12\x1b\n\x13\x66unction_serialized\x18\x01 \x01(\x0c\x12\x18\n\x10\x63lass_serialized\x18\x02 \x01(\x0c\"\xdb\x03\n\x16\x46unctionHandleMetadata\x12\x15\n\rfunction_name\x18\x02 \x01(\t\x12:\n\rfunction_type\x18\x08 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x0f\n\x07web_url\x18\x1c \x01(\t\x12\x11\n\tis_method\x18\' \x01(\x08\x12\x17\n\x0fuse_function_id\x18( \x01(\t\x12\x17\n\x0fuse_method_name\x18) \x01(\t\x12\x15\n\rdefinition_id\x18* \x01(\t\x12>\n\x14\x63lass_parameter_info\x18+ \x01(\x0b\x32 .modal.client.ClassParameterInfo\x12^\n\x16method_handle_metadata\x18, \x03(\x0b\x32>.modal.client.FunctionHandleMetadata.MethodHandleMetadataEntry\x1a\x61\n\x19MethodHandleMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x33\n\x05value\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata:\x02\x38\x01\"\xb3\x01\n\rFunctionInput\x12\x0e\n\x04\x61rgs\x18\x01 \x01(\x0cH\x00\x12\x16\n\x0c\x61rgs_blob_id\x18\x07 \x01(\tH\x00\x12\x13\n\x0b\x66inal_input\x18\t \x01(\x08\x12-\n\x0b\x64\x61ta_format\x18\n \x01(\x0e\x32\x18.modal.client.DataFormat\x12\x18\n\x0bmethod_name\x18\x0b \x01(\tH\x01\x88\x01\x01\x42\x0c\n\nargs_oneofB\x0e\n\x0c_method_name\"\xa9\x02\n\x12\x46unctionMapRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x17\n\x0fparent_input_id\x18\x02 \x01(\t\x12\x19\n\x11return_exceptions\x18\x03 \x01(\x08\x12:\n\x12\x66unction_call_type\x18\x04 \x01(\x0e\x32\x1e.modal.client.FunctionCallType\x12=\n\x10pipelined_inputs\x18\x05 \x03(\x0b\x32#.modal.client.FunctionPutInputsItem\x12O\n\x1d\x66unction_call_invocation_type\x18\x06 \x01(\x0e\x32(.modal.client.FunctionCallInvocationType\"\xca\x01\n\x13\x46unctionMapResponse\x12\x18\n\x10\x66unction_call_id\x18\x01 \x01(\t\x12\x45\n\x10pipelined_inputs\x18\x02 \x03(\x0b\x32+.modal.client.FunctionPutInputsResponseItem\x12\x37\n\x0cretry_policy\x18\x03 \x01(\x0b\x32!.modal.client.FunctionRetryPolicy\x12\x19\n\x11\x66unction_call_jwt\x18\x04 \x01(\t\"\xc9\x04\n\x0f\x46unctionOptions\x12\x12\n\nsecret_ids\x18\x01 \x03(\t\x12\x11\n\tmount_ids\x18\x02 \x03(\t\x12/\n\tresources\x18\x03 \x01(\x0b\x32\x17.modal.client.ResourcesH\x00\x88\x01\x01\x12<\n\x0cretry_policy\x18\x04 \x01(\x0b\x32!.modal.client.FunctionRetryPolicyH\x01\x88\x01\x01\x12\x1e\n\x11\x63oncurrency_limit\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x19\n\x0ctimeout_secs\x18\x06 \x01(\rH\x03\x88\x01\x01\x12#\n\x16task_idle_timeout_secs\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x1b\n\x0ewarm_pool_size\x18\x08 \x01(\rH\x05\x88\x01\x01\x12\x30\n\rvolume_mounts\x18\t \x03(\x0b\x32\x19.modal.client.VolumeMount\x12%\n\x18target_concurrent_inputs\x18\n \x01(\rH\x06\x88\x01\x01\x12\x1d\n\x15replace_volume_mounts\x18\x0b \x01(\x08\x12\x1a\n\x12replace_secret_ids\x18\x0c \x01(\x08\x42\x0c\n\n_resourcesB\x0f\n\r_retry_policyB\x14\n\x12_concurrency_limitB\x0f\n\r_timeout_secsB\x19\n\x17_task_idle_timeout_secsB\x11\n\x0f_warm_pool_sizeB\x1b\n\x19_target_concurrent_inputs\"\xbd\x03\n\x18\x46unctionPrecreateRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x1b\n\rfunction_name\x18\x02 \x01(\tB\x04\x80\xb5\x18\x01\x12\x1c\n\x14\x65xisting_function_id\x18\x03 \x01(\t\x12:\n\rfunction_type\x18\x04 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x33\n\x0ewebhook_config\x18\x05 \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12\x17\n\x0fuse_function_id\x18\x06 \x01(\t\x12\x17\n\x0fuse_method_name\x18\x07 \x01(\t\x12Y\n\x12method_definitions\x18\x08 \x03(\x0b\x32=.modal.client.FunctionPrecreateRequest.MethodDefinitionsEntry\x1aX\n\x16MethodDefinitionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.modal.client.MethodDefinition:\x02\x38\x01\"o\n\x19\x46unctionPrecreateResponse\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12=\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32$.modal.client.FunctionHandleMetadata\"P\n\x15\x46unctionPutInputsItem\x12\x0b\n\x03idx\x18\x01 \x01(\x05\x12*\n\x05input\x18\x02 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"~\n\x18\x46unctionPutInputsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x18\n\x10\x66unction_call_id\x18\x03 \x01(\t\x12\x33\n\x06inputs\x18\x04 \x03(\x0b\x32#.modal.client.FunctionPutInputsItem\"X\n\x19\x46unctionPutInputsResponse\x12;\n\x06inputs\x18\x01 \x03(\x0b\x32+.modal.client.FunctionPutInputsResponseItem\"Q\n\x1d\x46unctionPutInputsResponseItem\x12\x0b\n\x03idx\x18\x01 \x01(\x05\x12\x10\n\x08input_id\x18\x02 \x01(\t\x12\x11\n\tinput_jwt\x18\x03 \x01(\t\"\xbb\x01\n\x16\x46unctionPutOutputsItem\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x18\n\x10input_started_at\x18\x03 \x01(\x01\x12\x19\n\x11output_created_at\x18\x04 \x01(\x01\x12-\n\x0b\x64\x61ta_format\x18\x07 \x01(\x0e\x32\x18.modal.client.DataFormat\"h\n\x19\x46unctionPutOutputsRequest\x12\x35\n\x07outputs\x18\x04 \x03(\x0b\x32$.modal.client.FunctionPutOutputsItem\x12\x14\n\x0crequested_at\x18\x05 \x01(\x01\"X\n\x17\x46unctionRetryInputsItem\x12\x11\n\tinput_jwt\x18\x01 \x01(\t\x12*\n\x05input\x18\x02 \x01(\x0b\x32\x1b.modal.client.FunctionInput\"n\n\x1a\x46unctionRetryInputsRequest\x12\x19\n\x11\x66unction_call_jwt\x18\x01 \x01(\t\x12\x35\n\x06inputs\x18\x02 \x03(\x0b\x32%.modal.client.FunctionRetryInputsItem\"\x1d\n\x1b\x46unctionRetryInputsResponse\"s\n\x13\x46unctionRetryPolicy\x12\x1b\n\x13\x62\x61\x63koff_coefficient\x18\x01 \x01(\x02\x12\x18\n\x10initial_delay_ms\x18\x02 \x01(\r\x12\x14\n\x0cmax_delay_ms\x18\x03 \x01(\r\x12\x0f\n\x07retries\x18\x12 \x01(\r\"S\n\rFunctionStats\x12\x0f\n\x07\x62\x61\x63klog\x18\x01 \x01(\r\x12\x18\n\x10num_active_tasks\x18\x02 \x01(\r\x12\x17\n\x0fnum_total_tasks\x18\x03 \x01(\r\"]\n%FunctionUpdateSchedulingParamsRequest\x12\x13\n\x0b\x66unction_id\x18\x01 \x01(\t\x12\x1f\n\x17warm_pool_size_override\x18\x02 \x01(\r\"(\n&FunctionUpdateSchedulingParamsResponse\"O\n\tGPUConfig\x12#\n\x04type\x18\x01 \x01(\x0e\x32\x15.modal.client.GPUType\x12\r\n\x05\x63ount\x18\x02 \x01(\r\x12\x0e\n\x06memory\x18\x03 \x01(\r\"$\n\rGeneratorDone\x12\x13\n\x0bitems_total\x18\x01 \x01(\x04\"\xed\x03\n\rGenericResult\x12\x39\n\x06status\x18\x01 \x01(\x0e\x32).modal.client.GenericResult.GenericStatus\x12\x11\n\texception\x18\x02 \x01(\t\x12\x10\n\x08\x65xitcode\x18\x03 \x01(\x05\x12\x11\n\ttraceback\x18\x04 \x01(\t\x12\x15\n\rserialized_tb\x18\x0b \x01(\x0c\x12\x15\n\rtb_line_cache\x18\x0c \x01(\x0c\x12\x0e\n\x04\x64\x61ta\x18\x05 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\n \x01(\tH\x00\x12\x1a\n\x12propagation_reason\x18\r \x01(\t\"\xe8\x01\n\rGenericStatus\x12\x1e\n\x1aGENERIC_STATUS_UNSPECIFIED\x10\x00\x12\x1a\n\x16GENERIC_STATUS_SUCCESS\x10\x01\x12\x1a\n\x16GENERIC_STATUS_FAILURE\x10\x02\x12\x1d\n\x19GENERIC_STATUS_TERMINATED\x10\x03\x12\x1a\n\x16GENERIC_STATUS_TIMEOUT\x10\x04\x12\x1f\n\x1bGENERIC_STATUS_INIT_FAILURE\x10\x05\x12#\n\x1fGENERIC_STATUS_INTERNAL_FAILURE\x10\x06\x42\x0c\n\ndata_oneof\"\xdd\x03\n\x05Image\x12,\n\x0b\x62\x61se_images\x18\x05 \x03(\x0b\x32\x17.modal.client.BaseImage\x12\x1b\n\x13\x64ockerfile_commands\x18\x06 \x03(\t\x12\x35\n\rcontext_files\x18\x07 \x03(\x0b\x32\x1e.modal.client.ImageContextFile\x12\x0f\n\x07version\x18\x0b \x01(\t\x12\x12\n\nsecret_ids\x18\x0c \x03(\t\x12\x0b\n\x03gpu\x18\r \x01(\x08\x12\x18\n\x10\x63ontext_mount_id\x18\x0f \x01(\t\x12+\n\ngpu_config\x18\x10 \x01(\x0b\x32\x17.modal.client.GPUConfig\x12@\n\x15image_registry_config\x18\x11 \x01(\x0b\x32!.modal.client.ImageRegistryConfig\x12\x1a\n\x12\x62uild_function_def\x18\x0e \x01(\t\x12\x1e\n\x16\x62uild_function_globals\x18\x12 \x01(\x0c\x12\x0f\n\x07runtime\x18\x13 \x01(\t\x12\x15\n\rruntime_debug\x18\x14 \x01(\x08\x12\x33\n\x0e\x62uild_function\x18\x15 \x01(\x0b\x32\x1b.modal.client.BuildFunction\"2\n\x10ImageContextFile\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"&\n\x12ImageFromIdRequest\x12\x10\n\x08image_id\x18\x01 \x01(\t\"V\n\x13ImageFromIdResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12-\n\x08metadata\x18\x02 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\"\x8e\x02\n\x17ImageGetOrCreateRequest\x12\"\n\x05image\x18\x02 \x01(\x0b\x32\x13.modal.client.Image\x12\x14\n\x06\x61pp_id\x18\x04 \x01(\tB\x04\x80\xb5\x18\x01\x12\x19\n\x11\x65xisting_image_id\x18\x05 \x01(\t\x12\x19\n\x11\x62uild_function_id\x18\x06 \x01(\t\x12\x13\n\x0b\x66orce_build\x18\x07 \x01(\x08\x12\x34\n\tnamespace\x18\x08 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x17\n\x0f\x62uilder_version\x18\t \x01(\t\x12\x1f\n\x17\x61llow_global_deployment\x18\n \x01(\x08\"\x88\x01\n\x18ImageGetOrCreateResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12-\n\x08metadata\x18\x03 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\"x\n\x19ImageJoinStreamingRequest\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x03 \x01(\t\x12!\n\x19include_logs_for_finished\x18\x04 \x01(\x08\"\xc2\x01\n\x1aImageJoinStreamingResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12)\n\ttask_logs\x18\x02 \x03(\x0b\x32\x16.modal.client.TaskLogs\x12\x10\n\x08\x65ntry_id\x18\x03 \x01(\t\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\x12-\n\x08metadata\x18\x05 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\"\xec\x01\n\rImageMetadata\x12 \n\x13python_version_info\x18\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x0fpython_packages\x18\x02 \x03(\x0b\x32/.modal.client.ImageMetadata.PythonPackagesEntry\x12\x14\n\x07workdir\x18\x03 \x01(\tH\x01\x88\x01\x01\x1a\x35\n\x13PythonPackagesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x16\n\x14_python_version_infoB\n\n\x08_workdir\"d\n\x13ImageRegistryConfig\x12:\n\x12registry_auth_type\x18\x01 \x01(\x0e\x32\x1e.modal.client.RegistryAuthType\x12\x11\n\tsecret_id\x18\x02 \x01(\t\"\x8c\x01\n\x12InputCallGraphInfo\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12\x39\n\x06status\x18\x02 \x01(\x0e\x32).modal.client.GenericResult.GenericStatus\x12\x18\n\x10\x66unction_call_id\x18\x03 \x01(\t\x12\x0f\n\x07task_id\x18\x04 \x01(\t\"K\n\x11InputCategoryInfo\x12\r\n\x05total\x18\x01 \x01(\x05\x12\'\n\x06latest\x18\x02 \x03(\x0b\x32\x17.modal.client.InputInfo\"\x99\x01\n\tInputInfo\x12\x10\n\x08input_id\x18\x01 \x01(\t\x12\x0b\n\x03idx\x18\x02 \x01(\x05\x12\x0f\n\x07task_id\x18\x03 \x01(\t\x12\x12\n\nstarted_at\x18\x04 \x01(\x01\x12\x13\n\x0b\x66inished_at\x18\x05 \x01(\x01\x12\x19\n\x11task_startup_time\x18\x06 \x01(\x01\x12\x18\n\x10task_first_input\x18\x07 \x01(\x08\"\x97\x02\n\x10MethodDefinition\x12\x15\n\rfunction_name\x18\x01 \x01(\t\x12:\n\rfunction_type\x18\x02 \x01(\x0e\x32#.modal.client.Function.FunctionType\x12\x33\n\x0ewebhook_config\x18\x03 \x01(\x0b\x32\x1b.modal.client.WebhookConfig\x12\x0f\n\x07web_url\x18\x04 \x01(\t\x12.\n\x0cweb_url_info\x18\x05 \x01(\x0b\x32\x18.modal.client.WebUrlInfo\x12:\n\x12\x63ustom_domain_info\x18\x06 \x03(\x0b\x32\x1e.modal.client.CustomDomainInfo\"i\n\tMountFile\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x12\n\nsha256_hex\x18\x03 \x01(\t\x12\x11\n\x04size\x18\x04 \x01(\x04H\x00\x88\x01\x01\x12\x11\n\x04mode\x18\x05 \x01(\rH\x01\x88\x01\x01\x42\x07\n\x05_sizeB\x07\n\x05_mode\"\xfa\x01\n\x17MountGetOrCreateRequest\x12\x17\n\x0f\x64\x65ployment_name\x18\x01 \x01(\t\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12&\n\x05\x66iles\x18\x05 \x03(\x0b\x32\x17.modal.client.MountFile\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\t\"h\n\x18MountGetOrCreateResponse\x12\x10\n\x08mount_id\x18\x01 \x01(\t\x12:\n\x0fhandle_metadata\x18\x02 \x01(\x0b\x32!.modal.client.MountHandleMetadata\":\n\x13MountHandleMetadata\x12#\n\x1b\x63ontent_checksum_sha256_hex\x18\x01 \x01(\t\"_\n\x13MountPutFileRequest\x12\x12\n\nsha256_hex\x18\x02 \x01(\t\x12\x0e\n\x04\x64\x61ta\x18\x03 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x05 \x01(\tH\x00\x42\x0c\n\ndata_oneof\"&\n\x14MountPutFileResponse\x12\x0e\n\x06\x65xists\x18\x02 \x01(\x08\"S\n\x0fMultiPartUpload\x12\x13\n\x0bpart_length\x18\x01 \x01(\x03\x12\x13\n\x0bupload_urls\x18\x02 \x03(\t\x12\x16\n\x0e\x63ompletion_url\x18\x03 \x01(\t\"\xbe\x01\n\rNetworkAccess\x12J\n\x13network_access_type\x18\x01 \x01(\x0e\x32-.modal.client.NetworkAccess.NetworkAccessType\x12\x15\n\rallowed_cidrs\x18\x02 \x03(\t\"J\n\x11NetworkAccessType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x08\n\x04OPEN\x10\x01\x12\x0b\n\x07\x42LOCKED\x10\x02\x12\r\n\tALLOWLIST\x10\x03\"\x92\x03\n#NotebookKernelPublishResultsRequest\x12\x13\n\x0bnotebook_id\x18\x01 \x01(\t\x12M\n\x07results\x18\x02 \x03(\x0b\x32<.modal.client.NotebookKernelPublishResultsRequest.CellResult\x1a\x37\n\x0c\x45xecuteReply\x12\x0e\n\x06status\x18\x01 \x01(\t\x12\x17\n\x0f\x65xecution_count\x18\x02 \x01(\r\x1a\xcd\x01\n\nCellResult\x12\x0f\n\x07\x63\x65ll_id\x18\x01 \x01(\t\x12.\n\x06output\x18\x02 \x01(\x0b\x32\x1c.modal.client.NotebookOutputH\x00\x12\x16\n\x0c\x63lear_output\x18\x03 \x01(\x08H\x00\x12W\n\rexecute_reply\x18\x04 \x01(\x0b\x32>.modal.client.NotebookKernelPublishResultsRequest.ExecuteReplyH\x00\x42\r\n\x0bresult_type\"\x8e\x05\n\x0eNotebookOutput\x12\x44\n\x0e\x65xecute_result\x18\x01 \x01(\x0b\x32*.modal.client.NotebookOutput.ExecuteResultH\x00\x12@\n\x0c\x64isplay_data\x18\x02 \x01(\x0b\x32(.modal.client.NotebookOutput.DisplayDataH\x00\x12\x35\n\x06stream\x18\x03 \x01(\x0b\x32#.modal.client.NotebookOutput.StreamH\x00\x12\x33\n\x05\x65rror\x18\x04 \x01(\x0b\x32\".modal.client.NotebookOutput.ErrorH\x00\x1az\n\rExecuteResult\x12\x17\n\x0f\x65xecution_count\x18\x01 \x01(\r\x12%\n\x04\x64\x61ta\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12)\n\x08metadata\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\x1a\x9b\x01\n\x0b\x44isplayData\x12%\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x17.google.protobuf.Struct\x12)\n\x08metadata\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12!\n\x14transient_display_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_transient_display_id\x1a$\n\x06Stream\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x1a\x39\n\x05\x45rror\x12\r\n\x05\x65name\x18\x01 \x01(\t\x12\x0e\n\x06\x65value\x18\x02 \x01(\t\x12\x11\n\ttraceback\x18\x03 \x03(\tB\r\n\x0boutput_type\"\xce\x02\n\x06Object\x12\x11\n\tobject_id\x18\x01 \x01(\t\x12H\n\x18\x66unction_handle_metadata\x18\x03 \x01(\x0b\x32$.modal.client.FunctionHandleMetadataH\x00\x12\x42\n\x15mount_handle_metadata\x18\x04 \x01(\x0b\x32!.modal.client.MountHandleMetadataH\x00\x12\x42\n\x15\x63lass_handle_metadata\x18\x05 \x01(\x0b\x32!.modal.client.ClassHandleMetadataH\x00\x12\x46\n\x17sandbox_handle_metadata\x18\x06 \x01(\x0b\x32#.modal.client.SandboxHandleMetadataH\x00\x42\x17\n\x15handle_metadata_oneof\"%\n\x10ObjectDependency\x12\x11\n\tobject_id\x18\x01 \x01(\t\"\x86\x02\n\x07PTYInfo\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x12\n\nwinsz_rows\x18\x02 \x01(\r\x12\x12\n\nwinsz_cols\x18\x03 \x01(\r\x12\x10\n\x08\x65nv_term\x18\x04 \x01(\t\x12\x15\n\renv_colorterm\x18\x05 \x01(\t\x12\x18\n\x10\x65nv_term_program\x18\x06 \x01(\t\x12/\n\x08pty_type\x18\x07 \x01(\x0e\x32\x1d.modal.client.PTYInfo.PTYType\"N\n\x07PTYType\x12\x18\n\x14PTY_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11PTY_TYPE_FUNCTION\x10\x01\x12\x12\n\x0ePTY_TYPE_SHELL\x10\x02\"-\n\x08PortSpec\x12\x0c\n\x04port\x18\x01 \x01(\r\x12\x13\n\x0bunencrypted\x18\x02 \x01(\x08\"2\n\tPortSpecs\x12%\n\x05ports\x18\x01 \x03(\x0b\x32\x16.modal.client.PortSpec\"\x7f\n\x05Proxy\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12\x10\n\x08proxy_id\x18\x05 \x01(\t\x12(\n\tproxy_ips\x18\x04 \x03(\x0b\x32\x15.modal.client.ProxyIp\"B\n\x12ProxyCreateRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"9\n\x13ProxyCreateResponse\x12\"\n\x05proxy\x18\x01 \x01(\x0b\x32\x13.modal.client.Proxy\",\n\x12ProxyDeleteRequest\x12\x16\n\x08proxy_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"\xc8\x01\n\x17ProxyGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\",\n\x18ProxyGetOrCreateResponse\x12\x10\n\x08proxy_id\x18\x01 \x01(\t\"?\n\x0fProxyGetRequest\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"6\n\x10ProxyGetResponse\x12\"\n\x05proxy\x18\x01 \x01(\x0b\x32\x13.modal.client.Proxy\"\x89\x01\n\tProxyInfo\x12\x12\n\nelastic_ip\x18\x01 \x01(\t\x12\x11\n\tproxy_key\x18\x02 \x01(\t\x12\x13\n\x0bremote_addr\x18\x03 \x01(\t\x12\x13\n\x0bremote_port\x18\x04 \x01(\x05\x12+\n\nproxy_type\x18\x05 \x01(\x0e\x32\x17.modal.client.ProxyType\"v\n\x07ProxyIp\x12\x10\n\x08proxy_ip\x18\x01 \x01(\t\x12+\n\x06status\x18\x02 \x01(\x0e\x32\x1b.modal.client.ProxyIpStatus\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\"9\n\x11ProxyListResponse\x12$\n\x07proxies\x18\x01 \x03(\x0b\x32\x13.modal.client.Proxy\"T\n\x11QueueClearRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x15\n\rpartition_key\x18\x02 \x01(\x0c\x12\x16\n\x0e\x61ll_partitions\x18\x03 \x01(\x08\",\n\x12QueueDeleteRequest\x12\x16\n\x08queue_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"\xc2\x01\n\x17QueueGetOrCreateRequest\x12\x17\n\x0f\x64\x65ployment_name\x18\x01 \x01(\t\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\",\n\x18QueueGetOrCreateResponse\x12\x10\n\x08queue_id\x18\x01 \x01(\t\"]\n\x0fQueueGetRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\x12\x10\n\x08n_values\x18\x04 \x01(\x05\x12\x15\n\rpartition_key\x18\x05 \x01(\x0c\"\"\n\x10QueueGetResponse\x12\x0e\n\x06values\x18\x02 \x03(\x0c\")\n\x15QueueHeartbeatRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\",\n\tQueueItem\x12\r\n\x05value\x18\x01 \x01(\x0c\x12\x10\n\x08\x65ntry_id\x18\x02 \x01(\t\"I\n\x0fQueueLenRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x15\n\rpartition_key\x18\x02 \x01(\x0c\x12\r\n\x05total\x18\x03 \x01(\x08\"\x1f\n\x10QueueLenResponse\x12\x0b\n\x03len\x18\x01 \x01(\x05\"F\n\x10QueueListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\x12\x18\n\x10total_size_limit\x18\x02 \x01(\x05\"\xa9\x01\n\x11QueueListResponse\x12\x39\n\x06queues\x18\x01 \x03(\x0b\x32).modal.client.QueueListResponse.QueueInfo\x1aY\n\tQueueInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\x12\x16\n\x0enum_partitions\x18\x03 \x01(\x05\x12\x12\n\ntotal_size\x18\x04 \x01(\x05\"r\n\x15QueueNextItemsRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x15\n\rpartition_key\x18\x02 \x01(\x0c\x12\x15\n\rlast_entry_id\x18\x03 \x01(\t\x12\x19\n\x11item_poll_timeout\x18\x04 \x01(\x02\"@\n\x16QueueNextItemsResponse\x12&\n\x05items\x18\x01 \x03(\x0b\x32\x17.modal.client.QueueItem\"i\n\x0fQueuePutRequest\x12\x10\n\x08queue_id\x18\x01 \x01(\t\x12\x0e\n\x06values\x18\x04 \x03(\x0c\x12\x15\n\rpartition_key\x18\x05 \x01(\x0c\x12\x1d\n\x15partition_ttl_seconds\x18\x06 \x01(\x05\"M\n\tRateLimit\x12\r\n\x05limit\x18\x01 \x01(\x05\x12\x31\n\x08interval\x18\x02 \x01(\x0e\x32\x1f.modal.client.RateLimitInterval\"\xa7\x01\n\tResources\x12\x11\n\tmemory_mb\x18\x02 \x01(\r\x12\x11\n\tmilli_cpu\x18\x03 \x01(\r\x12+\n\ngpu_config\x18\x04 \x01(\x0b\x32\x17.modal.client.GPUConfig\x12\x15\n\rmemory_mb_max\x18\x05 \x01(\r\x12\x19\n\x11\x65phemeral_disk_mb\x18\x06 \x01(\r\x12\x15\n\rmilli_cpu_max\x18\x07 \x01(\r\"J\n\x13RuntimeInputMessage\x12\x0f\n\x07message\x18\x01 \x01(\x0c\x12\x15\n\rmessage_index\x18\x02 \x01(\x04\x12\x0b\n\x03\x65of\x18\x03 \x01(\x08\"\x9c\x02\n\x12RuntimeOutputBatch\x12\x31\n\x05items\x18\x01 \x03(\x0b\x32\".modal.client.RuntimeOutputMessage\x12\x13\n\x0b\x62\x61tch_index\x18\x02 \x01(\x04\x12\x16\n\texit_code\x18\x03 \x01(\x05H\x00\x88\x01\x01\x12\x32\n\x06stdout\x18\x04 \x03(\x0b\x32\".modal.client.RuntimeOutputMessage\x12\x32\n\x06stderr\x18\x05 \x03(\x0b\x32\".modal.client.RuntimeOutputMessage\x12\x30\n\x04info\x18\x06 \x03(\x0b\x32\".modal.client.RuntimeOutputMessageB\x0c\n\n_exit_code\"u\n\x14RuntimeOutputMessage\x12\x35\n\x0f\x66ile_descriptor\x18\x01 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x15\n\rmessage_bytes\x18\x03 \x01(\x0c\"d\n\x07S3Mount\x12\x13\n\x0b\x62ucket_name\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12\x1d\n\x15\x63redentials_secret_id\x18\x03 \x01(\t\x12\x11\n\tread_only\x18\x04 \x01(\x08\"\x93\x07\n\x07Sandbox\x12\x17\n\x0f\x65ntrypoint_args\x18\x01 \x03(\t\x12\x11\n\tmount_ids\x18\x02 \x03(\t\x12\x10\n\x08image_id\x18\x03 \x01(\t\x12\x12\n\nsecret_ids\x18\x04 \x03(\t\x12*\n\tresources\x18\x05 \x01(\x0b\x32\x17.modal.client.Resources\x12\x33\n\x0e\x63loud_provider\x18\x06 \x01(\x0e\x32\x1b.modal.client.CloudProvider\x12\x14\n\x0ctimeout_secs\x18\x07 \x01(\r\x12\x14\n\x07workdir\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x33\n\nnfs_mounts\x18\t \x03(\x0b\x32\x1f.modal.client.SharedVolumeMount\x12\x15\n\rruntime_debug\x18\n \x01(\x08\x12\x15\n\rblock_network\x18\x0b \x01(\x08\x12(\n\ts3_mounts\x18\x0c \x03(\x0b\x32\x15.modal.client.S3Mount\x12;\n\x13\x63loud_bucket_mounts\x18\x0e \x03(\x0b\x32\x1e.modal.client.CloudBucketMount\x12\x30\n\rvolume_mounts\x18\r \x03(\x0b\x32\x19.modal.client.VolumeMount\x12\'\n\x08pty_info\x18\x0f \x01(\x0b\x32\x15.modal.client.PTYInfo\x12\x42\n\x13scheduler_placement\x18\x11 \x01(\x0b\x32 .modal.client.SchedulerPlacementH\x02\x88\x01\x01\x12\x11\n\tworker_id\x18\x13 \x01(\t\x12-\n\nopen_ports\x18\x14 \x01(\x0b\x32\x17.modal.client.PortSpecsH\x00\x12\x14\n\x0ci6pn_enabled\x18\x15 \x01(\x08\x12\x33\n\x0enetwork_access\x18\x16 \x01(\x0b\x32\x1b.modal.client.NetworkAccess\x12\x15\n\x08proxy_id\x18\x17 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0f\x65nable_snapshot\x18\x18 \x01(\x08\x12\x1d\n\x10snapshot_version\x18\x19 \x01(\rH\x04\x88\x01\x01\x42\x12\n\x10open_ports_oneofB\n\n\x08_workdirB\x16\n\x14_scheduler_placementB\x0b\n\t_proxy_idB\x13\n\x11_snapshot_versionJ\x04\x08\x10\x10\x11J\x04\x08\x12\x10\x13\"q\n\x14SandboxCreateRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12)\n\ndefinition\x18\x02 \x01(\x0b\x32\x15.modal.client.Sandbox\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\"+\n\x15SandboxCreateResponse\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\"\x8a\x01\n\x15SandboxGetLogsRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x35\n\x0f\x66ile_descriptor\x18\x02 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\x12\x15\n\rlast_entry_id\x18\x04 \x01(\t\"i\n\x17SandboxGetTaskIdRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x14\n\x07timeout\x18\x02 \x01(\x02H\x00\x88\x01\x01\x12\x18\n\x10wait_until_ready\x18\x03 \x01(\x08\x42\n\n\x08_timeout\"\x83\x01\n\x18SandboxGetTaskIdResponse\x12\x14\n\x07task_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x35\n\x0btask_result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResultH\x01\x88\x01\x01\x42\n\n\x08_task_idB\x0e\n\x0c_task_result\"?\n\x18SandboxGetTunnelsRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"s\n\x19SandboxGetTunnelsResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12)\n\x07tunnels\x18\x02 \x03(\x0b\x32\x18.modal.client.TunnelData\"D\n\x15SandboxHandleMetadata\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"^\n\x0bSandboxInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12)\n\ttask_info\x18\x04 \x01(\x0b\x32\x16.modal.client.TaskInfoJ\x04\x08\x02\x10\x03\"\x9a\x01\n\x12SandboxListRequest\x12\x0e\n\x06\x61pp_id\x18\x01 \x01(\t\x12\x18\n\x10\x62\x65\x66ore_timestamp\x18\x02 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12\x18\n\x10include_finished\x18\x04 \x01(\x08\x12&\n\x04tags\x18\x05 \x03(\x0b\x32\x18.modal.client.SandboxTag\"C\n\x13SandboxListResponse\x12,\n\tsandboxes\x18\x01 \x03(\x0b\x32\x19.modal.client.SandboxInfo\"\\\n\x15SandboxRestoreRequest\x12\x14\n\x06\x61pp_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x13\n\x0bsnapshot_id\x18\x02 \x01(\t\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\",\n\x16SandboxRestoreResponse\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\"?\n\x18SandboxSnapshotFsRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"\x8f\x01\n\x19SandboxSnapshotFsResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x33\n\x0eimage_metadata\x18\x03 \x01(\x0b\x32\x1b.modal.client.ImageMetadata\",\n\x16SandboxSnapshotRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\".\n\x17SandboxSnapshotResponse\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\"B\n\x1aSandboxSnapshotWaitRequest\x12\x13\n\x0bsnapshot_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"J\n\x1bSandboxSnapshotWaitResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"Y\n\x18SandboxStdinWriteRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\r\n\x05input\x18\x02 \x01(\x0c\x12\r\n\x05index\x18\x03 \x01(\r\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\"\x1b\n\x19SandboxStdinWriteResponse\"1\n\nSandboxTag\x12\x10\n\x08tag_name\x18\x01 \x01(\t\x12\x11\n\ttag_value\x18\x02 \x01(\t\"m\n\x15SandboxTagsSetRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\x12\x12\n\nsandbox_id\x18\x02 \x01(\t\x12&\n\x04tags\x18\x03 \x03(\x0b\x32\x18.modal.client.SandboxTag\"-\n\x17SandboxTerminateRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\"P\n\x18SandboxTerminateResponse\x12\x34\n\x0f\x65xisting_result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"9\n\x12SandboxWaitRequest\x12\x12\n\nsandbox_id\x18\x01 \x01(\t\x12\x0f\n\x07timeout\x18\x02 \x01(\x02\"B\n\x13SandboxWaitResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"\x8e\x02\n\x08Schedule\x12+\n\x04\x63ron\x18\x01 \x01(\x0b\x32\x1b.modal.client.Schedule.CronH\x00\x12/\n\x06period\x18\x02 \x01(\x0b\x32\x1d.modal.client.Schedule.PeriodH\x00\x1a\x1b\n\x04\x43ron\x12\x13\n\x0b\x63ron_string\x18\x01 \x01(\t\x1au\n\x06Period\x12\r\n\x05years\x18\x01 \x01(\x05\x12\x0e\n\x06months\x18\x02 \x01(\x05\x12\r\n\x05weeks\x18\x03 \x01(\x05\x12\x0c\n\x04\x64\x61ys\x18\x04 \x01(\x05\x12\r\n\x05hours\x18\x05 \x01(\x05\x12\x0f\n\x07minutes\x18\x06 \x01(\x05\x12\x0f\n\x07seconds\x18\x07 \x01(\x02\x42\x10\n\x0eschedule_oneof\"\x8a\x01\n\x12SchedulerPlacement\x12\x0f\n\x07regions\x18\x04 \x03(\t\x12\x12\n\x05_zone\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x17\n\n_lifecycle\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x17\n\x0f_instance_types\x18\x05 \x03(\tB\x08\n\x06X_zoneB\r\n\x0bX_lifecycleJ\x04\x08\x01\x10\x02\"\xd0\x01\n\x13SecretCreateRequest\x12@\n\x08\x65nv_dict\x18\x01 \x03(\x0b\x32..modal.client.SecretCreateRequest.EnvDictEntry\x12\x14\n\x06\x61pp_id\x18\x02 \x01(\tB\x04\x80\xb5\x18\x01\x12\x15\n\rtemplate_type\x18\x03 \x01(\t\x12\x1a\n\x12\x65xisting_secret_id\x18\x04 \x01(\t\x1a.\n\x0c\x45nvDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\")\n\x14SecretCreateResponse\x12\x11\n\tsecret_id\x18\x01 \x01(\t\"(\n\x13SecretDeleteRequest\x12\x11\n\tsecret_id\x18\x01 \x01(\t\"\xe7\x02\n\x18SecretGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12\x45\n\x08\x65nv_dict\x18\x05 \x03(\x0b\x32\x33.modal.client.SecretGetOrCreateRequest.EnvDictEntry\x12\x0e\n\x06\x61pp_id\x18\x06 \x01(\t\x12\x15\n\rrequired_keys\x18\x07 \x03(\t\x1a.\n\x0c\x45nvDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\".\n\x19SecretGetOrCreateResponse\x12\x11\n\tsecret_id\x18\x01 \x01(\t\"v\n\x0eSecretListItem\x12\r\n\x05label\x18\x01 \x01(\t\x12\x12\n\ncreated_at\x18\x02 \x01(\x01\x12\x14\n\x0clast_used_at\x18\x03 \x01(\x01\x12\x18\n\x10\x65nvironment_name\x18\x04 \x01(\t\x12\x11\n\tsecret_id\x18\x05 \x01(\t\"-\n\x11SecretListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"[\n\x12SecretListResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.modal.client.SecretListItem\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"5\n\x19SharedVolumeDeleteRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\"D\n\x1aSharedVolumeGetFileRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"S\n\x1bSharedVolumeGetFileResponse\x12\x0e\n\x04\x64\x61ta\x18\x01 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x02 \x01(\tH\x00\x42\x0c\n\ndata_oneof\"\xdf\x01\n\x1eSharedVolumeGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12\x0e\n\x06\x61pp_id\x18\x05 \x01(\t\";\n\x1fSharedVolumeGetOrCreateResponse\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\"8\n\x1cSharedVolumeHeartbeatRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\"F\n\x1cSharedVolumeListFilesRequest\x12\x18\n\x10shared_volume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"I\n\x1dSharedVolumeListFilesResponse\x12(\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x17.modal.client.FileEntry\"\x88\x01\n\x14SharedVolumeListItem\x12\r\n\x05label\x18\x01 \x01(\t\x12\x18\n\x10shared_volume_id\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\x12\x33\n\x0e\x63loud_provider\x18\x04 \x01(\x0e\x32\x1b.modal.client.CloudProvider\"3\n\x17SharedVolumeListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"g\n\x18SharedVolumeListResponse\x12\x31\n\x05items\x18\x01 \x03(\x0b\x32\".modal.client.SharedVolumeListItem\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"\x92\x01\n\x11SharedVolumeMount\x12\x12\n\nmount_path\x18\x01 \x01(\t\x12\x18\n\x10shared_volume_id\x18\x02 \x01(\t\x12\x33\n\x0e\x63loud_provider\x18\x03 \x01(\x0e\x32\x1b.modal.client.CloudProvider\x12\x1a\n\x12\x61llow_cross_region\x18\x04 \x01(\x08\"\xa7\x01\n\x1aSharedVolumePutFileRequest\x12\x1e\n\x10shared_volume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x12\n\nsha256_hex\x18\x03 \x01(\t\x12\x0e\n\x04\x64\x61ta\x18\x04 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x05 \x01(\tH\x00\x12\x11\n\tresumable\x18\x06 \x01(\x08\x42\x0c\n\ndata_oneof\"-\n\x1bSharedVolumePutFileResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\"`\n\x1dSharedVolumeRemoveFileRequest\x12\x1e\n\x10shared_volume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\trecursive\x18\x03 \x01(\x08\"^\n\x12SystemErrorMessage\x12\x31\n\nerror_code\x18\x01 \x01(\x0e\x32\x1d.modal.client.SystemErrorCode\x12\x15\n\rerror_message\x18\x02 \x01(\t\"@\n\x17TaskClusterHelloRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontainer_ip\x18\x02 \x01(\t\"[\n\x18TaskClusterHelloResponse\x12\x12\n\ncluster_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63luster_rank\x18\x02 \x01(\r\x12\x15\n\rcontainer_ips\x18\x03 \x03(\t\".\n\x19TaskCurrentInputsResponse\x12\x11\n\tinput_ids\x18\x01 \x03(\t\"\x81\x01\n\x08TaskInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\nstarted_at\x18\x02 \x01(\x01\x12\x13\n\x0b\x66inished_at\x18\x03 \x01(\x01\x12+\n\x06result\x18\x04 \x01(\x0b\x32\x1b.modal.client.GenericResult\x12\x13\n\x0b\x65nqueued_at\x18\x05 \x01(\x01\"+\n\x0fTaskListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\":\n\x10TaskListResponse\x12&\n\x05tasks\x18\x01 \x03(\x0b\x32\x17.modal.client.TaskStats\"\xee\x01\n\x08TaskLogs\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\t\x12+\n\ntask_state\x18\x06 \x01(\x0e\x32\x17.modal.client.TaskState\x12\x11\n\ttimestamp\x18\x07 \x01(\x01\x12\x35\n\x0f\x66ile_descriptor\x18\x08 \x01(\x0e\x32\x1c.modal.client.FileDescriptor\x12\x31\n\rtask_progress\x18\t \x01(\x0b\x32\x1a.modal.client.TaskProgress\x12\x18\n\x10\x66unction_call_id\x18\n \x01(\t\x12\x10\n\x08input_id\x18\x0b \x01(\t\"\xc6\x01\n\rTaskLogsBatch\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12%\n\x05items\x18\x02 \x03(\x0b\x32\x16.modal.client.TaskLogs\x12\x10\n\x08\x65ntry_id\x18\x05 \x01(\t\x12\x10\n\x08\x61pp_done\x18\n \x01(\x08\x12\x13\n\x0b\x66unction_id\x18\x0b \x01(\t\x12\x10\n\x08input_id\x18\x0c \x01(\t\x12\x10\n\x08image_id\x18\r \x01(\t\x12\x0b\n\x03\x65of\x18\x0e \x01(\x08\x12\x13\n\x0bpty_exec_id\x18\x0f \x01(\t\"p\n\x0cTaskProgress\x12\x0b\n\x03len\x18\x01 \x01(\x04\x12\x0b\n\x03pos\x18\x02 \x01(\x04\x12\x31\n\rprogress_type\x18\x03 \x01(\x0e\x32\x1a.modal.client.ProgressType\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\"@\n\x11TaskResultRequest\x12+\n\x06result\x18\x02 \x01(\x0b\x32\x1b.modal.client.GenericResult\"Y\n\tTaskStats\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0e\n\x06\x61pp_id\x18\x02 \x01(\t\x12\x17\n\x0f\x61pp_description\x18\x03 \x01(\t\x12\x12\n\nstarted_at\x18\x04 \x01(\x01\"\x98\x01\n\x0cTaskTemplate\x12\x0c\n\x04rank\x18\x01 \x01(\r\x12*\n\tresources\x18\x02 \x01(\x0b\x32\x17.modal.client.Resources\x12 \n\x18target_concurrent_inputs\x18\x03 \x01(\r\x12\x1d\n\x15max_concurrent_inputs\x18\x04 \x01(\r\x12\r\n\x05index\x18\x05 \x01(\r\"V\n\x16TokenFlowCreateRequest\x12\x12\n\nutm_source\x18\x03 \x01(\t\x12\x16\n\x0elocalhost_port\x18\x04 \x01(\x05\x12\x10\n\x08next_url\x18\x05 \x01(\t\"d\n\x17TokenFlowCreateResponse\x12\x15\n\rtoken_flow_id\x18\x01 \x01(\t\x12\x0f\n\x07web_url\x18\x02 \x01(\t\x12\x0c\n\x04\x63ode\x18\x03 \x01(\t\x12\x13\n\x0bwait_secret\x18\x04 \x01(\t\"S\n\x14TokenFlowWaitRequest\x12\x0f\n\x07timeout\x18\x01 \x01(\x02\x12\x15\n\rtoken_flow_id\x18\x02 \x01(\t\x12\x13\n\x0bwait_secret\x18\x03 \x01(\t\"l\n\x15TokenFlowWaitResponse\x12\x10\n\x08token_id\x18\x01 \x01(\t\x12\x14\n\x0ctoken_secret\x18\x02 \x01(\t\x12\x0f\n\x07timeout\x18\x03 \x01(\x08\x12\x1a\n\x12workspace_username\x18\x04 \x01(\t\"\xa8\x01\n\nTunnelData\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x1d\n\x10unencrypted_host\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10unencrypted_port\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x16\n\x0e\x63ontainer_port\x18\x05 \x01(\rB\x13\n\x11_unencrypted_hostB\x13\n\x11_unencrypted_port\"7\n\x12TunnelStartRequest\x12\x0c\n\x04port\x18\x01 \x01(\r\x12\x13\n\x0bunencrypted\x18\x02 \x01(\x08\"\x99\x01\n\x13TunnelStartResponse\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\x12\x1d\n\x10unencrypted_host\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10unencrypted_port\x18\x04 \x01(\rH\x01\x88\x01\x01\x42\x13\n\x11_unencrypted_hostB\x13\n\x11_unencrypted_port\"!\n\x11TunnelStopRequest\x12\x0c\n\x04port\x18\x01 \x01(\r\"$\n\x12TunnelStopResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\".\n\x13VolumeCommitRequest\x12\x17\n\tvolume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\"+\n\x14VolumeCommitResponse\x12\x13\n\x0bskip_reload\x18\x01 \x01(\x08\"c\n\x16VolumeCopyFilesRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x11\n\tsrc_paths\x18\x02 \x03(\t\x12\x10\n\x08\x64st_path\x18\x03 \x01(\t\x12\x11\n\trecursive\x18\x04 \x01(\x08\"F\n\x13VolumeDeleteRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x1c\n\x10\x65nvironment_name\x18\x02 \x01(\tB\x02\x18\x01\"S\n\x14VolumeGetFileRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\r\n\x05start\x18\x03 \x01(\x04\x12\x0b\n\x03len\x18\x04 \x01(\x04\"w\n\x15VolumeGetFileResponse\x12\x0e\n\x04\x64\x61ta\x18\x01 \x01(\x0cH\x00\x12\x16\n\x0c\x64\x61ta_blob_id\x18\x02 \x01(\tH\x00\x12\x0c\n\x04size\x18\x03 \x01(\x04\x12\r\n\x05start\x18\x04 \x01(\x04\x12\x0b\n\x03len\x18\x05 \x01(\x04\x42\x0c\n\ndata_oneof\"\x89\x02\n\x18VolumeGetOrCreateRequest\x12\x1d\n\x0f\x64\x65ployment_name\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x34\n\tnamespace\x18\x02 \x01(\x0e\x32!.modal.client.DeploymentNamespace\x12\x18\n\x10\x65nvironment_name\x18\x03 \x01(\t\x12>\n\x14object_creation_type\x18\x04 \x01(\x0e\x32 .modal.client.ObjectCreationType\x12\x0e\n\x06\x61pp_id\x18\x05 \x01(\t\x12.\n\x07version\x18\x06 \x01(\x0e\x32\x1d.modal.client.VolumeFsVersion\"^\n\x19VolumeGetOrCreateResponse\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12.\n\x07version\x18\x02 \x01(\x0e\x32\x1d.modal.client.VolumeFsVersion\"+\n\x16VolumeHeartbeatRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\"v\n\x16VolumeListFilesRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\trecursive\x18\x04 \x01(\x08\x12\x18\n\x0bmax_entries\x18\x03 \x01(\rH\x00\x88\x01\x01\x42\x0e\n\x0c_max_entries\"C\n\x17VolumeListFilesResponse\x12(\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x17.modal.client.FileEntry\"F\n\x0eVolumeListItem\x12\r\n\x05label\x18\x01 \x01(\t\x12\x11\n\tvolume_id\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x01\"-\n\x11VolumeListRequest\x12\x18\n\x10\x65nvironment_name\x18\x01 \x01(\t\"[\n\x12VolumeListResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.modal.client.VolumeListItem\x12\x18\n\x10\x65nvironment_name\x18\x02 \x01(\t\"V\n\x0bVolumeMount\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12\x12\n\nmount_path\x18\x02 \x01(\t\x12 \n\x18\x61llow_background_commits\x18\x03 \x01(\x08\"}\n\x15VolumePutFilesRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\x12&\n\x05\x66iles\x18\x02 \x03(\x0b\x32\x17.modal.client.MountFile\x12)\n!disallow_overwrite_existing_files\x18\x03 \x01(\x08\"(\n\x13VolumeReloadRequest\x12\x11\n\tvolume_id\x18\x01 \x01(\t\"S\n\x17VolumeRemoveFileRequest\x12\x17\n\tvolume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x11\n\trecursive\x18\x03 \x01(\x08\"<\n\x13VolumeRenameRequest\x12\x17\n\tvolume_id\x18\x01 \x01(\tB\x04\x80\xb5\x18\x01\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xbe\x01\n\x07Warning\x12/\n\x04type\x18\x01 \x01(\x0e\x32!.modal.client.Warning.WarningType\x12\x0f\n\x07message\x18\x02 \x01(\t\"q\n\x0bWarningType\x12\x1c\n\x18WARNING_TYPE_UNSPECIFIED\x10\x00\x12#\n\x1fWARNING_TYPE_CLIENT_DEPRECATION\x10\x01\x12\x1f\n\x1bWARNING_TYPE_RESOURCE_LIMIT\x10\x02\"R\n\nWebUrlInfo\x12\x11\n\ttruncated\x18\x01 \x01(\x08\x12\x1b\n\x0fhas_unique_hash\x18\x02 \x01(\x08\x42\x02\x18\x01\x12\x14\n\x0clabel_stolen\x18\x03 \x01(\x08\"\xc5\x02\n\rWebhookConfig\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.modal.client.WebhookType\x12\x0e\n\x06method\x18\x02 \x01(\t\x12\x18\n\x10requested_suffix\x18\x04 \x01(\t\x12\x32\n\nasync_mode\x18\x05 \x01(\x0e\x32\x1e.modal.client.WebhookAsyncMode\x12\x38\n\x0e\x63ustom_domains\x18\x06 \x03(\x0b\x32 .modal.client.CustomDomainConfig\x12\x17\n\x0fweb_server_port\x18\x07 \x01(\r\x12\"\n\x1aweb_server_startup_timeout\x18\x08 \x01(\x02\x12\x19\n\x11web_endpoint_docs\x18\t \x01(\x08\x12\x1b\n\x13requires_proxy_auth\x18\n \x01(\x08\"K\n\x1bWorkspaceNameLookupResponse\x12\x1a\n\x0eworkspace_name\x18\x01 \x01(\tB\x02\x18\x01\x12\x10\n\x08username\x18\x02 \x01(\t*\x83\x01\n\x13\x41ppDeployVisibility\x12%\n!APP_DEPLOY_VISIBILITY_UNSPECIFIED\x10\x00\x12#\n\x1f\x41PP_DEPLOY_VISIBILITY_WORKSPACE\x10\x01\x12 \n\x1c\x41PP_DEPLOY_VISIBILITY_PUBLIC\x10\x02*\xa1\x02\n\x13\x41ppDisconnectReason\x12%\n!APP_DISCONNECT_REASON_UNSPECIFIED\x10\x00\x12)\n%APP_DISCONNECT_REASON_LOCAL_EXCEPTION\x10\x01\x12,\n(APP_DISCONNECT_REASON_KEYBOARD_INTERRUPT\x10\x02\x12.\n*APP_DISCONNECT_REASON_ENTRYPOINT_COMPLETED\x10\x03\x12.\n*APP_DISCONNECT_REASON_DEPLOYMENT_EXCEPTION\x10\x04\x12*\n&APP_DISCONNECT_REASON_REMOTE_EXCEPTION\x10\x05*\x91\x02\n\x08\x41ppState\x12\x19\n\x15\x41PP_STATE_UNSPECIFIED\x10\x00\x12\x17\n\x13\x41PP_STATE_EPHEMERAL\x10\x01\x12\x16\n\x12\x41PP_STATE_DETACHED\x10\x02\x12\x16\n\x12\x41PP_STATE_DEPLOYED\x10\x03\x12\x16\n\x12\x41PP_STATE_STOPPING\x10\x04\x12\x15\n\x11\x41PP_STATE_STOPPED\x10\x05\x12\x1a\n\x16\x41PP_STATE_INITIALIZING\x10\x06\x12\x16\n\x12\x41PP_STATE_DISABLED\x10\x07\x12#\n\x1f\x41PP_STATE_DETACHED_DISCONNECTED\x10\x08\x12\x19\n\x11\x41PP_STATE_DERIVED\x10\t\x1a\x02\x08\x01*\x85\x01\n\rAppStopSource\x12\x1f\n\x1b\x41PP_STOP_SOURCE_UNSPECIFIED\x10\x00\x12\x17\n\x13\x41PP_STOP_SOURCE_CLI\x10\x01\x12!\n\x1d\x41PP_STOP_SOURCE_PYTHON_CLIENT\x10\x02\x12\x17\n\x13\x41PP_STOP_SOURCE_WEB\x10\x03*\x91\x01\n\x11\x43\x65rtificateStatus\x12\x1e\n\x1a\x43\x45RTIFICATE_STATUS_PENDING\x10\x00\x12\x1d\n\x19\x43\x45RTIFICATE_STATUS_ISSUED\x10\x01\x12\x1d\n\x19\x43\x45RTIFICATE_STATUS_FAILED\x10\x02\x12\x1e\n\x1a\x43\x45RTIFICATE_STATUS_REVOKED\x10\x03*\xb1\x01\n\x10\x43heckpointStatus\x12!\n\x1d\x43HECKPOINT_STATUS_UNSPECIFIED\x10\x00\x12\x1d\n\x19\x43HECKPOINT_STATUS_PENDING\x10\x01\x12 \n\x1c\x43HECKPOINT_STATUS_PROCESSING\x10\x02\x12\x1b\n\x17\x43HECKPOINT_STATUS_READY\x10\x03\x12\x1c\n\x18\x43HECKPOINT_STATUS_FAILED\x10\x04*\xb1\x01\n\nClientType\x12\x1b\n\x17\x43LIENT_TYPE_UNSPECIFIED\x10\x00\x12\x16\n\x12\x43LIENT_TYPE_CLIENT\x10\x01\x12\x16\n\x12\x43LIENT_TYPE_WORKER\x10\x02\x12\x19\n\x15\x43LIENT_TYPE_CONTAINER\x10\x03\x12\x1a\n\x16\x43LIENT_TYPE_WEB_SERVER\x10\x05\x12\x1f\n\x1b\x43LIENT_TYPE_NOTEBOOK_KERNEL\x10\x06*\xa8\x01\n\rCloudProvider\x12\x1e\n\x1a\x43LOUD_PROVIDER_UNSPECIFIED\x10\x00\x12\x16\n\x12\x43LOUD_PROVIDER_AWS\x10\x01\x12\x16\n\x12\x43LOUD_PROVIDER_GCP\x10\x02\x12\x17\n\x13\x43LOUD_PROVIDER_AUTO\x10\x03\x12\x16\n\x12\x43LOUD_PROVIDER_OCI\x10\x04\"\x04\x08\x05\x10\x05\"\x04\x08\x06\x10\x06\"\x04\x08\x07\x10\x07\"\x04\x08\x08\x10\x08*Z\n\rDNSRecordType\x12\x15\n\x11\x44NS_RECORD_TYPE_A\x10\x00\x12\x17\n\x13\x44NS_RECORD_TYPE_TXT\x10\x01\x12\x19\n\x15\x44NS_RECORD_TYPE_CNAME\x10\x02*w\n\nDataFormat\x12\x1b\n\x17\x44\x41TA_FORMAT_UNSPECIFIED\x10\x00\x12\x16\n\x12\x44\x41TA_FORMAT_PICKLE\x10\x01\x12\x14\n\x10\x44\x41TA_FORMAT_ASGI\x10\x02\x12\x1e\n\x1a\x44\x41TA_FORMAT_GENERATOR_DONE\x10\x03*\x80\x01\n\x13\x44\x65ploymentNamespace\x12$\n DEPLOYMENT_NAMESPACE_UNSPECIFIED\x10\x00\x12\"\n\x1e\x44\x45PLOYMENT_NAMESPACE_WORKSPACE\x10\x01\x12\x1f\n\x1b\x44\x45PLOYMENT_NAMESPACE_GLOBAL\x10\x03*\x92\x01\n\x10\x45xecOutputOption\x12\"\n\x1e\x45XEC_OUTPUT_OPTION_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x45XEC_OUTPUT_OPTION_DEVNULL\x10\x01\x12\x1b\n\x17\x45XEC_OUTPUT_OPTION_PIPE\x10\x02\x12\x1d\n\x19\x45XEC_OUTPUT_OPTION_STDOUT\x10\x03*\x83\x01\n\x0e\x46ileDescriptor\x12\x1f\n\x1b\x46ILE_DESCRIPTOR_UNSPECIFIED\x10\x00\x12\x1a\n\x16\x46ILE_DESCRIPTOR_STDOUT\x10\x01\x12\x1a\n\x16\x46ILE_DESCRIPTOR_STDERR\x10\x02\x12\x18\n\x14\x46ILE_DESCRIPTOR_INFO\x10\x03*\xfb\x01\n\x1a\x46unctionCallInvocationType\x12-\n)FUNCTION_CALL_INVOCATION_TYPE_UNSPECIFIED\x10\x00\x12-\n)FUNCTION_CALL_INVOCATION_TYPE_SYNC_LEGACY\x10\x01\x12.\n*FUNCTION_CALL_INVOCATION_TYPE_ASYNC_LEGACY\x10\x02\x12\'\n#FUNCTION_CALL_INVOCATION_TYPE_ASYNC\x10\x03\x12&\n\"FUNCTION_CALL_INVOCATION_TYPE_SYNC\x10\x04*p\n\x10\x46unctionCallType\x12\"\n\x1e\x46UNCTION_CALL_TYPE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x46UNCTION_CALL_TYPE_UNARY\x10\x01\x12\x1a\n\x16\x46UNCTION_CALL_TYPE_MAP\x10\x02*\xce\x01\n\x07GPUType\x12\x18\n\x14GPU_TYPE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bGPU_TYPE_T4\x10\x01\x12\x11\n\rGPU_TYPE_A100\x10\x02\x12\x11\n\rGPU_TYPE_A10G\x10\x03\x12\x10\n\x0cGPU_TYPE_ANY\x10\x04\x12\x16\n\x12GPU_TYPE_A100_80GB\x10\x08\x12\x0f\n\x0bGPU_TYPE_L4\x10\t\x12\x11\n\rGPU_TYPE_H100\x10\n\x12\x11\n\rGPU_TYPE_L40S\x10\x0b\x12\x11\n\rGPU_TYPE_H200\x10\x0c*\xa0\x02\n\x12ObjectCreationType\x12$\n OBJECT_CREATION_TYPE_UNSPECIFIED\x10\x00\x12*\n&OBJECT_CREATION_TYPE_CREATE_IF_MISSING\x10\x01\x12.\n*OBJECT_CREATION_TYPE_CREATE_FAIL_IF_EXISTS\x10\x02\x12\x33\n/OBJECT_CREATION_TYPE_CREATE_OVERWRITE_IF_EXISTS\x10\x03\x12/\n+OBJECT_CREATION_TYPE_ANONYMOUS_OWNED_BY_APP\x10\x04\x12\"\n\x1eOBJECT_CREATION_TYPE_EPHEMERAL\x10\x05*V\n\rParameterType\x12\x1a\n\x16PARAM_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11PARAM_TYPE_STRING\x10\x01\x12\x12\n\x0ePARAM_TYPE_INT\x10\x02*>\n\x0cProgressType\x12\x19\n\x15IMAGE_SNAPSHOT_UPLOAD\x10\x00\x12\x13\n\x0f\x46UNCTION_QUEUED\x10\x01*\xa9\x01\n\rProxyIpStatus\x12\x1f\n\x1bPROXY_IP_STATUS_UNSPECIFIED\x10\x00\x12\x1c\n\x18PROXY_IP_STATUS_CREATING\x10\x01\x12\x1a\n\x16PROXY_IP_STATUS_ONLINE\x10\x02\x12\x1e\n\x1aPROXY_IP_STATUS_TERMINATED\x10\x03\x12\x1d\n\x19PROXY_IP_STATUS_UNHEALTHY\x10\x04*T\n\tProxyType\x12\x1a\n\x16PROXY_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11PROXY_TYPE_LEGACY\x10\x01\x12\x14\n\x10PROXY_TYPE_VPROX\x10\x02*x\n\x11RateLimitInterval\x12#\n\x1fRATE_LIMIT_INTERVAL_UNSPECIFIED\x10\x00\x12\x1e\n\x1aRATE_LIMIT_INTERVAL_SECOND\x10\x01\x12\x1e\n\x1aRATE_LIMIT_INTERVAL_MINUTE\x10\x02*\xb2\x01\n\x10RegistryAuthType\x12\"\n\x1eREGISTRY_AUTH_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16REGISTRY_AUTH_TYPE_AWS\x10\x01\x12\x1a\n\x16REGISTRY_AUTH_TYPE_GCP\x10\x02\x12\x1d\n\x19REGISTRY_AUTH_TYPE_PUBLIC\x10\x03\x12#\n\x1fREGISTRY_AUTH_TYPE_STATIC_CREDS\x10\x04*6\n\nSeekWhence\x12\x0c\n\x08SEEK_SET\x10\x00\x12\x0c\n\x08SEEK_CUR\x10\x01\x12\x0c\n\x08SEEK_END\x10\x02*\xa8\x03\n\x0fSystemErrorCode\x12!\n\x1dSYSTEM_ERROR_CODE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SYSTEM_ERROR_CODE_PERM\x10\x01\x12\x1b\n\x17SYSTEM_ERROR_CODE_NOENT\x10\x02\x12\x18\n\x14SYSTEM_ERROR_CODE_IO\x10\x05\x12\x1a\n\x16SYSTEM_ERROR_CODE_NXIO\x10\x06\x12\x1b\n\x17SYSTEM_ERROR_CODE_NOMEM\x10\x0c\x12\x1b\n\x17SYSTEM_ERROR_CODE_ACCES\x10\r\x12\x1b\n\x17SYSTEM_ERROR_CODE_EXIST\x10\x11\x12\x1c\n\x18SYSTEM_ERROR_CODE_NOTDIR\x10\x14\x12\x1b\n\x17SYSTEM_ERROR_CODE_ISDIR\x10\x15\x12\x1b\n\x17SYSTEM_ERROR_CODE_INVAL\x10\x16\x12\x1b\n\x17SYSTEM_ERROR_CODE_MFILE\x10\x18\x12\x1a\n\x16SYSTEM_ERROR_CODE_FBIG\x10\x1b\x12\x1b\n\x17SYSTEM_ERROR_CODE_NOSPC\x10\x1c*\xdc\x02\n\tTaskState\x12\x1a\n\x16TASK_STATE_UNSPECIFIED\x10\x00\x12\x16\n\x12TASK_STATE_CREATED\x10\x06\x12\x15\n\x11TASK_STATE_QUEUED\x10\x01\x12\x1e\n\x1aTASK_STATE_WORKER_ASSIGNED\x10\x02\x12\x1c\n\x18TASK_STATE_LOADING_IMAGE\x10\x03\x12\x15\n\x11TASK_STATE_ACTIVE\x10\x04\x12\x18\n\x14TASK_STATE_COMPLETED\x10\x05\x12!\n\x1dTASK_STATE_CREATING_CONTAINER\x10\x07\x12\x13\n\x0fTASK_STATE_IDLE\x10\x08\x12\x1a\n\x16TASK_STATE_PREEMPTIBLE\x10\t\x12\x18\n\x14TASK_STATE_PREEMPTED\x10\n\x12\'\n#TASK_STATE_LOADING_CHECKPOINT_IMAGE\x10\x0b*h\n\x0fVolumeFsVersion\x12!\n\x1dVOLUME_FS_VERSION_UNSPECIFIED\x10\x00\x12\x18\n\x14VOLUME_FS_VERSION_V1\x10\x01\x12\x18\n\x14VOLUME_FS_VERSION_V2\x10\x02*\x9a\x01\n\x10WebhookAsyncMode\x12\"\n\x1eWEBHOOK_ASYNC_MODE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bWEBHOOK_ASYNC_MODE_DISABLED\x10\x02\x12\x1e\n\x1aWEBHOOK_ASYNC_MODE_TRIGGER\x10\x03\x12\x1b\n\x17WEBHOOK_ASYNC_MODE_AUTO\x10\x04\"\x04\x08\x01\x10\x01*\x99\x01\n\x0bWebhookType\x12\x1c\n\x18WEBHOOK_TYPE_UNSPECIFIED\x10\x00\x12\x19\n\x15WEBHOOK_TYPE_ASGI_APP\x10\x01\x12\x19\n\x15WEBHOOK_TYPE_FUNCTION\x10\x02\x12\x19\n\x15WEBHOOK_TYPE_WSGI_APP\x10\x03\x12\x1b\n\x17WEBHOOK_TYPE_WEB_SERVER\x10\x04\x32\x84\x62\n\x0bModalClient\x12W\n\x13\x41ppClientDisconnect\x12(.modal.client.AppClientDisconnectRequest\x1a\x16.google.protobuf.Empty\x12L\n\tAppCreate\x12\x1e.modal.client.AppCreateRequest\x1a\x1f.modal.client.AppCreateResponse\x12L\n\tAppDeploy\x12\x1e.modal.client.AppDeployRequest\x1a\x1f.modal.client.AppDeployResponse\x12m\n\x14\x41ppDeploymentHistory\x12).modal.client.AppDeploymentHistoryRequest\x1a*.modal.client.AppDeploymentHistoryResponse\x12s\n\x16\x41ppGetByDeploymentName\x12+.modal.client.AppGetByDeploymentNameRequest\x1a,.modal.client.AppGetByDeploymentNameResponse\x12U\n\x0c\x41ppGetLayout\x12!.modal.client.AppGetLayoutRequest\x1a\".modal.client.AppGetLayoutResponse\x12L\n\nAppGetLogs\x12\x1f.modal.client.AppGetLogsRequest\x1a\x1b.modal.client.TaskLogsBatch0\x01\x12X\n\rAppGetObjects\x12\".modal.client.AppGetObjectsRequest\x1a#.modal.client.AppGetObjectsResponse\x12[\n\x0e\x41ppGetOrCreate\x12#.modal.client.AppGetOrCreateRequest\x1a$.modal.client.AppGetOrCreateResponse\x12I\n\x0c\x41ppHeartbeat\x12!.modal.client.AppHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12\x46\n\x07\x41ppList\x12\x1c.modal.client.AppListRequest\x1a\x1d.modal.client.AppListResponse\x12L\n\tAppLookup\x12\x1e.modal.client.AppLookupRequest\x1a\x1f.modal.client.AppLookupResponse\x12O\n\nAppPublish\x12\x1f.modal.client.AppPublishRequest\x1a .modal.client.AppPublishResponse\x12G\n\x0b\x41ppRollback\x12 .modal.client.AppRollbackRequest\x1a\x16.google.protobuf.Empty\x12K\n\rAppSetObjects\x12\".modal.client.AppSetObjectsRequest\x1a\x16.google.protobuf.Empty\x12?\n\x07\x41ppStop\x12\x1c.modal.client.AppStopRequest\x1a\x16.google.protobuf.Empty\x12O\n\nBlobCreate\x12\x1f.modal.client.BlobCreateRequest\x1a .modal.client.BlobCreateResponse\x12\x46\n\x07\x42lobGet\x12\x1c.modal.client.BlobGetRequest\x1a\x1d.modal.client.BlobGetResponse\x12R\n\x0b\x43lassCreate\x12 .modal.client.ClassCreateRequest\x1a!.modal.client.ClassCreateResponse\x12I\n\x08\x43lassGet\x12\x1d.modal.client.ClassGetRequest\x1a\x1e.modal.client.ClassGetResponse\x12H\n\x0b\x43lientHello\x12\x16.google.protobuf.Empty\x1a!.modal.client.ClientHelloResponse\x12W\n\x13\x43ontainerCheckpoint\x12(.modal.client.ContainerCheckpointRequest\x1a\x16.google.protobuf.Empty\x12X\n\rContainerExec\x12\".modal.client.ContainerExecRequest\x1a#.modal.client.ContainerExecResponse\x12i\n\x16\x43ontainerExecGetOutput\x12+.modal.client.ContainerExecGetOutputRequest\x1a .modal.client.RuntimeOutputBatch0\x01\x12[\n\x15\x43ontainerExecPutInput\x12*.modal.client.ContainerExecPutInputRequest\x1a\x16.google.protobuf.Empty\x12\x64\n\x11\x43ontainerExecWait\x12&.modal.client.ContainerExecWaitRequest\x1a\'.modal.client.ContainerExecWaitResponse\x12v\n\x17\x43ontainerFilesystemExec\x12,.modal.client.ContainerFilesystemExecRequest\x1a-.modal.client.ContainerFilesystemExecResponse\x12\x87\x01\n ContainerFilesystemExecGetOutput\x12\x35.modal.client.ContainerFilesystemExecGetOutputRequest\x1a*.modal.client.FilesystemRuntimeOutputBatch0\x01\x12g\n\x12\x43ontainerHeartbeat\x12\'.modal.client.ContainerHeartbeatRequest\x1a(.modal.client.ContainerHeartbeatResponse\x12@\n\x0e\x43ontainerHello\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\x12I\n\x0c\x43ontainerLog\x12!.modal.client.ContainerLogRequest\x1a\x16.google.protobuf.Empty\x12X\n\rContainerStop\x12\".modal.client.ContainerStopRequest\x1a#.modal.client.ContainerStopResponse\x12\x43\n\tDictClear\x12\x1e.modal.client.DictClearRequest\x1a\x16.google.protobuf.Empty\x12U\n\x0c\x44ictContains\x12!.modal.client.DictContainsRequest\x1a\".modal.client.DictContainsResponse\x12L\n\x0c\x44ictContents\x12!.modal.client.DictContentsRequest\x1a\x17.modal.client.DictEntry0\x01\x12\x45\n\nDictDelete\x12\x1f.modal.client.DictDeleteRequest\x1a\x16.google.protobuf.Empty\x12\x46\n\x07\x44ictGet\x12\x1c.modal.client.DictGetRequest\x1a\x1d.modal.client.DictGetResponse\x12^\n\x0f\x44ictGetOrCreate\x12$.modal.client.DictGetOrCreateRequest\x1a%.modal.client.DictGetOrCreateResponse\x12K\n\rDictHeartbeat\x12\".modal.client.DictHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12\x46\n\x07\x44ictLen\x12\x1c.modal.client.DictLenRequest\x1a\x1d.modal.client.DictLenResponse\x12I\n\x08\x44ictList\x12\x1d.modal.client.DictListRequest\x1a\x1e.modal.client.DictListResponse\x12\x46\n\x07\x44ictPop\x12\x1c.modal.client.DictPopRequest\x1a\x1d.modal.client.DictPopResponse\x12O\n\nDictUpdate\x12\x1f.modal.client.DictUpdateRequest\x1a .modal.client.DictUpdateResponse\x12v\n\x17\x44omainCertificateVerify\x12,.modal.client.DomainCertificateVerifyRequest\x1a-.modal.client.DomainCertificateVerifyResponse\x12U\n\x0c\x44omainCreate\x12!.modal.client.DomainCreateRequest\x1a\".modal.client.DomainCreateResponse\x12O\n\nDomainList\x12\x1f.modal.client.DomainListRequest\x1a .modal.client.DomainListResponse\x12S\n\x11\x45nvironmentCreate\x12&.modal.client.EnvironmentCreateRequest\x1a\x16.google.protobuf.Empty\x12S\n\x11\x45nvironmentDelete\x12&.modal.client.EnvironmentDeleteRequest\x1a\x16.google.protobuf.Empty\x12s\n\x16\x45nvironmentGetOrCreate\x12+.modal.client.EnvironmentGetOrCreateRequest\x1a,.modal.client.EnvironmentGetOrCreateResponse\x12P\n\x0f\x45nvironmentList\x12\x16.google.protobuf.Empty\x1a%.modal.client.EnvironmentListResponse\x12^\n\x11\x45nvironmentUpdate\x12&.modal.client.EnvironmentUpdateRequest\x1a!.modal.client.EnvironmentListItem\x12j\n\x13\x46unctionAsyncInvoke\x12(.modal.client.FunctionAsyncInvokeRequest\x1a).modal.client.FunctionAsyncInvokeResponse\x12g\n\x12\x46unctionBindParams\x12\'.modal.client.FunctionBindParamsRequest\x1a(.modal.client.FunctionBindParamsResponse\x12U\n\x12\x46unctionCallCancel\x12\'.modal.client.FunctionCallCancelRequest\x1a\x16.google.protobuf.Empty\x12\\\n\x15\x46unctionCallGetDataIn\x12(.modal.client.FunctionCallGetDataRequest\x1a\x17.modal.client.DataChunk0\x01\x12]\n\x16\x46unctionCallGetDataOut\x12(.modal.client.FunctionCallGetDataRequest\x1a\x17.modal.client.DataChunk0\x01\x12\x61\n\x10\x46unctionCallList\x12%.modal.client.FunctionCallListRequest\x1a&.modal.client.FunctionCallListResponse\x12Z\n\x16\x46unctionCallPutDataOut\x12(.modal.client.FunctionCallPutDataRequest\x1a\x16.google.protobuf.Empty\x12[\n\x0e\x46unctionCreate\x12#.modal.client.FunctionCreateRequest\x1a$.modal.client.FunctionCreateResponse\x12R\n\x0b\x46unctionGet\x12 .modal.client.FunctionGetRequest\x1a!.modal.client.FunctionGetResponse\x12m\n\x14\x46unctionGetCallGraph\x12).modal.client.FunctionGetCallGraphRequest\x1a*.modal.client.FunctionGetCallGraphResponse\x12\x64\n\x17\x46unctionGetCurrentStats\x12,.modal.client.FunctionGetCurrentStatsRequest\x1a\x1b.modal.client.FunctionStats\x12\x88\x01\n\x1d\x46unctionGetDynamicConcurrency\x12\x32.modal.client.FunctionGetDynamicConcurrencyRequest\x1a\x33.modal.client.FunctionGetDynamicConcurrencyResponse\x12\x64\n\x11\x46unctionGetInputs\x12&.modal.client.FunctionGetInputsRequest\x1a\'.modal.client.FunctionGetInputsResponse\x12g\n\x12\x46unctionGetOutputs\x12\'.modal.client.FunctionGetOutputsRequest\x1a(.modal.client.FunctionGetOutputsResponse\x12p\n\x15\x46unctionGetSerialized\x12*.modal.client.FunctionGetSerializedRequest\x1a+.modal.client.FunctionGetSerializedResponse\x12R\n\x0b\x46unctionMap\x12 .modal.client.FunctionMapRequest\x1a!.modal.client.FunctionMapResponse\x12\x64\n\x11\x46unctionPrecreate\x12&.modal.client.FunctionPrecreateRequest\x1a\'.modal.client.FunctionPrecreateResponse\x12\x64\n\x11\x46unctionPutInputs\x12&.modal.client.FunctionPutInputsRequest\x1a\'.modal.client.FunctionPutInputsResponse\x12U\n\x12\x46unctionPutOutputs\x12\'.modal.client.FunctionPutOutputsRequest\x1a\x16.google.protobuf.Empty\x12j\n\x13\x46unctionRetryInputs\x12(.modal.client.FunctionRetryInputsRequest\x1a).modal.client.FunctionRetryInputsResponse\x12G\n\x15\x46unctionStartPtyShell\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\x12\x8b\x01\n\x1e\x46unctionUpdateSchedulingParams\x12\x33.modal.client.FunctionUpdateSchedulingParamsRequest\x1a\x34.modal.client.FunctionUpdateSchedulingParamsResponse\x12R\n\x0bImageFromId\x12 .modal.client.ImageFromIdRequest\x1a!.modal.client.ImageFromIdResponse\x12\x61\n\x10ImageGetOrCreate\x12%.modal.client.ImageGetOrCreateRequest\x1a&.modal.client.ImageGetOrCreateResponse\x12i\n\x12ImageJoinStreaming\x12\'.modal.client.ImageJoinStreamingRequest\x1a(.modal.client.ImageJoinStreamingResponse0\x01\x12\x61\n\x10MountGetOrCreate\x12%.modal.client.MountGetOrCreateRequest\x1a&.modal.client.MountGetOrCreateResponse\x12U\n\x0cMountPutFile\x12!.modal.client.MountPutFileRequest\x1a\".modal.client.MountPutFileResponse\x12i\n\x1cNotebookKernelPublishResults\x12\x31.modal.client.NotebookKernelPublishResultsRequest\x1a\x16.google.protobuf.Empty\x12R\n\x0bProxyCreate\x12 .modal.client.ProxyCreateRequest\x1a!.modal.client.ProxyCreateResponse\x12G\n\x0bProxyDelete\x12 .modal.client.ProxyDeleteRequest\x1a\x16.google.protobuf.Empty\x12I\n\x08ProxyGet\x12\x1d.modal.client.ProxyGetRequest\x1a\x1e.modal.client.ProxyGetResponse\x12\x61\n\x10ProxyGetOrCreate\x12%.modal.client.ProxyGetOrCreateRequest\x1a&.modal.client.ProxyGetOrCreateResponse\x12\x44\n\tProxyList\x12\x16.google.protobuf.Empty\x1a\x1f.modal.client.ProxyListResponse\x12\x45\n\nQueueClear\x12\x1f.modal.client.QueueClearRequest\x1a\x16.google.protobuf.Empty\x12G\n\x0bQueueDelete\x12 .modal.client.QueueDeleteRequest\x1a\x16.google.protobuf.Empty\x12I\n\x08QueueGet\x12\x1d.modal.client.QueueGetRequest\x1a\x1e.modal.client.QueueGetResponse\x12\x61\n\x10QueueGetOrCreate\x12%.modal.client.QueueGetOrCreateRequest\x1a&.modal.client.QueueGetOrCreateResponse\x12M\n\x0eQueueHeartbeat\x12#.modal.client.QueueHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12I\n\x08QueueLen\x12\x1d.modal.client.QueueLenRequest\x1a\x1e.modal.client.QueueLenResponse\x12L\n\tQueueList\x12\x1e.modal.client.QueueListRequest\x1a\x1f.modal.client.QueueListResponse\x12[\n\x0eQueueNextItems\x12#.modal.client.QueueNextItemsRequest\x1a$.modal.client.QueueNextItemsResponse\x12\x41\n\x08QueuePut\x12\x1d.modal.client.QueuePutRequest\x1a\x16.google.protobuf.Empty\x12X\n\rSandboxCreate\x12\".modal.client.SandboxCreateRequest\x1a#.modal.client.SandboxCreateResponse\x12T\n\x0eSandboxGetLogs\x12#.modal.client.SandboxGetLogsRequest\x1a\x1b.modal.client.TaskLogsBatch0\x01\x12\x61\n\x10SandboxGetTaskId\x12%.modal.client.SandboxGetTaskIdRequest\x1a&.modal.client.SandboxGetTaskIdResponse\x12\x64\n\x11SandboxGetTunnels\x12&.modal.client.SandboxGetTunnelsRequest\x1a\'.modal.client.SandboxGetTunnelsResponse\x12R\n\x0bSandboxList\x12 .modal.client.SandboxListRequest\x1a!.modal.client.SandboxListResponse\x12[\n\x0eSandboxRestore\x12#.modal.client.SandboxRestoreRequest\x1a$.modal.client.SandboxRestoreResponse\x12^\n\x0fSandboxSnapshot\x12$.modal.client.SandboxSnapshotRequest\x1a%.modal.client.SandboxSnapshotResponse\x12\x64\n\x11SandboxSnapshotFs\x12&.modal.client.SandboxSnapshotFsRequest\x1a\'.modal.client.SandboxSnapshotFsResponse\x12j\n\x13SandboxSnapshotWait\x12(.modal.client.SandboxSnapshotWaitRequest\x1a).modal.client.SandboxSnapshotWaitResponse\x12\x64\n\x11SandboxStdinWrite\x12&.modal.client.SandboxStdinWriteRequest\x1a\'.modal.client.SandboxStdinWriteResponse\x12M\n\x0eSandboxTagsSet\x12#.modal.client.SandboxTagsSetRequest\x1a\x16.google.protobuf.Empty\x12\x61\n\x10SandboxTerminate\x12%.modal.client.SandboxTerminateRequest\x1a&.modal.client.SandboxTerminateResponse\x12R\n\x0bSandboxWait\x12 .modal.client.SandboxWaitRequest\x1a!.modal.client.SandboxWaitResponse\x12I\n\x0cSecretDelete\x12!.modal.client.SecretDeleteRequest\x1a\x16.google.protobuf.Empty\x12\x64\n\x11SecretGetOrCreate\x12&.modal.client.SecretGetOrCreateRequest\x1a\'.modal.client.SecretGetOrCreateResponse\x12O\n\nSecretList\x12\x1f.modal.client.SecretListRequest\x1a .modal.client.SecretListResponse\x12U\n\x12SharedVolumeDelete\x12\'.modal.client.SharedVolumeDeleteRequest\x1a\x16.google.protobuf.Empty\x12j\n\x13SharedVolumeGetFile\x12(.modal.client.SharedVolumeGetFileRequest\x1a).modal.client.SharedVolumeGetFileResponse\x12v\n\x17SharedVolumeGetOrCreate\x12,.modal.client.SharedVolumeGetOrCreateRequest\x1a-.modal.client.SharedVolumeGetOrCreateResponse\x12[\n\x15SharedVolumeHeartbeat\x12*.modal.client.SharedVolumeHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12\x61\n\x10SharedVolumeList\x12%.modal.client.SharedVolumeListRequest\x1a&.modal.client.SharedVolumeListResponse\x12p\n\x15SharedVolumeListFiles\x12*.modal.client.SharedVolumeListFilesRequest\x1a+.modal.client.SharedVolumeListFilesResponse\x12x\n\x1bSharedVolumeListFilesStream\x12*.modal.client.SharedVolumeListFilesRequest\x1a+.modal.client.SharedVolumeListFilesResponse0\x01\x12j\n\x13SharedVolumePutFile\x12(.modal.client.SharedVolumePutFileRequest\x1a).modal.client.SharedVolumePutFileResponse\x12]\n\x16SharedVolumeRemoveFile\x12+.modal.client.SharedVolumeRemoveFileRequest\x1a\x16.google.protobuf.Empty\x12\x61\n\x10TaskClusterHello\x12%.modal.client.TaskClusterHelloRequest\x1a&.modal.client.TaskClusterHelloResponse\x12T\n\x11TaskCurrentInputs\x12\x16.google.protobuf.Empty\x1a\'.modal.client.TaskCurrentInputsResponse\x12I\n\x08TaskList\x12\x1d.modal.client.TaskListRequest\x1a\x1e.modal.client.TaskListResponse\x12\x45\n\nTaskResult\x12\x1f.modal.client.TaskResultRequest\x1a\x16.google.protobuf.Empty\x12^\n\x0fTokenFlowCreate\x12$.modal.client.TokenFlowCreateRequest\x1a%.modal.client.TokenFlowCreateResponse\x12X\n\rTokenFlowWait\x12\".modal.client.TokenFlowWaitRequest\x1a#.modal.client.TokenFlowWaitResponse\x12R\n\x0bTunnelStart\x12 .modal.client.TunnelStartRequest\x1a!.modal.client.TunnelStartResponse\x12O\n\nTunnelStop\x12\x1f.modal.client.TunnelStopRequest\x1a .modal.client.TunnelStopResponse\x12U\n\x0cVolumeCommit\x12!.modal.client.VolumeCommitRequest\x1a\".modal.client.VolumeCommitResponse\x12O\n\x0fVolumeCopyFiles\x12$.modal.client.VolumeCopyFilesRequest\x1a\x16.google.protobuf.Empty\x12I\n\x0cVolumeDelete\x12!.modal.client.VolumeDeleteRequest\x1a\x16.google.protobuf.Empty\x12X\n\rVolumeGetFile\x12\".modal.client.VolumeGetFileRequest\x1a#.modal.client.VolumeGetFileResponse\x12\x64\n\x11VolumeGetOrCreate\x12&.modal.client.VolumeGetOrCreateRequest\x1a\'.modal.client.VolumeGetOrCreateResponse\x12O\n\x0fVolumeHeartbeat\x12$.modal.client.VolumeHeartbeatRequest\x1a\x16.google.protobuf.Empty\x12O\n\nVolumeList\x12\x1f.modal.client.VolumeListRequest\x1a .modal.client.VolumeListResponse\x12`\n\x0fVolumeListFiles\x12$.modal.client.VolumeListFilesRequest\x1a%.modal.client.VolumeListFilesResponse0\x01\x12M\n\x0eVolumePutFiles\x12#.modal.client.VolumePutFilesRequest\x1a\x16.google.protobuf.Empty\x12I\n\x0cVolumeReload\x12!.modal.client.VolumeReloadRequest\x1a\x16.google.protobuf.Empty\x12Q\n\x10VolumeRemoveFile\x12%.modal.client.VolumeRemoveFileRequest\x1a\x16.google.protobuf.Empty\x12I\n\x0cVolumeRename\x12!.modal.client.VolumeRenameRequest\x1a\x16.google.protobuf.Empty\x12X\n\x13WorkspaceNameLookup\x12\x16.google.protobuf.Empty\x1a).modal.client.WorkspaceNameLookupResponseb\x06proto3')
23
23
 
24
24
  _APPDEPLOYVISIBILITY = DESCRIPTOR.enum_types_by_name['AppDeployVisibility']
25
25
  AppDeployVisibility = enum_type_wrapper.EnumTypeWrapper(_APPDEPLOYVISIBILITY)
@@ -116,6 +116,7 @@ CLIENT_TYPE_CLIENT = 1
116
116
  CLIENT_TYPE_WORKER = 2
117
117
  CLIENT_TYPE_CONTAINER = 3
118
118
  CLIENT_TYPE_WEB_SERVER = 5
119
+ CLIENT_TYPE_NOTEBOOK_KERNEL = 6
119
120
  CLOUD_PROVIDER_UNSPECIFIED = 0
120
121
  CLOUD_PROVIDER_AWS = 1
121
122
  CLOUD_PROVIDER_GCP = 2
@@ -3359,64 +3360,64 @@ if _descriptor._USE_C_DESCRIPTORS == False:
3359
3360
  _WEBURLINFO.fields_by_name['has_unique_hash']._serialized_options = b'\030\001'
3360
3361
  _WORKSPACENAMELOOKUPRESPONSE.fields_by_name['workspace_name']._options = None
3361
3362
  _WORKSPACENAMELOOKUPRESPONSE.fields_by_name['workspace_name']._serialized_options = b'\030\001'
3362
- _APPDEPLOYVISIBILITY._serialized_start=46555
3363
- _APPDEPLOYVISIBILITY._serialized_end=46686
3364
- _APPDISCONNECTREASON._serialized_start=46689
3365
- _APPDISCONNECTREASON._serialized_end=46978
3366
- _APPSTATE._serialized_start=46981
3367
- _APPSTATE._serialized_end=47254
3368
- _APPSTOPSOURCE._serialized_start=47257
3369
- _APPSTOPSOURCE._serialized_end=47390
3370
- _CERTIFICATESTATUS._serialized_start=47393
3371
- _CERTIFICATESTATUS._serialized_end=47538
3372
- _CHECKPOINTSTATUS._serialized_start=47541
3373
- _CHECKPOINTSTATUS._serialized_end=47718
3374
- _CLIENTTYPE._serialized_start=47721
3375
- _CLIENTTYPE._serialized_end=47865
3376
- _CLOUDPROVIDER._serialized_start=47868
3377
- _CLOUDPROVIDER._serialized_end=48036
3378
- _DNSRECORDTYPE._serialized_start=48038
3379
- _DNSRECORDTYPE._serialized_end=48128
3380
- _DATAFORMAT._serialized_start=48130
3381
- _DATAFORMAT._serialized_end=48249
3382
- _DEPLOYMENTNAMESPACE._serialized_start=48252
3383
- _DEPLOYMENTNAMESPACE._serialized_end=48380
3384
- _EXECOUTPUTOPTION._serialized_start=48383
3385
- _EXECOUTPUTOPTION._serialized_end=48529
3386
- _FILEDESCRIPTOR._serialized_start=48532
3387
- _FILEDESCRIPTOR._serialized_end=48663
3388
- _FUNCTIONCALLINVOCATIONTYPE._serialized_start=48666
3389
- _FUNCTIONCALLINVOCATIONTYPE._serialized_end=48917
3390
- _FUNCTIONCALLTYPE._serialized_start=48919
3391
- _FUNCTIONCALLTYPE._serialized_end=49031
3392
- _GPUTYPE._serialized_start=49034
3393
- _GPUTYPE._serialized_end=49240
3394
- _OBJECTCREATIONTYPE._serialized_start=49243
3395
- _OBJECTCREATIONTYPE._serialized_end=49531
3396
- _PARAMETERTYPE._serialized_start=49533
3397
- _PARAMETERTYPE._serialized_end=49619
3398
- _PROGRESSTYPE._serialized_start=49621
3399
- _PROGRESSTYPE._serialized_end=49683
3400
- _PROXYIPSTATUS._serialized_start=49686
3401
- _PROXYIPSTATUS._serialized_end=49855
3402
- _PROXYTYPE._serialized_start=49857
3403
- _PROXYTYPE._serialized_end=49941
3404
- _RATELIMITINTERVAL._serialized_start=49943
3405
- _RATELIMITINTERVAL._serialized_end=50063
3406
- _REGISTRYAUTHTYPE._serialized_start=50066
3407
- _REGISTRYAUTHTYPE._serialized_end=50244
3408
- _SEEKWHENCE._serialized_start=50246
3409
- _SEEKWHENCE._serialized_end=50300
3410
- _SYSTEMERRORCODE._serialized_start=50303
3411
- _SYSTEMERRORCODE._serialized_end=50727
3412
- _TASKSTATE._serialized_start=50730
3413
- _TASKSTATE._serialized_end=51078
3414
- _VOLUMEFSVERSION._serialized_start=51080
3415
- _VOLUMEFSVERSION._serialized_end=51184
3416
- _WEBHOOKASYNCMODE._serialized_start=51187
3417
- _WEBHOOKASYNCMODE._serialized_end=51341
3418
- _WEBHOOKTYPE._serialized_start=51344
3419
- _WEBHOOKTYPE._serialized_end=51497
3363
+ _APPDEPLOYVISIBILITY._serialized_start=46548
3364
+ _APPDEPLOYVISIBILITY._serialized_end=46679
3365
+ _APPDISCONNECTREASON._serialized_start=46682
3366
+ _APPDISCONNECTREASON._serialized_end=46971
3367
+ _APPSTATE._serialized_start=46974
3368
+ _APPSTATE._serialized_end=47247
3369
+ _APPSTOPSOURCE._serialized_start=47250
3370
+ _APPSTOPSOURCE._serialized_end=47383
3371
+ _CERTIFICATESTATUS._serialized_start=47386
3372
+ _CERTIFICATESTATUS._serialized_end=47531
3373
+ _CHECKPOINTSTATUS._serialized_start=47534
3374
+ _CHECKPOINTSTATUS._serialized_end=47711
3375
+ _CLIENTTYPE._serialized_start=47714
3376
+ _CLIENTTYPE._serialized_end=47891
3377
+ _CLOUDPROVIDER._serialized_start=47894
3378
+ _CLOUDPROVIDER._serialized_end=48062
3379
+ _DNSRECORDTYPE._serialized_start=48064
3380
+ _DNSRECORDTYPE._serialized_end=48154
3381
+ _DATAFORMAT._serialized_start=48156
3382
+ _DATAFORMAT._serialized_end=48275
3383
+ _DEPLOYMENTNAMESPACE._serialized_start=48278
3384
+ _DEPLOYMENTNAMESPACE._serialized_end=48406
3385
+ _EXECOUTPUTOPTION._serialized_start=48409
3386
+ _EXECOUTPUTOPTION._serialized_end=48555
3387
+ _FILEDESCRIPTOR._serialized_start=48558
3388
+ _FILEDESCRIPTOR._serialized_end=48689
3389
+ _FUNCTIONCALLINVOCATIONTYPE._serialized_start=48692
3390
+ _FUNCTIONCALLINVOCATIONTYPE._serialized_end=48943
3391
+ _FUNCTIONCALLTYPE._serialized_start=48945
3392
+ _FUNCTIONCALLTYPE._serialized_end=49057
3393
+ _GPUTYPE._serialized_start=49060
3394
+ _GPUTYPE._serialized_end=49266
3395
+ _OBJECTCREATIONTYPE._serialized_start=49269
3396
+ _OBJECTCREATIONTYPE._serialized_end=49557
3397
+ _PARAMETERTYPE._serialized_start=49559
3398
+ _PARAMETERTYPE._serialized_end=49645
3399
+ _PROGRESSTYPE._serialized_start=49647
3400
+ _PROGRESSTYPE._serialized_end=49709
3401
+ _PROXYIPSTATUS._serialized_start=49712
3402
+ _PROXYIPSTATUS._serialized_end=49881
3403
+ _PROXYTYPE._serialized_start=49883
3404
+ _PROXYTYPE._serialized_end=49967
3405
+ _RATELIMITINTERVAL._serialized_start=49969
3406
+ _RATELIMITINTERVAL._serialized_end=50089
3407
+ _REGISTRYAUTHTYPE._serialized_start=50092
3408
+ _REGISTRYAUTHTYPE._serialized_end=50270
3409
+ _SEEKWHENCE._serialized_start=50272
3410
+ _SEEKWHENCE._serialized_end=50326
3411
+ _SYSTEMERRORCODE._serialized_start=50329
3412
+ _SYSTEMERRORCODE._serialized_end=50753
3413
+ _TASKSTATE._serialized_start=50756
3414
+ _TASKSTATE._serialized_end=51104
3415
+ _VOLUMEFSVERSION._serialized_start=51106
3416
+ _VOLUMEFSVERSION._serialized_end=51210
3417
+ _WEBHOOKASYNCMODE._serialized_start=51213
3418
+ _WEBHOOKASYNCMODE._serialized_end=51367
3419
+ _WEBHOOKTYPE._serialized_start=51370
3420
+ _WEBHOOKTYPE._serialized_end=51523
3420
3421
  _APPCLIENTDISCONNECTREQUEST._serialized_start=157
3421
3422
  _APPCLIENTDISCONNECTREQUEST._serialized_end=271
3422
3423
  _APPCREATEREQUEST._serialized_start=274
@@ -3974,211 +3975,211 @@ if _descriptor._USE_C_DESCRIPTORS == False:
3974
3975
  _S3MOUNT._serialized_start=35823
3975
3976
  _S3MOUNT._serialized_end=35923
3976
3977
  _SANDBOX._serialized_start=35926
3977
- _SANDBOX._serialized_end=36848
3978
- _SANDBOXCREATEREQUEST._serialized_start=36850
3979
- _SANDBOXCREATEREQUEST._serialized_end=36963
3980
- _SANDBOXCREATERESPONSE._serialized_start=36965
3981
- _SANDBOXCREATERESPONSE._serialized_end=37008
3982
- _SANDBOXGETLOGSREQUEST._serialized_start=37011
3983
- _SANDBOXGETLOGSREQUEST._serialized_end=37149
3984
- _SANDBOXGETTASKIDREQUEST._serialized_start=37151
3985
- _SANDBOXGETTASKIDREQUEST._serialized_end=37256
3986
- _SANDBOXGETTASKIDRESPONSE._serialized_start=37259
3987
- _SANDBOXGETTASKIDRESPONSE._serialized_end=37390
3988
- _SANDBOXGETTUNNELSREQUEST._serialized_start=37392
3989
- _SANDBOXGETTUNNELSREQUEST._serialized_end=37455
3990
- _SANDBOXGETTUNNELSRESPONSE._serialized_start=37457
3991
- _SANDBOXGETTUNNELSRESPONSE._serialized_end=37572
3992
- _SANDBOXHANDLEMETADATA._serialized_start=37574
3993
- _SANDBOXHANDLEMETADATA._serialized_end=37642
3994
- _SANDBOXINFO._serialized_start=37644
3995
- _SANDBOXINFO._serialized_end=37738
3996
- _SANDBOXLISTREQUEST._serialized_start=37741
3997
- _SANDBOXLISTREQUEST._serialized_end=37895
3998
- _SANDBOXLISTRESPONSE._serialized_start=37897
3999
- _SANDBOXLISTRESPONSE._serialized_end=37964
4000
- _SANDBOXRESTOREREQUEST._serialized_start=37966
4001
- _SANDBOXRESTOREREQUEST._serialized_end=38058
4002
- _SANDBOXRESTORERESPONSE._serialized_start=38060
4003
- _SANDBOXRESTORERESPONSE._serialized_end=38104
4004
- _SANDBOXSNAPSHOTFSREQUEST._serialized_start=38106
4005
- _SANDBOXSNAPSHOTFSREQUEST._serialized_end=38169
4006
- _SANDBOXSNAPSHOTFSRESPONSE._serialized_start=38172
4007
- _SANDBOXSNAPSHOTFSRESPONSE._serialized_end=38315
4008
- _SANDBOXSNAPSHOTREQUEST._serialized_start=38317
4009
- _SANDBOXSNAPSHOTREQUEST._serialized_end=38361
4010
- _SANDBOXSNAPSHOTRESPONSE._serialized_start=38363
4011
- _SANDBOXSNAPSHOTRESPONSE._serialized_end=38409
4012
- _SANDBOXSNAPSHOTWAITREQUEST._serialized_start=38411
4013
- _SANDBOXSNAPSHOTWAITREQUEST._serialized_end=38477
4014
- _SANDBOXSNAPSHOTWAITRESPONSE._serialized_start=38479
4015
- _SANDBOXSNAPSHOTWAITRESPONSE._serialized_end=38553
4016
- _SANDBOXSTDINWRITEREQUEST._serialized_start=38555
4017
- _SANDBOXSTDINWRITEREQUEST._serialized_end=38644
4018
- _SANDBOXSTDINWRITERESPONSE._serialized_start=38646
4019
- _SANDBOXSTDINWRITERESPONSE._serialized_end=38673
4020
- _SANDBOXTAG._serialized_start=38675
4021
- _SANDBOXTAG._serialized_end=38724
4022
- _SANDBOXTAGSSETREQUEST._serialized_start=38726
4023
- _SANDBOXTAGSSETREQUEST._serialized_end=38835
4024
- _SANDBOXTERMINATEREQUEST._serialized_start=38837
4025
- _SANDBOXTERMINATEREQUEST._serialized_end=38882
4026
- _SANDBOXTERMINATERESPONSE._serialized_start=38884
4027
- _SANDBOXTERMINATERESPONSE._serialized_end=38964
4028
- _SANDBOXWAITREQUEST._serialized_start=38966
4029
- _SANDBOXWAITREQUEST._serialized_end=39023
4030
- _SANDBOXWAITRESPONSE._serialized_start=39025
4031
- _SANDBOXWAITRESPONSE._serialized_end=39091
4032
- _SCHEDULE._serialized_start=39094
4033
- _SCHEDULE._serialized_end=39364
4034
- _SCHEDULE_CRON._serialized_start=39200
4035
- _SCHEDULE_CRON._serialized_end=39227
4036
- _SCHEDULE_PERIOD._serialized_start=39229
4037
- _SCHEDULE_PERIOD._serialized_end=39346
4038
- _SCHEDULERPLACEMENT._serialized_start=39367
4039
- _SCHEDULERPLACEMENT._serialized_end=39505
4040
- _SECRETCREATEREQUEST._serialized_start=39508
4041
- _SECRETCREATEREQUEST._serialized_end=39716
4042
- _SECRETCREATEREQUEST_ENVDICTENTRY._serialized_start=39670
4043
- _SECRETCREATEREQUEST_ENVDICTENTRY._serialized_end=39716
4044
- _SECRETCREATERESPONSE._serialized_start=39718
4045
- _SECRETCREATERESPONSE._serialized_end=39759
4046
- _SECRETDELETEREQUEST._serialized_start=39761
4047
- _SECRETDELETEREQUEST._serialized_end=39801
4048
- _SECRETGETORCREATEREQUEST._serialized_start=39804
4049
- _SECRETGETORCREATEREQUEST._serialized_end=40163
4050
- _SECRETGETORCREATEREQUEST_ENVDICTENTRY._serialized_start=39670
4051
- _SECRETGETORCREATEREQUEST_ENVDICTENTRY._serialized_end=39716
4052
- _SECRETGETORCREATERESPONSE._serialized_start=40165
4053
- _SECRETGETORCREATERESPONSE._serialized_end=40211
4054
- _SECRETLISTITEM._serialized_start=40213
4055
- _SECRETLISTITEM._serialized_end=40331
4056
- _SECRETLISTREQUEST._serialized_start=40333
4057
- _SECRETLISTREQUEST._serialized_end=40378
4058
- _SECRETLISTRESPONSE._serialized_start=40380
4059
- _SECRETLISTRESPONSE._serialized_end=40471
4060
- _SHAREDVOLUMEDELETEREQUEST._serialized_start=40473
4061
- _SHAREDVOLUMEDELETEREQUEST._serialized_end=40526
4062
- _SHAREDVOLUMEGETFILEREQUEST._serialized_start=40528
4063
- _SHAREDVOLUMEGETFILEREQUEST._serialized_end=40596
4064
- _SHAREDVOLUMEGETFILERESPONSE._serialized_start=40598
4065
- _SHAREDVOLUMEGETFILERESPONSE._serialized_end=40681
4066
- _SHAREDVOLUMEGETORCREATEREQUEST._serialized_start=40684
4067
- _SHAREDVOLUMEGETORCREATEREQUEST._serialized_end=40907
4068
- _SHAREDVOLUMEGETORCREATERESPONSE._serialized_start=40909
4069
- _SHAREDVOLUMEGETORCREATERESPONSE._serialized_end=40968
4070
- _SHAREDVOLUMEHEARTBEATREQUEST._serialized_start=40970
4071
- _SHAREDVOLUMEHEARTBEATREQUEST._serialized_end=41026
4072
- _SHAREDVOLUMELISTFILESREQUEST._serialized_start=41028
4073
- _SHAREDVOLUMELISTFILESREQUEST._serialized_end=41098
4074
- _SHAREDVOLUMELISTFILESRESPONSE._serialized_start=41100
4075
- _SHAREDVOLUMELISTFILESRESPONSE._serialized_end=41173
4076
- _SHAREDVOLUMELISTITEM._serialized_start=41176
4077
- _SHAREDVOLUMELISTITEM._serialized_end=41312
4078
- _SHAREDVOLUMELISTREQUEST._serialized_start=41314
4079
- _SHAREDVOLUMELISTREQUEST._serialized_end=41365
4080
- _SHAREDVOLUMELISTRESPONSE._serialized_start=41367
4081
- _SHAREDVOLUMELISTRESPONSE._serialized_end=41470
4082
- _SHAREDVOLUMEMOUNT._serialized_start=41473
4083
- _SHAREDVOLUMEMOUNT._serialized_end=41619
4084
- _SHAREDVOLUMEPUTFILEREQUEST._serialized_start=41622
4085
- _SHAREDVOLUMEPUTFILEREQUEST._serialized_end=41789
4086
- _SHAREDVOLUMEPUTFILERESPONSE._serialized_start=41791
4087
- _SHAREDVOLUMEPUTFILERESPONSE._serialized_end=41836
4088
- _SHAREDVOLUMEREMOVEFILEREQUEST._serialized_start=41838
4089
- _SHAREDVOLUMEREMOVEFILEREQUEST._serialized_end=41934
4090
- _SYSTEMERRORMESSAGE._serialized_start=41936
4091
- _SYSTEMERRORMESSAGE._serialized_end=42030
4092
- _TASKCLUSTERHELLOREQUEST._serialized_start=42032
4093
- _TASKCLUSTERHELLOREQUEST._serialized_end=42096
4094
- _TASKCLUSTERHELLORESPONSE._serialized_start=42098
4095
- _TASKCLUSTERHELLORESPONSE._serialized_end=42189
4096
- _TASKCURRENTINPUTSRESPONSE._serialized_start=42191
4097
- _TASKCURRENTINPUTSRESPONSE._serialized_end=42237
4098
- _TASKINFO._serialized_start=42240
4099
- _TASKINFO._serialized_end=42369
4100
- _TASKLISTREQUEST._serialized_start=42371
4101
- _TASKLISTREQUEST._serialized_end=42414
4102
- _TASKLISTRESPONSE._serialized_start=42416
4103
- _TASKLISTRESPONSE._serialized_end=42474
4104
- _TASKLOGS._serialized_start=42477
4105
- _TASKLOGS._serialized_end=42715
4106
- _TASKLOGSBATCH._serialized_start=42718
4107
- _TASKLOGSBATCH._serialized_end=42916
4108
- _TASKPROGRESS._serialized_start=42918
4109
- _TASKPROGRESS._serialized_end=43030
4110
- _TASKRESULTREQUEST._serialized_start=43032
4111
- _TASKRESULTREQUEST._serialized_end=43096
4112
- _TASKSTATS._serialized_start=43098
4113
- _TASKSTATS._serialized_end=43187
4114
- _TASKTEMPLATE._serialized_start=43190
4115
- _TASKTEMPLATE._serialized_end=43342
4116
- _TOKENFLOWCREATEREQUEST._serialized_start=43344
4117
- _TOKENFLOWCREATEREQUEST._serialized_end=43430
4118
- _TOKENFLOWCREATERESPONSE._serialized_start=43432
4119
- _TOKENFLOWCREATERESPONSE._serialized_end=43532
4120
- _TOKENFLOWWAITREQUEST._serialized_start=43534
4121
- _TOKENFLOWWAITREQUEST._serialized_end=43617
4122
- _TOKENFLOWWAITRESPONSE._serialized_start=43619
4123
- _TOKENFLOWWAITRESPONSE._serialized_end=43727
4124
- _TUNNELDATA._serialized_start=43730
4125
- _TUNNELDATA._serialized_end=43898
4126
- _TUNNELSTARTREQUEST._serialized_start=43900
4127
- _TUNNELSTARTREQUEST._serialized_end=43955
4128
- _TUNNELSTARTRESPONSE._serialized_start=43958
4129
- _TUNNELSTARTRESPONSE._serialized_end=44111
4130
- _TUNNELSTOPREQUEST._serialized_start=44113
4131
- _TUNNELSTOPREQUEST._serialized_end=44146
4132
- _TUNNELSTOPRESPONSE._serialized_start=44148
4133
- _TUNNELSTOPRESPONSE._serialized_end=44184
4134
- _VOLUMECOMMITREQUEST._serialized_start=44186
4135
- _VOLUMECOMMITREQUEST._serialized_end=44232
4136
- _VOLUMECOMMITRESPONSE._serialized_start=44234
4137
- _VOLUMECOMMITRESPONSE._serialized_end=44277
4138
- _VOLUMECOPYFILESREQUEST._serialized_start=44279
4139
- _VOLUMECOPYFILESREQUEST._serialized_end=44378
4140
- _VOLUMEDELETEREQUEST._serialized_start=44380
4141
- _VOLUMEDELETEREQUEST._serialized_end=44450
4142
- _VOLUMEGETFILEREQUEST._serialized_start=44452
4143
- _VOLUMEGETFILEREQUEST._serialized_end=44535
4144
- _VOLUMEGETFILERESPONSE._serialized_start=44537
4145
- _VOLUMEGETFILERESPONSE._serialized_end=44656
4146
- _VOLUMEGETORCREATEREQUEST._serialized_start=44659
4147
- _VOLUMEGETORCREATEREQUEST._serialized_end=44924
4148
- _VOLUMEGETORCREATERESPONSE._serialized_start=44926
4149
- _VOLUMEGETORCREATERESPONSE._serialized_end=45020
4150
- _VOLUMEHEARTBEATREQUEST._serialized_start=45022
4151
- _VOLUMEHEARTBEATREQUEST._serialized_end=45065
4152
- _VOLUMELISTFILESREQUEST._serialized_start=45067
4153
- _VOLUMELISTFILESREQUEST._serialized_end=45185
4154
- _VOLUMELISTFILESRESPONSE._serialized_start=45187
4155
- _VOLUMELISTFILESRESPONSE._serialized_end=45254
4156
- _VOLUMELISTITEM._serialized_start=45256
4157
- _VOLUMELISTITEM._serialized_end=45326
4158
- _VOLUMELISTREQUEST._serialized_start=45328
4159
- _VOLUMELISTREQUEST._serialized_end=45373
4160
- _VOLUMELISTRESPONSE._serialized_start=45375
4161
- _VOLUMELISTRESPONSE._serialized_end=45466
4162
- _VOLUMEMOUNT._serialized_start=45468
4163
- _VOLUMEMOUNT._serialized_end=45554
4164
- _VOLUMEPUTFILESREQUEST._serialized_start=45556
4165
- _VOLUMEPUTFILESREQUEST._serialized_end=45681
4166
- _VOLUMERELOADREQUEST._serialized_start=45683
4167
- _VOLUMERELOADREQUEST._serialized_end=45723
4168
- _VOLUMEREMOVEFILEREQUEST._serialized_start=45725
4169
- _VOLUMEREMOVEFILEREQUEST._serialized_end=45808
4170
- _VOLUMERENAMEREQUEST._serialized_start=45810
4171
- _VOLUMERENAMEREQUEST._serialized_end=45870
4172
- _WARNING._serialized_start=45873
4173
- _WARNING._serialized_end=46063
4174
- _WARNING_WARNINGTYPE._serialized_start=45950
4175
- _WARNING_WARNINGTYPE._serialized_end=46063
4176
- _WEBURLINFO._serialized_start=46065
4177
- _WEBURLINFO._serialized_end=46147
4178
- _WEBHOOKCONFIG._serialized_start=46150
4179
- _WEBHOOKCONFIG._serialized_end=46475
4180
- _WORKSPACENAMELOOKUPRESPONSE._serialized_start=46477
4181
- _WORKSPACENAMELOOKUPRESPONSE._serialized_end=46552
4182
- _MODALCLIENT._serialized_start=51500
4183
- _MODALCLIENT._serialized_end=64048
3978
+ _SANDBOX._serialized_end=36841
3979
+ _SANDBOXCREATEREQUEST._serialized_start=36843
3980
+ _SANDBOXCREATEREQUEST._serialized_end=36956
3981
+ _SANDBOXCREATERESPONSE._serialized_start=36958
3982
+ _SANDBOXCREATERESPONSE._serialized_end=37001
3983
+ _SANDBOXGETLOGSREQUEST._serialized_start=37004
3984
+ _SANDBOXGETLOGSREQUEST._serialized_end=37142
3985
+ _SANDBOXGETTASKIDREQUEST._serialized_start=37144
3986
+ _SANDBOXGETTASKIDREQUEST._serialized_end=37249
3987
+ _SANDBOXGETTASKIDRESPONSE._serialized_start=37252
3988
+ _SANDBOXGETTASKIDRESPONSE._serialized_end=37383
3989
+ _SANDBOXGETTUNNELSREQUEST._serialized_start=37385
3990
+ _SANDBOXGETTUNNELSREQUEST._serialized_end=37448
3991
+ _SANDBOXGETTUNNELSRESPONSE._serialized_start=37450
3992
+ _SANDBOXGETTUNNELSRESPONSE._serialized_end=37565
3993
+ _SANDBOXHANDLEMETADATA._serialized_start=37567
3994
+ _SANDBOXHANDLEMETADATA._serialized_end=37635
3995
+ _SANDBOXINFO._serialized_start=37637
3996
+ _SANDBOXINFO._serialized_end=37731
3997
+ _SANDBOXLISTREQUEST._serialized_start=37734
3998
+ _SANDBOXLISTREQUEST._serialized_end=37888
3999
+ _SANDBOXLISTRESPONSE._serialized_start=37890
4000
+ _SANDBOXLISTRESPONSE._serialized_end=37957
4001
+ _SANDBOXRESTOREREQUEST._serialized_start=37959
4002
+ _SANDBOXRESTOREREQUEST._serialized_end=38051
4003
+ _SANDBOXRESTORERESPONSE._serialized_start=38053
4004
+ _SANDBOXRESTORERESPONSE._serialized_end=38097
4005
+ _SANDBOXSNAPSHOTFSREQUEST._serialized_start=38099
4006
+ _SANDBOXSNAPSHOTFSREQUEST._serialized_end=38162
4007
+ _SANDBOXSNAPSHOTFSRESPONSE._serialized_start=38165
4008
+ _SANDBOXSNAPSHOTFSRESPONSE._serialized_end=38308
4009
+ _SANDBOXSNAPSHOTREQUEST._serialized_start=38310
4010
+ _SANDBOXSNAPSHOTREQUEST._serialized_end=38354
4011
+ _SANDBOXSNAPSHOTRESPONSE._serialized_start=38356
4012
+ _SANDBOXSNAPSHOTRESPONSE._serialized_end=38402
4013
+ _SANDBOXSNAPSHOTWAITREQUEST._serialized_start=38404
4014
+ _SANDBOXSNAPSHOTWAITREQUEST._serialized_end=38470
4015
+ _SANDBOXSNAPSHOTWAITRESPONSE._serialized_start=38472
4016
+ _SANDBOXSNAPSHOTWAITRESPONSE._serialized_end=38546
4017
+ _SANDBOXSTDINWRITEREQUEST._serialized_start=38548
4018
+ _SANDBOXSTDINWRITEREQUEST._serialized_end=38637
4019
+ _SANDBOXSTDINWRITERESPONSE._serialized_start=38639
4020
+ _SANDBOXSTDINWRITERESPONSE._serialized_end=38666
4021
+ _SANDBOXTAG._serialized_start=38668
4022
+ _SANDBOXTAG._serialized_end=38717
4023
+ _SANDBOXTAGSSETREQUEST._serialized_start=38719
4024
+ _SANDBOXTAGSSETREQUEST._serialized_end=38828
4025
+ _SANDBOXTERMINATEREQUEST._serialized_start=38830
4026
+ _SANDBOXTERMINATEREQUEST._serialized_end=38875
4027
+ _SANDBOXTERMINATERESPONSE._serialized_start=38877
4028
+ _SANDBOXTERMINATERESPONSE._serialized_end=38957
4029
+ _SANDBOXWAITREQUEST._serialized_start=38959
4030
+ _SANDBOXWAITREQUEST._serialized_end=39016
4031
+ _SANDBOXWAITRESPONSE._serialized_start=39018
4032
+ _SANDBOXWAITRESPONSE._serialized_end=39084
4033
+ _SCHEDULE._serialized_start=39087
4034
+ _SCHEDULE._serialized_end=39357
4035
+ _SCHEDULE_CRON._serialized_start=39193
4036
+ _SCHEDULE_CRON._serialized_end=39220
4037
+ _SCHEDULE_PERIOD._serialized_start=39222
4038
+ _SCHEDULE_PERIOD._serialized_end=39339
4039
+ _SCHEDULERPLACEMENT._serialized_start=39360
4040
+ _SCHEDULERPLACEMENT._serialized_end=39498
4041
+ _SECRETCREATEREQUEST._serialized_start=39501
4042
+ _SECRETCREATEREQUEST._serialized_end=39709
4043
+ _SECRETCREATEREQUEST_ENVDICTENTRY._serialized_start=39663
4044
+ _SECRETCREATEREQUEST_ENVDICTENTRY._serialized_end=39709
4045
+ _SECRETCREATERESPONSE._serialized_start=39711
4046
+ _SECRETCREATERESPONSE._serialized_end=39752
4047
+ _SECRETDELETEREQUEST._serialized_start=39754
4048
+ _SECRETDELETEREQUEST._serialized_end=39794
4049
+ _SECRETGETORCREATEREQUEST._serialized_start=39797
4050
+ _SECRETGETORCREATEREQUEST._serialized_end=40156
4051
+ _SECRETGETORCREATEREQUEST_ENVDICTENTRY._serialized_start=39663
4052
+ _SECRETGETORCREATEREQUEST_ENVDICTENTRY._serialized_end=39709
4053
+ _SECRETGETORCREATERESPONSE._serialized_start=40158
4054
+ _SECRETGETORCREATERESPONSE._serialized_end=40204
4055
+ _SECRETLISTITEM._serialized_start=40206
4056
+ _SECRETLISTITEM._serialized_end=40324
4057
+ _SECRETLISTREQUEST._serialized_start=40326
4058
+ _SECRETLISTREQUEST._serialized_end=40371
4059
+ _SECRETLISTRESPONSE._serialized_start=40373
4060
+ _SECRETLISTRESPONSE._serialized_end=40464
4061
+ _SHAREDVOLUMEDELETEREQUEST._serialized_start=40466
4062
+ _SHAREDVOLUMEDELETEREQUEST._serialized_end=40519
4063
+ _SHAREDVOLUMEGETFILEREQUEST._serialized_start=40521
4064
+ _SHAREDVOLUMEGETFILEREQUEST._serialized_end=40589
4065
+ _SHAREDVOLUMEGETFILERESPONSE._serialized_start=40591
4066
+ _SHAREDVOLUMEGETFILERESPONSE._serialized_end=40674
4067
+ _SHAREDVOLUMEGETORCREATEREQUEST._serialized_start=40677
4068
+ _SHAREDVOLUMEGETORCREATEREQUEST._serialized_end=40900
4069
+ _SHAREDVOLUMEGETORCREATERESPONSE._serialized_start=40902
4070
+ _SHAREDVOLUMEGETORCREATERESPONSE._serialized_end=40961
4071
+ _SHAREDVOLUMEHEARTBEATREQUEST._serialized_start=40963
4072
+ _SHAREDVOLUMEHEARTBEATREQUEST._serialized_end=41019
4073
+ _SHAREDVOLUMELISTFILESREQUEST._serialized_start=41021
4074
+ _SHAREDVOLUMELISTFILESREQUEST._serialized_end=41091
4075
+ _SHAREDVOLUMELISTFILESRESPONSE._serialized_start=41093
4076
+ _SHAREDVOLUMELISTFILESRESPONSE._serialized_end=41166
4077
+ _SHAREDVOLUMELISTITEM._serialized_start=41169
4078
+ _SHAREDVOLUMELISTITEM._serialized_end=41305
4079
+ _SHAREDVOLUMELISTREQUEST._serialized_start=41307
4080
+ _SHAREDVOLUMELISTREQUEST._serialized_end=41358
4081
+ _SHAREDVOLUMELISTRESPONSE._serialized_start=41360
4082
+ _SHAREDVOLUMELISTRESPONSE._serialized_end=41463
4083
+ _SHAREDVOLUMEMOUNT._serialized_start=41466
4084
+ _SHAREDVOLUMEMOUNT._serialized_end=41612
4085
+ _SHAREDVOLUMEPUTFILEREQUEST._serialized_start=41615
4086
+ _SHAREDVOLUMEPUTFILEREQUEST._serialized_end=41782
4087
+ _SHAREDVOLUMEPUTFILERESPONSE._serialized_start=41784
4088
+ _SHAREDVOLUMEPUTFILERESPONSE._serialized_end=41829
4089
+ _SHAREDVOLUMEREMOVEFILEREQUEST._serialized_start=41831
4090
+ _SHAREDVOLUMEREMOVEFILEREQUEST._serialized_end=41927
4091
+ _SYSTEMERRORMESSAGE._serialized_start=41929
4092
+ _SYSTEMERRORMESSAGE._serialized_end=42023
4093
+ _TASKCLUSTERHELLOREQUEST._serialized_start=42025
4094
+ _TASKCLUSTERHELLOREQUEST._serialized_end=42089
4095
+ _TASKCLUSTERHELLORESPONSE._serialized_start=42091
4096
+ _TASKCLUSTERHELLORESPONSE._serialized_end=42182
4097
+ _TASKCURRENTINPUTSRESPONSE._serialized_start=42184
4098
+ _TASKCURRENTINPUTSRESPONSE._serialized_end=42230
4099
+ _TASKINFO._serialized_start=42233
4100
+ _TASKINFO._serialized_end=42362
4101
+ _TASKLISTREQUEST._serialized_start=42364
4102
+ _TASKLISTREQUEST._serialized_end=42407
4103
+ _TASKLISTRESPONSE._serialized_start=42409
4104
+ _TASKLISTRESPONSE._serialized_end=42467
4105
+ _TASKLOGS._serialized_start=42470
4106
+ _TASKLOGS._serialized_end=42708
4107
+ _TASKLOGSBATCH._serialized_start=42711
4108
+ _TASKLOGSBATCH._serialized_end=42909
4109
+ _TASKPROGRESS._serialized_start=42911
4110
+ _TASKPROGRESS._serialized_end=43023
4111
+ _TASKRESULTREQUEST._serialized_start=43025
4112
+ _TASKRESULTREQUEST._serialized_end=43089
4113
+ _TASKSTATS._serialized_start=43091
4114
+ _TASKSTATS._serialized_end=43180
4115
+ _TASKTEMPLATE._serialized_start=43183
4116
+ _TASKTEMPLATE._serialized_end=43335
4117
+ _TOKENFLOWCREATEREQUEST._serialized_start=43337
4118
+ _TOKENFLOWCREATEREQUEST._serialized_end=43423
4119
+ _TOKENFLOWCREATERESPONSE._serialized_start=43425
4120
+ _TOKENFLOWCREATERESPONSE._serialized_end=43525
4121
+ _TOKENFLOWWAITREQUEST._serialized_start=43527
4122
+ _TOKENFLOWWAITREQUEST._serialized_end=43610
4123
+ _TOKENFLOWWAITRESPONSE._serialized_start=43612
4124
+ _TOKENFLOWWAITRESPONSE._serialized_end=43720
4125
+ _TUNNELDATA._serialized_start=43723
4126
+ _TUNNELDATA._serialized_end=43891
4127
+ _TUNNELSTARTREQUEST._serialized_start=43893
4128
+ _TUNNELSTARTREQUEST._serialized_end=43948
4129
+ _TUNNELSTARTRESPONSE._serialized_start=43951
4130
+ _TUNNELSTARTRESPONSE._serialized_end=44104
4131
+ _TUNNELSTOPREQUEST._serialized_start=44106
4132
+ _TUNNELSTOPREQUEST._serialized_end=44139
4133
+ _TUNNELSTOPRESPONSE._serialized_start=44141
4134
+ _TUNNELSTOPRESPONSE._serialized_end=44177
4135
+ _VOLUMECOMMITREQUEST._serialized_start=44179
4136
+ _VOLUMECOMMITREQUEST._serialized_end=44225
4137
+ _VOLUMECOMMITRESPONSE._serialized_start=44227
4138
+ _VOLUMECOMMITRESPONSE._serialized_end=44270
4139
+ _VOLUMECOPYFILESREQUEST._serialized_start=44272
4140
+ _VOLUMECOPYFILESREQUEST._serialized_end=44371
4141
+ _VOLUMEDELETEREQUEST._serialized_start=44373
4142
+ _VOLUMEDELETEREQUEST._serialized_end=44443
4143
+ _VOLUMEGETFILEREQUEST._serialized_start=44445
4144
+ _VOLUMEGETFILEREQUEST._serialized_end=44528
4145
+ _VOLUMEGETFILERESPONSE._serialized_start=44530
4146
+ _VOLUMEGETFILERESPONSE._serialized_end=44649
4147
+ _VOLUMEGETORCREATEREQUEST._serialized_start=44652
4148
+ _VOLUMEGETORCREATEREQUEST._serialized_end=44917
4149
+ _VOLUMEGETORCREATERESPONSE._serialized_start=44919
4150
+ _VOLUMEGETORCREATERESPONSE._serialized_end=45013
4151
+ _VOLUMEHEARTBEATREQUEST._serialized_start=45015
4152
+ _VOLUMEHEARTBEATREQUEST._serialized_end=45058
4153
+ _VOLUMELISTFILESREQUEST._serialized_start=45060
4154
+ _VOLUMELISTFILESREQUEST._serialized_end=45178
4155
+ _VOLUMELISTFILESRESPONSE._serialized_start=45180
4156
+ _VOLUMELISTFILESRESPONSE._serialized_end=45247
4157
+ _VOLUMELISTITEM._serialized_start=45249
4158
+ _VOLUMELISTITEM._serialized_end=45319
4159
+ _VOLUMELISTREQUEST._serialized_start=45321
4160
+ _VOLUMELISTREQUEST._serialized_end=45366
4161
+ _VOLUMELISTRESPONSE._serialized_start=45368
4162
+ _VOLUMELISTRESPONSE._serialized_end=45459
4163
+ _VOLUMEMOUNT._serialized_start=45461
4164
+ _VOLUMEMOUNT._serialized_end=45547
4165
+ _VOLUMEPUTFILESREQUEST._serialized_start=45549
4166
+ _VOLUMEPUTFILESREQUEST._serialized_end=45674
4167
+ _VOLUMERELOADREQUEST._serialized_start=45676
4168
+ _VOLUMERELOADREQUEST._serialized_end=45716
4169
+ _VOLUMEREMOVEFILEREQUEST._serialized_start=45718
4170
+ _VOLUMEREMOVEFILEREQUEST._serialized_end=45801
4171
+ _VOLUMERENAMEREQUEST._serialized_start=45803
4172
+ _VOLUMERENAMEREQUEST._serialized_end=45863
4173
+ _WARNING._serialized_start=45866
4174
+ _WARNING._serialized_end=46056
4175
+ _WARNING_WARNINGTYPE._serialized_start=45943
4176
+ _WARNING_WARNINGTYPE._serialized_end=46056
4177
+ _WEBURLINFO._serialized_start=46058
4178
+ _WEBURLINFO._serialized_end=46140
4179
+ _WEBHOOKCONFIG._serialized_start=46143
4180
+ _WEBHOOKCONFIG._serialized_end=46468
4181
+ _WORKSPACENAMELOOKUPRESPONSE._serialized_start=46470
4182
+ _WORKSPACENAMELOOKUPRESPONSE._serialized_end=46545
4183
+ _MODALCLIENT._serialized_start=51526
4184
+ _MODALCLIENT._serialized_end=64074
4184
4185
  # @@protoc_insertion_point(module_scope)
modal_proto/api_pb2.pyi CHANGED
@@ -180,6 +180,7 @@ class _ClientTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._Enu
180
180
  CLIENT_TYPE_WORKER: _ClientType.ValueType # 2
181
181
  CLIENT_TYPE_CONTAINER: _ClientType.ValueType # 3
182
182
  CLIENT_TYPE_WEB_SERVER: _ClientType.ValueType # 5
183
+ CLIENT_TYPE_NOTEBOOK_KERNEL: _ClientType.ValueType # 6
183
184
 
184
185
  class ClientType(_ClientType, metaclass=_ClientTypeEnumTypeWrapper): ...
185
186
 
@@ -188,6 +189,7 @@ CLIENT_TYPE_CLIENT: ClientType.ValueType # 1
188
189
  CLIENT_TYPE_WORKER: ClientType.ValueType # 2
189
190
  CLIENT_TYPE_CONTAINER: ClientType.ValueType # 3
190
191
  CLIENT_TYPE_WEB_SERVER: ClientType.ValueType # 5
192
+ CLIENT_TYPE_NOTEBOOK_KERNEL: ClientType.ValueType # 6
191
193
  global___ClientType = ClientType
192
194
 
193
195
  class _CloudProvider:
@@ -7045,7 +7047,7 @@ class Sandbox(google.protobuf.message.Message):
7045
7047
  I6PN_ENABLED_FIELD_NUMBER: builtins.int
7046
7048
  NETWORK_ACCESS_FIELD_NUMBER: builtins.int
7047
7049
  PROXY_ID_FIELD_NUMBER: builtins.int
7048
- ENABLE_MEMORY_SNAPSHOT_FIELD_NUMBER: builtins.int
7050
+ ENABLE_SNAPSHOT_FIELD_NUMBER: builtins.int
7049
7051
  SNAPSHOT_VERSION_FIELD_NUMBER: builtins.int
7050
7052
  @property
7051
7053
  def entrypoint_args(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
@@ -7083,8 +7085,10 @@ class Sandbox(google.protobuf.message.Message):
7083
7085
  def network_access(self) -> global___NetworkAccess:
7084
7086
  """Network access configuration beyond simple allow/block."""
7085
7087
  proxy_id: builtins.str
7086
- enable_memory_snapshot: builtins.bool
7087
- """Enable memory snapshots."""
7088
+ enable_snapshot: builtins.bool
7089
+ """Enable snapshotting the sandbox (both memory and filesystem).
7090
+ This doesn't need to be enabled to save the filesystem as an image (i.e. a filesystem-only snapshot).
7091
+ """
7088
7092
  snapshot_version: builtins.int
7089
7093
  """Used to pin gVisor version for memory-snapshottable sandboxes.
7090
7094
  This field is set by the server, not the client.
@@ -7113,11 +7117,11 @@ class Sandbox(google.protobuf.message.Message):
7113
7117
  i6pn_enabled: builtins.bool = ...,
7114
7118
  network_access: global___NetworkAccess | None = ...,
7115
7119
  proxy_id: builtins.str | None = ...,
7116
- enable_memory_snapshot: builtins.bool = ...,
7120
+ enable_snapshot: builtins.bool = ...,
7117
7121
  snapshot_version: builtins.int | None = ...,
7118
7122
  ) -> None: ...
7119
7123
  def HasField(self, field_name: typing_extensions.Literal["_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "_snapshot_version", b"_snapshot_version", "_workdir", b"_workdir", "network_access", b"network_access", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "scheduler_placement", b"scheduler_placement", "snapshot_version", b"snapshot_version", "workdir", b"workdir"]) -> builtins.bool: ...
7120
- def ClearField(self, field_name: typing_extensions.Literal["_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "_snapshot_version", b"_snapshot_version", "_workdir", b"_workdir", "block_network", b"block_network", "cloud_bucket_mounts", b"cloud_bucket_mounts", "cloud_provider", b"cloud_provider", "enable_memory_snapshot", b"enable_memory_snapshot", "entrypoint_args", b"entrypoint_args", "i6pn_enabled", b"i6pn_enabled", "image_id", b"image_id", "mount_ids", b"mount_ids", "network_access", b"network_access", "nfs_mounts", b"nfs_mounts", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "runtime_debug", b"runtime_debug", "s3_mounts", b"s3_mounts", "scheduler_placement", b"scheduler_placement", "secret_ids", b"secret_ids", "snapshot_version", b"snapshot_version", "timeout_secs", b"timeout_secs", "volume_mounts", b"volume_mounts", "workdir", b"workdir", "worker_id", b"worker_id"]) -> None: ...
7124
+ def ClearField(self, field_name: typing_extensions.Literal["_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "_snapshot_version", b"_snapshot_version", "_workdir", b"_workdir", "block_network", b"block_network", "cloud_bucket_mounts", b"cloud_bucket_mounts", "cloud_provider", b"cloud_provider", "enable_snapshot", b"enable_snapshot", "entrypoint_args", b"entrypoint_args", "i6pn_enabled", b"i6pn_enabled", "image_id", b"image_id", "mount_ids", b"mount_ids", "network_access", b"network_access", "nfs_mounts", b"nfs_mounts", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "runtime_debug", b"runtime_debug", "s3_mounts", b"s3_mounts", "scheduler_placement", b"scheduler_placement", "secret_ids", b"secret_ids", "snapshot_version", b"snapshot_version", "timeout_secs", b"timeout_secs", "volume_mounts", b"volume_mounts", "workdir", b"workdir", "worker_id", b"worker_id"]) -> None: ...
7121
7125
  @typing.overload
7122
7126
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_proxy_id", b"_proxy_id"]) -> typing_extensions.Literal["proxy_id"] | None: ...
7123
7127
  @typing.overload
@@ -1,4 +1,4 @@
1
1
  # Copyright Modal Labs 2025
2
2
 
3
3
  # Note: Reset this value to -1 whenever you make a minor `0.X` release of the client.
4
- build_number = 27 # git: 98aede5
4
+ build_number = 29 # git: 7adbcc1