langgraph-api 0.5.4__py3-none-any.whl → 0.7.3__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.
Files changed (122) hide show
  1. langgraph_api/__init__.py +1 -1
  2. langgraph_api/api/__init__.py +93 -27
  3. langgraph_api/api/a2a.py +36 -32
  4. langgraph_api/api/assistants.py +114 -26
  5. langgraph_api/api/mcp.py +3 -3
  6. langgraph_api/api/meta.py +15 -2
  7. langgraph_api/api/openapi.py +27 -17
  8. langgraph_api/api/profile.py +108 -0
  9. langgraph_api/api/runs.py +114 -57
  10. langgraph_api/api/store.py +19 -2
  11. langgraph_api/api/threads.py +133 -10
  12. langgraph_api/asgi_transport.py +14 -9
  13. langgraph_api/auth/custom.py +23 -13
  14. langgraph_api/cli.py +86 -41
  15. langgraph_api/command.py +2 -2
  16. langgraph_api/config/__init__.py +532 -0
  17. langgraph_api/config/_parse.py +58 -0
  18. langgraph_api/config/schemas.py +431 -0
  19. langgraph_api/cron_scheduler.py +17 -1
  20. langgraph_api/encryption/__init__.py +15 -0
  21. langgraph_api/encryption/aes_json.py +158 -0
  22. langgraph_api/encryption/context.py +35 -0
  23. langgraph_api/encryption/custom.py +280 -0
  24. langgraph_api/encryption/middleware.py +632 -0
  25. langgraph_api/encryption/shared.py +63 -0
  26. langgraph_api/errors.py +12 -1
  27. langgraph_api/executor_entrypoint.py +11 -6
  28. langgraph_api/feature_flags.py +19 -0
  29. langgraph_api/graph.py +163 -64
  30. langgraph_api/{grpc_ops → grpc}/client.py +142 -12
  31. langgraph_api/{grpc_ops → grpc}/config_conversion.py +16 -10
  32. langgraph_api/grpc/generated/__init__.py +29 -0
  33. langgraph_api/grpc/generated/checkpointer_pb2.py +63 -0
  34. langgraph_api/grpc/generated/checkpointer_pb2.pyi +99 -0
  35. langgraph_api/grpc/generated/checkpointer_pb2_grpc.py +329 -0
  36. langgraph_api/grpc/generated/core_api_pb2.py +216 -0
  37. langgraph_api/{grpc_ops → grpc}/generated/core_api_pb2.pyi +292 -372
  38. langgraph_api/{grpc_ops → grpc}/generated/core_api_pb2_grpc.py +252 -31
  39. langgraph_api/grpc/generated/engine_common_pb2.py +219 -0
  40. langgraph_api/{grpc_ops → grpc}/generated/engine_common_pb2.pyi +178 -104
  41. langgraph_api/grpc/generated/enum_cancel_run_action_pb2.py +37 -0
  42. langgraph_api/grpc/generated/enum_cancel_run_action_pb2.pyi +12 -0
  43. langgraph_api/grpc/generated/enum_cancel_run_action_pb2_grpc.py +24 -0
  44. langgraph_api/grpc/generated/enum_control_signal_pb2.py +37 -0
  45. langgraph_api/grpc/generated/enum_control_signal_pb2.pyi +16 -0
  46. langgraph_api/grpc/generated/enum_control_signal_pb2_grpc.py +24 -0
  47. langgraph_api/grpc/generated/enum_durability_pb2.py +37 -0
  48. langgraph_api/grpc/generated/enum_durability_pb2.pyi +16 -0
  49. langgraph_api/grpc/generated/enum_durability_pb2_grpc.py +24 -0
  50. langgraph_api/grpc/generated/enum_multitask_strategy_pb2.py +37 -0
  51. langgraph_api/grpc/generated/enum_multitask_strategy_pb2.pyi +16 -0
  52. langgraph_api/grpc/generated/enum_multitask_strategy_pb2_grpc.py +24 -0
  53. langgraph_api/grpc/generated/enum_run_status_pb2.py +37 -0
  54. langgraph_api/grpc/generated/enum_run_status_pb2.pyi +22 -0
  55. langgraph_api/grpc/generated/enum_run_status_pb2_grpc.py +24 -0
  56. langgraph_api/grpc/generated/enum_stream_mode_pb2.py +37 -0
  57. langgraph_api/grpc/generated/enum_stream_mode_pb2.pyi +28 -0
  58. langgraph_api/grpc/generated/enum_stream_mode_pb2_grpc.py +24 -0
  59. langgraph_api/grpc/generated/enum_thread_status_pb2.py +37 -0
  60. langgraph_api/grpc/generated/enum_thread_status_pb2.pyi +16 -0
  61. langgraph_api/grpc/generated/enum_thread_status_pb2_grpc.py +24 -0
  62. langgraph_api/grpc/generated/enum_thread_stream_mode_pb2.py +37 -0
  63. langgraph_api/grpc/generated/enum_thread_stream_mode_pb2.pyi +16 -0
  64. langgraph_api/grpc/generated/enum_thread_stream_mode_pb2_grpc.py +24 -0
  65. langgraph_api/grpc/generated/errors_pb2.py +39 -0
  66. langgraph_api/grpc/generated/errors_pb2.pyi +21 -0
  67. langgraph_api/grpc/generated/errors_pb2_grpc.py +24 -0
  68. langgraph_api/grpc/ops/__init__.py +370 -0
  69. langgraph_api/grpc/ops/assistants.py +424 -0
  70. langgraph_api/grpc/ops/runs.py +792 -0
  71. langgraph_api/grpc/ops/threads.py +1013 -0
  72. langgraph_api/http.py +16 -5
  73. langgraph_api/js/client.mts +1 -4
  74. langgraph_api/js/package.json +28 -27
  75. langgraph_api/js/remote.py +39 -17
  76. langgraph_api/js/sse.py +2 -2
  77. langgraph_api/js/ui.py +1 -1
  78. langgraph_api/js/yarn.lock +1139 -869
  79. langgraph_api/metadata.py +29 -3
  80. langgraph_api/middleware/http_logger.py +1 -1
  81. langgraph_api/middleware/private_network.py +7 -7
  82. langgraph_api/models/run.py +44 -26
  83. langgraph_api/otel_context.py +205 -0
  84. langgraph_api/patch.py +2 -2
  85. langgraph_api/queue_entrypoint.py +34 -35
  86. langgraph_api/route.py +33 -1
  87. langgraph_api/schema.py +84 -9
  88. langgraph_api/self_hosted_logs.py +2 -2
  89. langgraph_api/self_hosted_metrics.py +73 -3
  90. langgraph_api/serde.py +16 -4
  91. langgraph_api/server.py +33 -31
  92. langgraph_api/state.py +3 -2
  93. langgraph_api/store.py +25 -16
  94. langgraph_api/stream.py +20 -16
  95. langgraph_api/thread_ttl.py +28 -13
  96. langgraph_api/timing/__init__.py +25 -0
  97. langgraph_api/timing/profiler.py +200 -0
  98. langgraph_api/timing/timer.py +318 -0
  99. langgraph_api/utils/__init__.py +53 -8
  100. langgraph_api/utils/config.py +2 -1
  101. langgraph_api/utils/future.py +10 -6
  102. langgraph_api/utils/uuids.py +29 -62
  103. langgraph_api/validation.py +6 -0
  104. langgraph_api/webhook.py +120 -6
  105. langgraph_api/worker.py +54 -24
  106. {langgraph_api-0.5.4.dist-info → langgraph_api-0.7.3.dist-info}/METADATA +8 -6
  107. langgraph_api-0.7.3.dist-info/RECORD +168 -0
  108. {langgraph_api-0.5.4.dist-info → langgraph_api-0.7.3.dist-info}/WHEEL +1 -1
  109. langgraph_runtime/__init__.py +1 -0
  110. langgraph_runtime/routes.py +11 -0
  111. logging.json +1 -3
  112. openapi.json +635 -537
  113. langgraph_api/config.py +0 -523
  114. langgraph_api/grpc_ops/generated/__init__.py +0 -5
  115. langgraph_api/grpc_ops/generated/core_api_pb2.py +0 -275
  116. langgraph_api/grpc_ops/generated/engine_common_pb2.py +0 -194
  117. langgraph_api/grpc_ops/ops.py +0 -1045
  118. langgraph_api-0.5.4.dist-info/RECORD +0 -121
  119. /langgraph_api/{grpc_ops → grpc}/__init__.py +0 -0
  120. /langgraph_api/{grpc_ops → grpc}/generated/engine_common_pb2_grpc.py +0 -0
  121. {langgraph_api-0.5.4.dist-info → langgraph_api-0.7.3.dist-info}/entry_points.txt +0 -0
  122. {langgraph_api-0.5.4.dist-info → langgraph_api-0.7.3.dist-info}/licenses/LICENSE +0 -0
@@ -524,21 +524,26 @@ class ThreadsStub(object):
524
524
  request_serializer=core__api__pb2.SetThreadStatusRequest.SerializeToString,
525
525
  response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
526
526
  _registered_method=True)
527
+ self.Stream = channel.unary_stream(
528
+ '/coreApi.Threads/Stream',
529
+ request_serializer=core__api__pb2.StreamThreadRequest.SerializeToString,
530
+ response_deserializer=core__api__pb2.StreamEvent.FromString,
531
+ _registered_method=True)
527
532
  self.SetJointStatus = channel.unary_unary(
528
533
  '/coreApi.Threads/SetJointStatus',
529
534
  request_serializer=core__api__pb2.SetThreadJointStatusRequest.SerializeToString,
530
535
  response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
531
536
  _registered_method=True)
532
- self.JointRollback = channel.unary_unary(
533
- '/coreApi.Threads/JointRollback',
534
- request_serializer=core__api__pb2.JointRollbackRequest.SerializeToString,
535
- response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
536
- _registered_method=True)
537
537
  self.SweepTTL = channel.unary_unary(
538
538
  '/coreApi.Threads/SweepTTL',
539
539
  request_serializer=core__api__pb2.SweepThreadsTTLRequest.SerializeToString,
540
540
  response_deserializer=core__api__pb2.SweepThreadsTTLResponse.FromString,
541
541
  _registered_method=True)
542
+ self.GetGraphID = channel.unary_unary(
543
+ '/coreApi.Threads/GetGraphID',
544
+ request_serializer=core__api__pb2.GetGraphIDRequest.SerializeToString,
545
+ response_deserializer=core__api__pb2.GetGraphIDResponse.FromString,
546
+ _registered_method=True)
542
547
 
543
548
 
544
549
  class ThreadsServicer(object):
@@ -592,15 +597,15 @@ class ThreadsServicer(object):
592
597
  context.set_details('Method not implemented!')
593
598
  raise NotImplementedError('Method not implemented!')
594
599
 
595
- def SetJointStatus(self, request, context):
596
- """Set the status of a thread and run atomically.
600
+ def Stream(self, request, context):
601
+ """Stream run events for all runs associated with the thread.
597
602
  """
598
603
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
599
604
  context.set_details('Method not implemented!')
600
605
  raise NotImplementedError('Method not implemented!')
601
606
 
602
- def JointRollback(self, request, context):
603
- """Roll back a run and update a thread's status atomically.
607
+ def SetJointStatus(self, request, context):
608
+ """Set the status of a thread and run atomically.
604
609
  """
605
610
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
606
611
  context.set_details('Method not implemented!')
@@ -613,6 +618,13 @@ class ThreadsServicer(object):
613
618
  context.set_details('Method not implemented!')
614
619
  raise NotImplementedError('Method not implemented!')
615
620
 
621
+ def GetGraphID(self, request, context):
622
+ """Get graph ID for the latest run in a thread (internal method, no auth).
623
+ """
624
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
625
+ context.set_details('Method not implemented!')
626
+ raise NotImplementedError('Method not implemented!')
627
+
616
628
 
617
629
  def add_ThreadsServicer_to_server(servicer, server):
618
630
  rpc_method_handlers = {
@@ -656,21 +668,26 @@ def add_ThreadsServicer_to_server(servicer, server):
656
668
  request_deserializer=core__api__pb2.SetThreadStatusRequest.FromString,
657
669
  response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
658
670
  ),
671
+ 'Stream': grpc.unary_stream_rpc_method_handler(
672
+ servicer.Stream,
673
+ request_deserializer=core__api__pb2.StreamThreadRequest.FromString,
674
+ response_serializer=core__api__pb2.StreamEvent.SerializeToString,
675
+ ),
659
676
  'SetJointStatus': grpc.unary_unary_rpc_method_handler(
660
677
  servicer.SetJointStatus,
661
678
  request_deserializer=core__api__pb2.SetThreadJointStatusRequest.FromString,
662
679
  response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
663
680
  ),
664
- 'JointRollback': grpc.unary_unary_rpc_method_handler(
665
- servicer.JointRollback,
666
- request_deserializer=core__api__pb2.JointRollbackRequest.FromString,
667
- response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
668
- ),
669
681
  'SweepTTL': grpc.unary_unary_rpc_method_handler(
670
682
  servicer.SweepTTL,
671
683
  request_deserializer=core__api__pb2.SweepThreadsTTLRequest.FromString,
672
684
  response_serializer=core__api__pb2.SweepThreadsTTLResponse.SerializeToString,
673
685
  ),
686
+ 'GetGraphID': grpc.unary_unary_rpc_method_handler(
687
+ servicer.GetGraphID,
688
+ request_deserializer=core__api__pb2.GetGraphIDRequest.FromString,
689
+ response_serializer=core__api__pb2.GetGraphIDResponse.SerializeToString,
690
+ ),
674
691
  }
675
692
  generic_handler = grpc.method_handlers_generic_handler(
676
693
  'coreApi.Threads', rpc_method_handlers)
@@ -899,7 +916,7 @@ class Threads(object):
899
916
  _registered_method=True)
900
917
 
901
918
  @staticmethod
902
- def SetJointStatus(request,
919
+ def Stream(request,
903
920
  target,
904
921
  options=(),
905
922
  channel_credentials=None,
@@ -909,12 +926,12 @@ class Threads(object):
909
926
  wait_for_ready=None,
910
927
  timeout=None,
911
928
  metadata=None):
912
- return grpc.experimental.unary_unary(
929
+ return grpc.experimental.unary_stream(
913
930
  request,
914
931
  target,
915
- '/coreApi.Threads/SetJointStatus',
916
- core__api__pb2.SetThreadJointStatusRequest.SerializeToString,
917
- google_dot_protobuf_dot_empty__pb2.Empty.FromString,
932
+ '/coreApi.Threads/Stream',
933
+ core__api__pb2.StreamThreadRequest.SerializeToString,
934
+ core__api__pb2.StreamEvent.FromString,
918
935
  options,
919
936
  channel_credentials,
920
937
  insecure,
@@ -926,7 +943,7 @@ class Threads(object):
926
943
  _registered_method=True)
927
944
 
928
945
  @staticmethod
929
- def JointRollback(request,
946
+ def SetJointStatus(request,
930
947
  target,
931
948
  options=(),
932
949
  channel_credentials=None,
@@ -939,8 +956,8 @@ class Threads(object):
939
956
  return grpc.experimental.unary_unary(
940
957
  request,
941
958
  target,
942
- '/coreApi.Threads/JointRollback',
943
- core__api__pb2.JointRollbackRequest.SerializeToString,
959
+ '/coreApi.Threads/SetJointStatus',
960
+ core__api__pb2.SetThreadJointStatusRequest.SerializeToString,
944
961
  google_dot_protobuf_dot_empty__pb2.Empty.FromString,
945
962
  options,
946
963
  channel_credentials,
@@ -979,6 +996,33 @@ class Threads(object):
979
996
  metadata,
980
997
  _registered_method=True)
981
998
 
999
+ @staticmethod
1000
+ def GetGraphID(request,
1001
+ target,
1002
+ options=(),
1003
+ channel_credentials=None,
1004
+ call_credentials=None,
1005
+ insecure=False,
1006
+ compression=None,
1007
+ wait_for_ready=None,
1008
+ timeout=None,
1009
+ metadata=None):
1010
+ return grpc.experimental.unary_unary(
1011
+ request,
1012
+ target,
1013
+ '/coreApi.Threads/GetGraphID',
1014
+ core__api__pb2.GetGraphIDRequest.SerializeToString,
1015
+ core__api__pb2.GetGraphIDResponse.FromString,
1016
+ options,
1017
+ channel_credentials,
1018
+ insecure,
1019
+ call_credentials,
1020
+ compression,
1021
+ wait_for_ready,
1022
+ timeout,
1023
+ metadata,
1024
+ _registered_method=True)
1025
+
982
1026
 
983
1027
  class RunsStub(object):
984
1028
  """Missing associated documentation comment in .proto file."""
@@ -992,7 +1036,7 @@ class RunsStub(object):
992
1036
  self.Create = channel.unary_unary(
993
1037
  '/coreApi.Runs/Create',
994
1038
  request_serializer=core__api__pb2.CreateRunRequest.SerializeToString,
995
- response_deserializer=core__api__pb2.Run.FromString,
1039
+ response_deserializer=core__api__pb2.CreateRunResponse.FromString,
996
1040
  _registered_method=True)
997
1041
  self.Get = channel.unary_unary(
998
1042
  '/coreApi.Runs/Get',
@@ -1019,10 +1063,30 @@ class RunsStub(object):
1019
1063
  request_serializer=core__api__pb2.SetRunStatusRequest.SerializeToString,
1020
1064
  response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
1021
1065
  _registered_method=True)
1066
+ self.Stream = channel.unary_stream(
1067
+ '/coreApi.Runs/Stream',
1068
+ request_serializer=core__api__pb2.StreamRunRequest.SerializeToString,
1069
+ response_deserializer=core__api__pb2.StreamEvent.FromString,
1070
+ _registered_method=True)
1071
+ self.Enter = channel.unary_stream(
1072
+ '/coreApi.Runs/Enter',
1073
+ request_serializer=core__api__pb2.EnterRunRequest.SerializeToString,
1074
+ response_deserializer=core__api__pb2.ControlEvent.FromString,
1075
+ _registered_method=True)
1076
+ self.MarkDone = channel.unary_unary(
1077
+ '/coreApi.Runs/MarkDone',
1078
+ request_serializer=core__api__pb2.MarkRunDoneRequest.SerializeToString,
1079
+ response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
1080
+ _registered_method=True)
1022
1081
  self.Stats = channel.unary_unary(
1023
1082
  '/coreApi.Runs/Stats',
1024
1083
  request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
1025
- response_deserializer=core__api__pb2.QueueStats.FromString,
1084
+ response_deserializer=core__api__pb2.RunStats.FromString,
1085
+ _registered_method=True)
1086
+ self.Count = channel.unary_unary(
1087
+ '/coreApi.Runs/Count',
1088
+ request_serializer=core__api__pb2.CountRunsRequest.SerializeToString,
1089
+ response_deserializer=core__api__pb2.CountResponse.FromString,
1026
1090
  _registered_method=True)
1027
1091
  self.Next = channel.unary_unary(
1028
1092
  '/coreApi.Runs/Next',
@@ -1075,15 +1139,44 @@ class RunsServicer(object):
1075
1139
  context.set_details('Method not implemented!')
1076
1140
  raise NotImplementedError('Method not implemented!')
1077
1141
 
1142
+ def Stream(self, request, context):
1143
+ """Stream run events.
1144
+ """
1145
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1146
+ context.set_details('Method not implemented!')
1147
+ raise NotImplementedError('Method not implemented!')
1148
+
1149
+ def Enter(self, request, context):
1150
+ """Enter a run - starts heartbeat and streams control signals (internal worker method)
1151
+ Returns a stream of interrupt/rollback signals for the specified run
1152
+ """
1153
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1154
+ context.set_details('Method not implemented!')
1155
+ raise NotImplementedError('Method not implemented!')
1156
+
1157
+ def MarkDone(self, request, context):
1158
+ """Mark a run as done (internal worker method)
1159
+ """
1160
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1161
+ context.set_details('Method not implemented!')
1162
+ raise NotImplementedError('Method not implemented!')
1163
+
1078
1164
  def Stats(self, request, context):
1079
- """Get run queue statistics (internal method)
1165
+ """Get run statistics (internal method, no auth)
1166
+ """
1167
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1168
+ context.set_details('Method not implemented!')
1169
+ raise NotImplementedError('Method not implemented!')
1170
+
1171
+ def Count(self, request, context):
1172
+ """Count runs matching criteria (internal method, no auth)
1080
1173
  """
1081
1174
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1082
1175
  context.set_details('Method not implemented!')
1083
1176
  raise NotImplementedError('Method not implemented!')
1084
1177
 
1085
1178
  def Next(self, request, context):
1086
- """Get next run from queue (internal worker method)
1179
+ """Get next run from queue (internal worker method, no auth)
1087
1180
  TODO: come back
1088
1181
  """
1089
1182
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
@@ -1091,7 +1184,7 @@ class RunsServicer(object):
1091
1184
  raise NotImplementedError('Method not implemented!')
1092
1185
 
1093
1186
  def Sweep(self, request, context):
1094
- """Sweep abandoned runs (internal method)
1187
+ """Sweep abandoned runs (internal method, no auth)
1095
1188
  """
1096
1189
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1097
1190
  context.set_details('Method not implemented!')
@@ -1103,7 +1196,7 @@ def add_RunsServicer_to_server(servicer, server):
1103
1196
  'Create': grpc.unary_unary_rpc_method_handler(
1104
1197
  servicer.Create,
1105
1198
  request_deserializer=core__api__pb2.CreateRunRequest.FromString,
1106
- response_serializer=core__api__pb2.Run.SerializeToString,
1199
+ response_serializer=core__api__pb2.CreateRunResponse.SerializeToString,
1107
1200
  ),
1108
1201
  'Get': grpc.unary_unary_rpc_method_handler(
1109
1202
  servicer.Get,
@@ -1130,10 +1223,30 @@ def add_RunsServicer_to_server(servicer, server):
1130
1223
  request_deserializer=core__api__pb2.SetRunStatusRequest.FromString,
1131
1224
  response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
1132
1225
  ),
1226
+ 'Stream': grpc.unary_stream_rpc_method_handler(
1227
+ servicer.Stream,
1228
+ request_deserializer=core__api__pb2.StreamRunRequest.FromString,
1229
+ response_serializer=core__api__pb2.StreamEvent.SerializeToString,
1230
+ ),
1231
+ 'Enter': grpc.unary_stream_rpc_method_handler(
1232
+ servicer.Enter,
1233
+ request_deserializer=core__api__pb2.EnterRunRequest.FromString,
1234
+ response_serializer=core__api__pb2.ControlEvent.SerializeToString,
1235
+ ),
1236
+ 'MarkDone': grpc.unary_unary_rpc_method_handler(
1237
+ servicer.MarkDone,
1238
+ request_deserializer=core__api__pb2.MarkRunDoneRequest.FromString,
1239
+ response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
1240
+ ),
1133
1241
  'Stats': grpc.unary_unary_rpc_method_handler(
1134
1242
  servicer.Stats,
1135
1243
  request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
1136
- response_serializer=core__api__pb2.QueueStats.SerializeToString,
1244
+ response_serializer=core__api__pb2.RunStats.SerializeToString,
1245
+ ),
1246
+ 'Count': grpc.unary_unary_rpc_method_handler(
1247
+ servicer.Count,
1248
+ request_deserializer=core__api__pb2.CountRunsRequest.FromString,
1249
+ response_serializer=core__api__pb2.CountResponse.SerializeToString,
1137
1250
  ),
1138
1251
  'Next': grpc.unary_unary_rpc_method_handler(
1139
1252
  servicer.Next,
@@ -1172,7 +1285,7 @@ class Runs(object):
1172
1285
  target,
1173
1286
  '/coreApi.Runs/Create',
1174
1287
  core__api__pb2.CreateRunRequest.SerializeToString,
1175
- core__api__pb2.Run.FromString,
1288
+ core__api__pb2.CreateRunResponse.FromString,
1176
1289
  options,
1177
1290
  channel_credentials,
1178
1291
  insecure,
@@ -1318,6 +1431,87 @@ class Runs(object):
1318
1431
  metadata,
1319
1432
  _registered_method=True)
1320
1433
 
1434
+ @staticmethod
1435
+ def Stream(request,
1436
+ target,
1437
+ options=(),
1438
+ channel_credentials=None,
1439
+ call_credentials=None,
1440
+ insecure=False,
1441
+ compression=None,
1442
+ wait_for_ready=None,
1443
+ timeout=None,
1444
+ metadata=None):
1445
+ return grpc.experimental.unary_stream(
1446
+ request,
1447
+ target,
1448
+ '/coreApi.Runs/Stream',
1449
+ core__api__pb2.StreamRunRequest.SerializeToString,
1450
+ core__api__pb2.StreamEvent.FromString,
1451
+ options,
1452
+ channel_credentials,
1453
+ insecure,
1454
+ call_credentials,
1455
+ compression,
1456
+ wait_for_ready,
1457
+ timeout,
1458
+ metadata,
1459
+ _registered_method=True)
1460
+
1461
+ @staticmethod
1462
+ def Enter(request,
1463
+ target,
1464
+ options=(),
1465
+ channel_credentials=None,
1466
+ call_credentials=None,
1467
+ insecure=False,
1468
+ compression=None,
1469
+ wait_for_ready=None,
1470
+ timeout=None,
1471
+ metadata=None):
1472
+ return grpc.experimental.unary_stream(
1473
+ request,
1474
+ target,
1475
+ '/coreApi.Runs/Enter',
1476
+ core__api__pb2.EnterRunRequest.SerializeToString,
1477
+ core__api__pb2.ControlEvent.FromString,
1478
+ options,
1479
+ channel_credentials,
1480
+ insecure,
1481
+ call_credentials,
1482
+ compression,
1483
+ wait_for_ready,
1484
+ timeout,
1485
+ metadata,
1486
+ _registered_method=True)
1487
+
1488
+ @staticmethod
1489
+ def MarkDone(request,
1490
+ target,
1491
+ options=(),
1492
+ channel_credentials=None,
1493
+ call_credentials=None,
1494
+ insecure=False,
1495
+ compression=None,
1496
+ wait_for_ready=None,
1497
+ timeout=None,
1498
+ metadata=None):
1499
+ return grpc.experimental.unary_unary(
1500
+ request,
1501
+ target,
1502
+ '/coreApi.Runs/MarkDone',
1503
+ core__api__pb2.MarkRunDoneRequest.SerializeToString,
1504
+ google_dot_protobuf_dot_empty__pb2.Empty.FromString,
1505
+ options,
1506
+ channel_credentials,
1507
+ insecure,
1508
+ call_credentials,
1509
+ compression,
1510
+ wait_for_ready,
1511
+ timeout,
1512
+ metadata,
1513
+ _registered_method=True)
1514
+
1321
1515
  @staticmethod
1322
1516
  def Stats(request,
1323
1517
  target,
@@ -1334,7 +1528,34 @@ class Runs(object):
1334
1528
  target,
1335
1529
  '/coreApi.Runs/Stats',
1336
1530
  google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
1337
- core__api__pb2.QueueStats.FromString,
1531
+ core__api__pb2.RunStats.FromString,
1532
+ options,
1533
+ channel_credentials,
1534
+ insecure,
1535
+ call_credentials,
1536
+ compression,
1537
+ wait_for_ready,
1538
+ timeout,
1539
+ metadata,
1540
+ _registered_method=True)
1541
+
1542
+ @staticmethod
1543
+ def Count(request,
1544
+ target,
1545
+ options=(),
1546
+ channel_credentials=None,
1547
+ call_credentials=None,
1548
+ insecure=False,
1549
+ compression=None,
1550
+ wait_for_ready=None,
1551
+ timeout=None,
1552
+ metadata=None):
1553
+ return grpc.experimental.unary_unary(
1554
+ request,
1555
+ target,
1556
+ '/coreApi.Runs/Count',
1557
+ core__api__pb2.CountRunsRequest.SerializeToString,
1558
+ core__api__pb2.CountResponse.FromString,
1338
1559
  options,
1339
1560
  channel_credentials,
1340
1561
  insecure,