rappel 0.4.1__py3-none-win_amd64.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.
Potentially problematic release.
This version of rappel might be problematic. Click here for more details.
- proto/ast_pb2.py +117 -0
- proto/ast_pb2.pyi +1609 -0
- proto/ast_pb2_grpc.py +24 -0
- proto/ast_pb2_grpc.pyi +22 -0
- proto/messages_pb2.py +106 -0
- proto/messages_pb2.pyi +1170 -0
- proto/messages_pb2_grpc.py +406 -0
- proto/messages_pb2_grpc.pyi +380 -0
- rappel/__init__.py +56 -0
- rappel/actions.py +81 -0
- rappel/bin/boot-rappel-singleton.exe +0 -0
- rappel/bin/rappel-bridge.exe +0 -0
- rappel/bin/start-workers.exe +0 -0
- rappel/bridge.py +228 -0
- rappel/dependencies.py +135 -0
- rappel/exceptions.py +11 -0
- rappel/formatter.py +110 -0
- rappel/ir_builder.py +3146 -0
- rappel/logger.py +39 -0
- rappel/registry.py +75 -0
- rappel/schedule.py +294 -0
- rappel/serialization.py +205 -0
- rappel/worker.py +191 -0
- rappel/workflow.py +236 -0
- rappel/workflow_runtime.py +137 -0
- rappel-0.4.1.data/scripts/boot-rappel-singleton.exe +0 -0
- rappel-0.4.1.data/scripts/rappel-bridge.exe +0 -0
- rappel-0.4.1.data/scripts/start-workers.exe +0 -0
- rappel-0.4.1.dist-info/METADATA +292 -0
- rappel-0.4.1.dist-info/RECORD +32 -0
- rappel-0.4.1.dist-info/WHEEL +4 -0
- rappel-0.4.1.dist-info/entry_points.txt +2 -0
proto/messages_pb2.pyi
ADDED
|
@@ -0,0 +1,1170 @@
|
|
|
1
|
+
"""
|
|
2
|
+
@generated by mypy-protobuf. Do not edit manually!
|
|
3
|
+
isort:skip_file
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
import builtins
|
|
7
|
+
import collections.abc
|
|
8
|
+
import sys
|
|
9
|
+
import typing
|
|
10
|
+
|
|
11
|
+
import google.protobuf.descriptor
|
|
12
|
+
import google.protobuf.internal.containers
|
|
13
|
+
import google.protobuf.internal.enum_type_wrapper
|
|
14
|
+
import google.protobuf.message
|
|
15
|
+
import google.protobuf.struct_pb2
|
|
16
|
+
|
|
17
|
+
if sys.version_info >= (3, 10):
|
|
18
|
+
import typing as typing_extensions
|
|
19
|
+
else:
|
|
20
|
+
import typing_extensions
|
|
21
|
+
|
|
22
|
+
DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
|
|
23
|
+
|
|
24
|
+
class _MessageKind:
|
|
25
|
+
ValueType = typing.NewType("ValueType", builtins.int)
|
|
26
|
+
V: typing_extensions.TypeAlias = ValueType
|
|
27
|
+
|
|
28
|
+
class _MessageKindEnumTypeWrapper(
|
|
29
|
+
google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_MessageKind.ValueType],
|
|
30
|
+
builtins.type,
|
|
31
|
+
):
|
|
32
|
+
DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
|
|
33
|
+
MESSAGE_KIND_UNSPECIFIED: _MessageKind.ValueType # 0
|
|
34
|
+
MESSAGE_KIND_ACTION_DISPATCH: _MessageKind.ValueType # 1
|
|
35
|
+
"""Server -> Worker: execute this action"""
|
|
36
|
+
MESSAGE_KIND_ACTION_RESULT: _MessageKind.ValueType # 2
|
|
37
|
+
"""Worker -> Server: here's the result"""
|
|
38
|
+
MESSAGE_KIND_ACK: _MessageKind.ValueType # 3
|
|
39
|
+
"""Worker -> Server: message received"""
|
|
40
|
+
MESSAGE_KIND_HEARTBEAT: _MessageKind.ValueType # 4
|
|
41
|
+
"""Bidirectional: keep-alive signal"""
|
|
42
|
+
MESSAGE_KIND_WORKER_HELLO: _MessageKind.ValueType # 5
|
|
43
|
+
"""Worker -> Server: handshake on connect"""
|
|
44
|
+
|
|
45
|
+
class MessageKind(_MessageKind, metaclass=_MessageKindEnumTypeWrapper):
|
|
46
|
+
"""=============================================================================
|
|
47
|
+
Worker Bridge Communication
|
|
48
|
+
=============================================================================
|
|
49
|
+
These messages handle the core communication between the Rust server and
|
|
50
|
+
Python workers. Workers connect via gRPC streaming and execute actions.
|
|
51
|
+
"""
|
|
52
|
+
|
|
53
|
+
MESSAGE_KIND_UNSPECIFIED: MessageKind.ValueType # 0
|
|
54
|
+
MESSAGE_KIND_ACTION_DISPATCH: MessageKind.ValueType # 1
|
|
55
|
+
"""Server -> Worker: execute this action"""
|
|
56
|
+
MESSAGE_KIND_ACTION_RESULT: MessageKind.ValueType # 2
|
|
57
|
+
"""Worker -> Server: here's the result"""
|
|
58
|
+
MESSAGE_KIND_ACK: MessageKind.ValueType # 3
|
|
59
|
+
"""Worker -> Server: message received"""
|
|
60
|
+
MESSAGE_KIND_HEARTBEAT: MessageKind.ValueType # 4
|
|
61
|
+
"""Bidirectional: keep-alive signal"""
|
|
62
|
+
MESSAGE_KIND_WORKER_HELLO: MessageKind.ValueType # 5
|
|
63
|
+
"""Worker -> Server: handshake on connect"""
|
|
64
|
+
Global___MessageKind: typing_extensions.TypeAlias = MessageKind
|
|
65
|
+
|
|
66
|
+
class _ScheduleType:
|
|
67
|
+
ValueType = typing.NewType("ValueType", builtins.int)
|
|
68
|
+
V: typing_extensions.TypeAlias = ValueType
|
|
69
|
+
|
|
70
|
+
class _ScheduleTypeEnumTypeWrapper(
|
|
71
|
+
google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ScheduleType.ValueType],
|
|
72
|
+
builtins.type,
|
|
73
|
+
):
|
|
74
|
+
DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
|
|
75
|
+
SCHEDULE_TYPE_UNSPECIFIED: _ScheduleType.ValueType # 0
|
|
76
|
+
SCHEDULE_TYPE_CRON: _ScheduleType.ValueType # 1
|
|
77
|
+
SCHEDULE_TYPE_INTERVAL: _ScheduleType.ValueType # 2
|
|
78
|
+
|
|
79
|
+
class ScheduleType(_ScheduleType, metaclass=_ScheduleTypeEnumTypeWrapper):
|
|
80
|
+
"""=============================================================================
|
|
81
|
+
Workflow Schedules
|
|
82
|
+
=============================================================================
|
|
83
|
+
Messages for scheduling workflows to run on a recurring basis.
|
|
84
|
+
"""
|
|
85
|
+
|
|
86
|
+
SCHEDULE_TYPE_UNSPECIFIED: ScheduleType.ValueType # 0
|
|
87
|
+
SCHEDULE_TYPE_CRON: ScheduleType.ValueType # 1
|
|
88
|
+
SCHEDULE_TYPE_INTERVAL: ScheduleType.ValueType # 2
|
|
89
|
+
Global___ScheduleType: typing_extensions.TypeAlias = ScheduleType
|
|
90
|
+
|
|
91
|
+
class _ScheduleStatus:
|
|
92
|
+
ValueType = typing.NewType("ValueType", builtins.int)
|
|
93
|
+
V: typing_extensions.TypeAlias = ValueType
|
|
94
|
+
|
|
95
|
+
class _ScheduleStatusEnumTypeWrapper(
|
|
96
|
+
google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ScheduleStatus.ValueType],
|
|
97
|
+
builtins.type,
|
|
98
|
+
):
|
|
99
|
+
DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
|
|
100
|
+
SCHEDULE_STATUS_UNSPECIFIED: _ScheduleStatus.ValueType # 0
|
|
101
|
+
SCHEDULE_STATUS_ACTIVE: _ScheduleStatus.ValueType # 1
|
|
102
|
+
SCHEDULE_STATUS_PAUSED: _ScheduleStatus.ValueType # 2
|
|
103
|
+
|
|
104
|
+
class ScheduleStatus(_ScheduleStatus, metaclass=_ScheduleStatusEnumTypeWrapper): ...
|
|
105
|
+
|
|
106
|
+
SCHEDULE_STATUS_UNSPECIFIED: ScheduleStatus.ValueType # 0
|
|
107
|
+
SCHEDULE_STATUS_ACTIVE: ScheduleStatus.ValueType # 1
|
|
108
|
+
SCHEDULE_STATUS_PAUSED: ScheduleStatus.ValueType # 2
|
|
109
|
+
Global___ScheduleStatus: typing_extensions.TypeAlias = ScheduleStatus
|
|
110
|
+
|
|
111
|
+
@typing.final
|
|
112
|
+
class Envelope(google.protobuf.message.Message):
|
|
113
|
+
"""Universal transport wrapper for all worker bridge messages.
|
|
114
|
+
The `kind` field indicates how to decode the `payload`.
|
|
115
|
+
"""
|
|
116
|
+
|
|
117
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
118
|
+
|
|
119
|
+
DELIVERY_ID_FIELD_NUMBER: builtins.int
|
|
120
|
+
PARTITION_ID_FIELD_NUMBER: builtins.int
|
|
121
|
+
KIND_FIELD_NUMBER: builtins.int
|
|
122
|
+
PAYLOAD_FIELD_NUMBER: builtins.int
|
|
123
|
+
delivery_id: builtins.int
|
|
124
|
+
"""Unique ID for correlation (ack, response)"""
|
|
125
|
+
partition_id: builtins.int
|
|
126
|
+
"""Optional logical grouping"""
|
|
127
|
+
kind: Global___MessageKind.ValueType
|
|
128
|
+
"""Message type discriminator"""
|
|
129
|
+
payload: builtins.bytes
|
|
130
|
+
"""Encoded message (ActionDispatch, ActionResult, etc.)"""
|
|
131
|
+
def __init__(
|
|
132
|
+
self,
|
|
133
|
+
*,
|
|
134
|
+
delivery_id: builtins.int = ...,
|
|
135
|
+
partition_id: builtins.int = ...,
|
|
136
|
+
kind: Global___MessageKind.ValueType = ...,
|
|
137
|
+
payload: builtins.bytes = ...,
|
|
138
|
+
) -> None: ...
|
|
139
|
+
def ClearField(
|
|
140
|
+
self,
|
|
141
|
+
field_name: typing.Literal[
|
|
142
|
+
"delivery_id",
|
|
143
|
+
b"delivery_id",
|
|
144
|
+
"kind",
|
|
145
|
+
b"kind",
|
|
146
|
+
"partition_id",
|
|
147
|
+
b"partition_id",
|
|
148
|
+
"payload",
|
|
149
|
+
b"payload",
|
|
150
|
+
],
|
|
151
|
+
) -> None: ...
|
|
152
|
+
|
|
153
|
+
Global___Envelope: typing_extensions.TypeAlias = Envelope
|
|
154
|
+
|
|
155
|
+
@typing.final
|
|
156
|
+
class ActionDispatch(google.protobuf.message.Message):
|
|
157
|
+
"""Server -> Worker: instruction to execute an action"""
|
|
158
|
+
|
|
159
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
160
|
+
|
|
161
|
+
ACTION_ID_FIELD_NUMBER: builtins.int
|
|
162
|
+
INSTANCE_ID_FIELD_NUMBER: builtins.int
|
|
163
|
+
SEQUENCE_FIELD_NUMBER: builtins.int
|
|
164
|
+
ACTION_NAME_FIELD_NUMBER: builtins.int
|
|
165
|
+
MODULE_NAME_FIELD_NUMBER: builtins.int
|
|
166
|
+
KWARGS_FIELD_NUMBER: builtins.int
|
|
167
|
+
TIMEOUT_SECONDS_FIELD_NUMBER: builtins.int
|
|
168
|
+
MAX_RETRIES_FIELD_NUMBER: builtins.int
|
|
169
|
+
ATTEMPT_NUMBER_FIELD_NUMBER: builtins.int
|
|
170
|
+
DISPATCH_TOKEN_FIELD_NUMBER: builtins.int
|
|
171
|
+
action_id: builtins.str
|
|
172
|
+
"""Unique action identifier"""
|
|
173
|
+
instance_id: builtins.str
|
|
174
|
+
"""Workflow instance this action belongs to"""
|
|
175
|
+
sequence: builtins.int
|
|
176
|
+
"""Sequence number within instance"""
|
|
177
|
+
action_name: builtins.str
|
|
178
|
+
"""Action execution details
|
|
179
|
+
Name of the action function to call
|
|
180
|
+
"""
|
|
181
|
+
module_name: builtins.str
|
|
182
|
+
"""Python module containing the action"""
|
|
183
|
+
timeout_seconds: builtins.int
|
|
184
|
+
"""Execution policies"""
|
|
185
|
+
max_retries: builtins.int
|
|
186
|
+
attempt_number: builtins.int
|
|
187
|
+
dispatch_token: builtins.str
|
|
188
|
+
"""UUID for result correlation"""
|
|
189
|
+
@property
|
|
190
|
+
def kwargs(self) -> Global___WorkflowArguments:
|
|
191
|
+
"""Keyword arguments for the action"""
|
|
192
|
+
|
|
193
|
+
def __init__(
|
|
194
|
+
self,
|
|
195
|
+
*,
|
|
196
|
+
action_id: builtins.str = ...,
|
|
197
|
+
instance_id: builtins.str = ...,
|
|
198
|
+
sequence: builtins.int = ...,
|
|
199
|
+
action_name: builtins.str = ...,
|
|
200
|
+
module_name: builtins.str = ...,
|
|
201
|
+
kwargs: Global___WorkflowArguments | None = ...,
|
|
202
|
+
timeout_seconds: builtins.int | None = ...,
|
|
203
|
+
max_retries: builtins.int | None = ...,
|
|
204
|
+
attempt_number: builtins.int | None = ...,
|
|
205
|
+
dispatch_token: builtins.str | None = ...,
|
|
206
|
+
) -> None: ...
|
|
207
|
+
def HasField(
|
|
208
|
+
self,
|
|
209
|
+
field_name: typing.Literal[
|
|
210
|
+
"_attempt_number",
|
|
211
|
+
b"_attempt_number",
|
|
212
|
+
"_dispatch_token",
|
|
213
|
+
b"_dispatch_token",
|
|
214
|
+
"_max_retries",
|
|
215
|
+
b"_max_retries",
|
|
216
|
+
"_timeout_seconds",
|
|
217
|
+
b"_timeout_seconds",
|
|
218
|
+
"attempt_number",
|
|
219
|
+
b"attempt_number",
|
|
220
|
+
"dispatch_token",
|
|
221
|
+
b"dispatch_token",
|
|
222
|
+
"kwargs",
|
|
223
|
+
b"kwargs",
|
|
224
|
+
"max_retries",
|
|
225
|
+
b"max_retries",
|
|
226
|
+
"timeout_seconds",
|
|
227
|
+
b"timeout_seconds",
|
|
228
|
+
],
|
|
229
|
+
) -> builtins.bool: ...
|
|
230
|
+
def ClearField(
|
|
231
|
+
self,
|
|
232
|
+
field_name: typing.Literal[
|
|
233
|
+
"_attempt_number",
|
|
234
|
+
b"_attempt_number",
|
|
235
|
+
"_dispatch_token",
|
|
236
|
+
b"_dispatch_token",
|
|
237
|
+
"_max_retries",
|
|
238
|
+
b"_max_retries",
|
|
239
|
+
"_timeout_seconds",
|
|
240
|
+
b"_timeout_seconds",
|
|
241
|
+
"action_id",
|
|
242
|
+
b"action_id",
|
|
243
|
+
"action_name",
|
|
244
|
+
b"action_name",
|
|
245
|
+
"attempt_number",
|
|
246
|
+
b"attempt_number",
|
|
247
|
+
"dispatch_token",
|
|
248
|
+
b"dispatch_token",
|
|
249
|
+
"instance_id",
|
|
250
|
+
b"instance_id",
|
|
251
|
+
"kwargs",
|
|
252
|
+
b"kwargs",
|
|
253
|
+
"max_retries",
|
|
254
|
+
b"max_retries",
|
|
255
|
+
"module_name",
|
|
256
|
+
b"module_name",
|
|
257
|
+
"sequence",
|
|
258
|
+
b"sequence",
|
|
259
|
+
"timeout_seconds",
|
|
260
|
+
b"timeout_seconds",
|
|
261
|
+
],
|
|
262
|
+
) -> None: ...
|
|
263
|
+
@typing.overload
|
|
264
|
+
def WhichOneof(
|
|
265
|
+
self, oneof_group: typing.Literal["_attempt_number", b"_attempt_number"]
|
|
266
|
+
) -> typing.Literal["attempt_number"] | None: ...
|
|
267
|
+
@typing.overload
|
|
268
|
+
def WhichOneof(
|
|
269
|
+
self, oneof_group: typing.Literal["_dispatch_token", b"_dispatch_token"]
|
|
270
|
+
) -> typing.Literal["dispatch_token"] | None: ...
|
|
271
|
+
@typing.overload
|
|
272
|
+
def WhichOneof(
|
|
273
|
+
self, oneof_group: typing.Literal["_max_retries", b"_max_retries"]
|
|
274
|
+
) -> typing.Literal["max_retries"] | None: ...
|
|
275
|
+
@typing.overload
|
|
276
|
+
def WhichOneof(
|
|
277
|
+
self, oneof_group: typing.Literal["_timeout_seconds", b"_timeout_seconds"]
|
|
278
|
+
) -> typing.Literal["timeout_seconds"] | None: ...
|
|
279
|
+
|
|
280
|
+
Global___ActionDispatch: typing_extensions.TypeAlias = ActionDispatch
|
|
281
|
+
|
|
282
|
+
@typing.final
|
|
283
|
+
class ActionResult(google.protobuf.message.Message):
|
|
284
|
+
"""Worker -> Server: result of action execution"""
|
|
285
|
+
|
|
286
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
287
|
+
|
|
288
|
+
ACTION_ID_FIELD_NUMBER: builtins.int
|
|
289
|
+
SUCCESS_FIELD_NUMBER: builtins.int
|
|
290
|
+
PAYLOAD_FIELD_NUMBER: builtins.int
|
|
291
|
+
WORKER_START_NS_FIELD_NUMBER: builtins.int
|
|
292
|
+
WORKER_END_NS_FIELD_NUMBER: builtins.int
|
|
293
|
+
DISPATCH_TOKEN_FIELD_NUMBER: builtins.int
|
|
294
|
+
ERROR_TYPE_FIELD_NUMBER: builtins.int
|
|
295
|
+
ERROR_MESSAGE_FIELD_NUMBER: builtins.int
|
|
296
|
+
action_id: builtins.str
|
|
297
|
+
success: builtins.bool
|
|
298
|
+
worker_start_ns: builtins.int
|
|
299
|
+
"""Perf counter at execution start"""
|
|
300
|
+
worker_end_ns: builtins.int
|
|
301
|
+
"""Perf counter at execution end"""
|
|
302
|
+
dispatch_token: builtins.str
|
|
303
|
+
error_type: builtins.str
|
|
304
|
+
"""Exception type if success=false"""
|
|
305
|
+
error_message: builtins.str
|
|
306
|
+
"""Exception message if success=false"""
|
|
307
|
+
@property
|
|
308
|
+
def payload(self) -> Global___WorkflowArguments:
|
|
309
|
+
"""Result or error details"""
|
|
310
|
+
|
|
311
|
+
def __init__(
|
|
312
|
+
self,
|
|
313
|
+
*,
|
|
314
|
+
action_id: builtins.str = ...,
|
|
315
|
+
success: builtins.bool = ...,
|
|
316
|
+
payload: Global___WorkflowArguments | None = ...,
|
|
317
|
+
worker_start_ns: builtins.int = ...,
|
|
318
|
+
worker_end_ns: builtins.int = ...,
|
|
319
|
+
dispatch_token: builtins.str | None = ...,
|
|
320
|
+
error_type: builtins.str | None = ...,
|
|
321
|
+
error_message: builtins.str | None = ...,
|
|
322
|
+
) -> None: ...
|
|
323
|
+
def HasField(
|
|
324
|
+
self,
|
|
325
|
+
field_name: typing.Literal[
|
|
326
|
+
"_dispatch_token",
|
|
327
|
+
b"_dispatch_token",
|
|
328
|
+
"_error_message",
|
|
329
|
+
b"_error_message",
|
|
330
|
+
"_error_type",
|
|
331
|
+
b"_error_type",
|
|
332
|
+
"dispatch_token",
|
|
333
|
+
b"dispatch_token",
|
|
334
|
+
"error_message",
|
|
335
|
+
b"error_message",
|
|
336
|
+
"error_type",
|
|
337
|
+
b"error_type",
|
|
338
|
+
"payload",
|
|
339
|
+
b"payload",
|
|
340
|
+
],
|
|
341
|
+
) -> builtins.bool: ...
|
|
342
|
+
def ClearField(
|
|
343
|
+
self,
|
|
344
|
+
field_name: typing.Literal[
|
|
345
|
+
"_dispatch_token",
|
|
346
|
+
b"_dispatch_token",
|
|
347
|
+
"_error_message",
|
|
348
|
+
b"_error_message",
|
|
349
|
+
"_error_type",
|
|
350
|
+
b"_error_type",
|
|
351
|
+
"action_id",
|
|
352
|
+
b"action_id",
|
|
353
|
+
"dispatch_token",
|
|
354
|
+
b"dispatch_token",
|
|
355
|
+
"error_message",
|
|
356
|
+
b"error_message",
|
|
357
|
+
"error_type",
|
|
358
|
+
b"error_type",
|
|
359
|
+
"payload",
|
|
360
|
+
b"payload",
|
|
361
|
+
"success",
|
|
362
|
+
b"success",
|
|
363
|
+
"worker_end_ns",
|
|
364
|
+
b"worker_end_ns",
|
|
365
|
+
"worker_start_ns",
|
|
366
|
+
b"worker_start_ns",
|
|
367
|
+
],
|
|
368
|
+
) -> None: ...
|
|
369
|
+
@typing.overload
|
|
370
|
+
def WhichOneof(
|
|
371
|
+
self, oneof_group: typing.Literal["_dispatch_token", b"_dispatch_token"]
|
|
372
|
+
) -> typing.Literal["dispatch_token"] | None: ...
|
|
373
|
+
@typing.overload
|
|
374
|
+
def WhichOneof(
|
|
375
|
+
self, oneof_group: typing.Literal["_error_message", b"_error_message"]
|
|
376
|
+
) -> typing.Literal["error_message"] | None: ...
|
|
377
|
+
@typing.overload
|
|
378
|
+
def WhichOneof(
|
|
379
|
+
self, oneof_group: typing.Literal["_error_type", b"_error_type"]
|
|
380
|
+
) -> typing.Literal["error_type"] | None: ...
|
|
381
|
+
|
|
382
|
+
Global___ActionResult: typing_extensions.TypeAlias = ActionResult
|
|
383
|
+
|
|
384
|
+
@typing.final
|
|
385
|
+
class Ack(google.protobuf.message.Message):
|
|
386
|
+
"""Worker -> Server: acknowledgment of message receipt"""
|
|
387
|
+
|
|
388
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
389
|
+
|
|
390
|
+
ACKED_DELIVERY_ID_FIELD_NUMBER: builtins.int
|
|
391
|
+
acked_delivery_id: builtins.int
|
|
392
|
+
def __init__(
|
|
393
|
+
self,
|
|
394
|
+
*,
|
|
395
|
+
acked_delivery_id: builtins.int = ...,
|
|
396
|
+
) -> None: ...
|
|
397
|
+
def ClearField(
|
|
398
|
+
self, field_name: typing.Literal["acked_delivery_id", b"acked_delivery_id"]
|
|
399
|
+
) -> None: ...
|
|
400
|
+
|
|
401
|
+
Global___Ack: typing_extensions.TypeAlias = Ack
|
|
402
|
+
|
|
403
|
+
@typing.final
|
|
404
|
+
class WorkerHello(google.protobuf.message.Message):
|
|
405
|
+
"""Worker -> Server: initial handshake when connecting"""
|
|
406
|
+
|
|
407
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
408
|
+
|
|
409
|
+
WORKER_ID_FIELD_NUMBER: builtins.int
|
|
410
|
+
worker_id: builtins.int
|
|
411
|
+
def __init__(
|
|
412
|
+
self,
|
|
413
|
+
*,
|
|
414
|
+
worker_id: builtins.int = ...,
|
|
415
|
+
) -> None: ...
|
|
416
|
+
def ClearField(self, field_name: typing.Literal["worker_id", b"worker_id"]) -> None: ...
|
|
417
|
+
|
|
418
|
+
Global___WorkerHello: typing_extensions.TypeAlias = WorkerHello
|
|
419
|
+
|
|
420
|
+
@typing.final
|
|
421
|
+
class WorkflowArgumentValue(google.protobuf.message.Message):
|
|
422
|
+
"""=============================================================================
|
|
423
|
+
Value Serialization
|
|
424
|
+
=============================================================================
|
|
425
|
+
All values passed between Rust and Python must be JSON-serializable.
|
|
426
|
+
These messages define the wire format for workflow arguments and results.
|
|
427
|
+
"""
|
|
428
|
+
|
|
429
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
430
|
+
|
|
431
|
+
PRIMITIVE_FIELD_NUMBER: builtins.int
|
|
432
|
+
BASEMODEL_FIELD_NUMBER: builtins.int
|
|
433
|
+
EXCEPTION_FIELD_NUMBER: builtins.int
|
|
434
|
+
LIST_VALUE_FIELD_NUMBER: builtins.int
|
|
435
|
+
TUPLE_VALUE_FIELD_NUMBER: builtins.int
|
|
436
|
+
DICT_VALUE_FIELD_NUMBER: builtins.int
|
|
437
|
+
@property
|
|
438
|
+
def primitive(self) -> Global___PrimitiveWorkflowArgument: ...
|
|
439
|
+
@property
|
|
440
|
+
def basemodel(self) -> Global___BaseModelWorkflowArgument: ...
|
|
441
|
+
@property
|
|
442
|
+
def exception(self) -> Global___WorkflowErrorValue: ...
|
|
443
|
+
@property
|
|
444
|
+
def list_value(self) -> Global___WorkflowListArgument: ...
|
|
445
|
+
@property
|
|
446
|
+
def tuple_value(self) -> Global___WorkflowTupleArgument: ...
|
|
447
|
+
@property
|
|
448
|
+
def dict_value(self) -> Global___WorkflowDictArgument: ...
|
|
449
|
+
def __init__(
|
|
450
|
+
self,
|
|
451
|
+
*,
|
|
452
|
+
primitive: Global___PrimitiveWorkflowArgument | None = ...,
|
|
453
|
+
basemodel: Global___BaseModelWorkflowArgument | None = ...,
|
|
454
|
+
exception: Global___WorkflowErrorValue | None = ...,
|
|
455
|
+
list_value: Global___WorkflowListArgument | None = ...,
|
|
456
|
+
tuple_value: Global___WorkflowTupleArgument | None = ...,
|
|
457
|
+
dict_value: Global___WorkflowDictArgument | None = ...,
|
|
458
|
+
) -> None: ...
|
|
459
|
+
def HasField(
|
|
460
|
+
self,
|
|
461
|
+
field_name: typing.Literal[
|
|
462
|
+
"basemodel",
|
|
463
|
+
b"basemodel",
|
|
464
|
+
"dict_value",
|
|
465
|
+
b"dict_value",
|
|
466
|
+
"exception",
|
|
467
|
+
b"exception",
|
|
468
|
+
"kind",
|
|
469
|
+
b"kind",
|
|
470
|
+
"list_value",
|
|
471
|
+
b"list_value",
|
|
472
|
+
"primitive",
|
|
473
|
+
b"primitive",
|
|
474
|
+
"tuple_value",
|
|
475
|
+
b"tuple_value",
|
|
476
|
+
],
|
|
477
|
+
) -> builtins.bool: ...
|
|
478
|
+
def ClearField(
|
|
479
|
+
self,
|
|
480
|
+
field_name: typing.Literal[
|
|
481
|
+
"basemodel",
|
|
482
|
+
b"basemodel",
|
|
483
|
+
"dict_value",
|
|
484
|
+
b"dict_value",
|
|
485
|
+
"exception",
|
|
486
|
+
b"exception",
|
|
487
|
+
"kind",
|
|
488
|
+
b"kind",
|
|
489
|
+
"list_value",
|
|
490
|
+
b"list_value",
|
|
491
|
+
"primitive",
|
|
492
|
+
b"primitive",
|
|
493
|
+
"tuple_value",
|
|
494
|
+
b"tuple_value",
|
|
495
|
+
],
|
|
496
|
+
) -> None: ...
|
|
497
|
+
def WhichOneof(
|
|
498
|
+
self, oneof_group: typing.Literal["kind", b"kind"]
|
|
499
|
+
) -> (
|
|
500
|
+
typing.Literal[
|
|
501
|
+
"primitive", "basemodel", "exception", "list_value", "tuple_value", "dict_value"
|
|
502
|
+
]
|
|
503
|
+
| None
|
|
504
|
+
): ...
|
|
505
|
+
|
|
506
|
+
Global___WorkflowArgumentValue: typing_extensions.TypeAlias = WorkflowArgumentValue
|
|
507
|
+
|
|
508
|
+
@typing.final
|
|
509
|
+
class WorkflowArgument(google.protobuf.message.Message):
|
|
510
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
511
|
+
|
|
512
|
+
KEY_FIELD_NUMBER: builtins.int
|
|
513
|
+
VALUE_FIELD_NUMBER: builtins.int
|
|
514
|
+
key: builtins.str
|
|
515
|
+
@property
|
|
516
|
+
def value(self) -> Global___WorkflowArgumentValue: ...
|
|
517
|
+
def __init__(
|
|
518
|
+
self,
|
|
519
|
+
*,
|
|
520
|
+
key: builtins.str = ...,
|
|
521
|
+
value: Global___WorkflowArgumentValue | None = ...,
|
|
522
|
+
) -> None: ...
|
|
523
|
+
def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
|
|
524
|
+
def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...
|
|
525
|
+
|
|
526
|
+
Global___WorkflowArgument: typing_extensions.TypeAlias = WorkflowArgument
|
|
527
|
+
|
|
528
|
+
@typing.final
|
|
529
|
+
class WorkflowArguments(google.protobuf.message.Message):
|
|
530
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
531
|
+
|
|
532
|
+
ARGUMENTS_FIELD_NUMBER: builtins.int
|
|
533
|
+
@property
|
|
534
|
+
def arguments(
|
|
535
|
+
self,
|
|
536
|
+
) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
|
|
537
|
+
Global___WorkflowArgument
|
|
538
|
+
]: ...
|
|
539
|
+
def __init__(
|
|
540
|
+
self,
|
|
541
|
+
*,
|
|
542
|
+
arguments: collections.abc.Iterable[Global___WorkflowArgument] | None = ...,
|
|
543
|
+
) -> None: ...
|
|
544
|
+
def ClearField(self, field_name: typing.Literal["arguments", b"arguments"]) -> None: ...
|
|
545
|
+
|
|
546
|
+
Global___WorkflowArguments: typing_extensions.TypeAlias = WorkflowArguments
|
|
547
|
+
|
|
548
|
+
@typing.final
|
|
549
|
+
class PrimitiveWorkflowArgument(google.protobuf.message.Message):
|
|
550
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
551
|
+
|
|
552
|
+
STRING_VALUE_FIELD_NUMBER: builtins.int
|
|
553
|
+
DOUBLE_VALUE_FIELD_NUMBER: builtins.int
|
|
554
|
+
INT_VALUE_FIELD_NUMBER: builtins.int
|
|
555
|
+
BOOL_VALUE_FIELD_NUMBER: builtins.int
|
|
556
|
+
NULL_VALUE_FIELD_NUMBER: builtins.int
|
|
557
|
+
string_value: builtins.str
|
|
558
|
+
double_value: builtins.float
|
|
559
|
+
int_value: builtins.int
|
|
560
|
+
bool_value: builtins.bool
|
|
561
|
+
null_value: google.protobuf.struct_pb2.NullValue.ValueType
|
|
562
|
+
def __init__(
|
|
563
|
+
self,
|
|
564
|
+
*,
|
|
565
|
+
string_value: builtins.str = ...,
|
|
566
|
+
double_value: builtins.float = ...,
|
|
567
|
+
int_value: builtins.int = ...,
|
|
568
|
+
bool_value: builtins.bool = ...,
|
|
569
|
+
null_value: google.protobuf.struct_pb2.NullValue.ValueType = ...,
|
|
570
|
+
) -> None: ...
|
|
571
|
+
def HasField(
|
|
572
|
+
self,
|
|
573
|
+
field_name: typing.Literal[
|
|
574
|
+
"bool_value",
|
|
575
|
+
b"bool_value",
|
|
576
|
+
"double_value",
|
|
577
|
+
b"double_value",
|
|
578
|
+
"int_value",
|
|
579
|
+
b"int_value",
|
|
580
|
+
"kind",
|
|
581
|
+
b"kind",
|
|
582
|
+
"null_value",
|
|
583
|
+
b"null_value",
|
|
584
|
+
"string_value",
|
|
585
|
+
b"string_value",
|
|
586
|
+
],
|
|
587
|
+
) -> builtins.bool: ...
|
|
588
|
+
def ClearField(
|
|
589
|
+
self,
|
|
590
|
+
field_name: typing.Literal[
|
|
591
|
+
"bool_value",
|
|
592
|
+
b"bool_value",
|
|
593
|
+
"double_value",
|
|
594
|
+
b"double_value",
|
|
595
|
+
"int_value",
|
|
596
|
+
b"int_value",
|
|
597
|
+
"kind",
|
|
598
|
+
b"kind",
|
|
599
|
+
"null_value",
|
|
600
|
+
b"null_value",
|
|
601
|
+
"string_value",
|
|
602
|
+
b"string_value",
|
|
603
|
+
],
|
|
604
|
+
) -> None: ...
|
|
605
|
+
def WhichOneof(
|
|
606
|
+
self, oneof_group: typing.Literal["kind", b"kind"]
|
|
607
|
+
) -> (
|
|
608
|
+
typing.Literal["string_value", "double_value", "int_value", "bool_value", "null_value"]
|
|
609
|
+
| None
|
|
610
|
+
): ...
|
|
611
|
+
|
|
612
|
+
Global___PrimitiveWorkflowArgument: typing_extensions.TypeAlias = PrimitiveWorkflowArgument
|
|
613
|
+
|
|
614
|
+
@typing.final
|
|
615
|
+
class BaseModelWorkflowArgument(google.protobuf.message.Message):
|
|
616
|
+
"""Pydantic BaseModel or similar structured types"""
|
|
617
|
+
|
|
618
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
619
|
+
|
|
620
|
+
MODULE_FIELD_NUMBER: builtins.int
|
|
621
|
+
NAME_FIELD_NUMBER: builtins.int
|
|
622
|
+
DATA_FIELD_NUMBER: builtins.int
|
|
623
|
+
module: builtins.str
|
|
624
|
+
name: builtins.str
|
|
625
|
+
@property
|
|
626
|
+
def data(self) -> Global___WorkflowDictArgument: ...
|
|
627
|
+
def __init__(
|
|
628
|
+
self,
|
|
629
|
+
*,
|
|
630
|
+
module: builtins.str = ...,
|
|
631
|
+
name: builtins.str = ...,
|
|
632
|
+
data: Global___WorkflowDictArgument | None = ...,
|
|
633
|
+
) -> None: ...
|
|
634
|
+
def HasField(self, field_name: typing.Literal["data", b"data"]) -> builtins.bool: ...
|
|
635
|
+
def ClearField(
|
|
636
|
+
self, field_name: typing.Literal["data", b"data", "module", b"module", "name", b"name"]
|
|
637
|
+
) -> None: ...
|
|
638
|
+
|
|
639
|
+
Global___BaseModelWorkflowArgument: typing_extensions.TypeAlias = BaseModelWorkflowArgument
|
|
640
|
+
|
|
641
|
+
@typing.final
|
|
642
|
+
class WorkflowErrorValue(google.protobuf.message.Message):
|
|
643
|
+
"""Serialized exception for error propagation"""
|
|
644
|
+
|
|
645
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
646
|
+
|
|
647
|
+
TYPE_FIELD_NUMBER: builtins.int
|
|
648
|
+
MODULE_FIELD_NUMBER: builtins.int
|
|
649
|
+
MESSAGE_FIELD_NUMBER: builtins.int
|
|
650
|
+
TRACEBACK_FIELD_NUMBER: builtins.int
|
|
651
|
+
type: builtins.str
|
|
652
|
+
module: builtins.str
|
|
653
|
+
message: builtins.str
|
|
654
|
+
traceback: builtins.str
|
|
655
|
+
def __init__(
|
|
656
|
+
self,
|
|
657
|
+
*,
|
|
658
|
+
type: builtins.str = ...,
|
|
659
|
+
module: builtins.str = ...,
|
|
660
|
+
message: builtins.str = ...,
|
|
661
|
+
traceback: builtins.str = ...,
|
|
662
|
+
) -> None: ...
|
|
663
|
+
def ClearField(
|
|
664
|
+
self,
|
|
665
|
+
field_name: typing.Literal[
|
|
666
|
+
"message", b"message", "module", b"module", "traceback", b"traceback", "type", b"type"
|
|
667
|
+
],
|
|
668
|
+
) -> None: ...
|
|
669
|
+
|
|
670
|
+
Global___WorkflowErrorValue: typing_extensions.TypeAlias = WorkflowErrorValue
|
|
671
|
+
|
|
672
|
+
@typing.final
|
|
673
|
+
class WorkflowListArgument(google.protobuf.message.Message):
|
|
674
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
675
|
+
|
|
676
|
+
ITEMS_FIELD_NUMBER: builtins.int
|
|
677
|
+
@property
|
|
678
|
+
def items(
|
|
679
|
+
self,
|
|
680
|
+
) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
|
|
681
|
+
Global___WorkflowArgumentValue
|
|
682
|
+
]: ...
|
|
683
|
+
def __init__(
|
|
684
|
+
self,
|
|
685
|
+
*,
|
|
686
|
+
items: collections.abc.Iterable[Global___WorkflowArgumentValue] | None = ...,
|
|
687
|
+
) -> None: ...
|
|
688
|
+
def ClearField(self, field_name: typing.Literal["items", b"items"]) -> None: ...
|
|
689
|
+
|
|
690
|
+
Global___WorkflowListArgument: typing_extensions.TypeAlias = WorkflowListArgument
|
|
691
|
+
|
|
692
|
+
@typing.final
|
|
693
|
+
class WorkflowTupleArgument(google.protobuf.message.Message):
|
|
694
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
695
|
+
|
|
696
|
+
ITEMS_FIELD_NUMBER: builtins.int
|
|
697
|
+
@property
|
|
698
|
+
def items(
|
|
699
|
+
self,
|
|
700
|
+
) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
|
|
701
|
+
Global___WorkflowArgumentValue
|
|
702
|
+
]: ...
|
|
703
|
+
def __init__(
|
|
704
|
+
self,
|
|
705
|
+
*,
|
|
706
|
+
items: collections.abc.Iterable[Global___WorkflowArgumentValue] | None = ...,
|
|
707
|
+
) -> None: ...
|
|
708
|
+
def ClearField(self, field_name: typing.Literal["items", b"items"]) -> None: ...
|
|
709
|
+
|
|
710
|
+
Global___WorkflowTupleArgument: typing_extensions.TypeAlias = WorkflowTupleArgument
|
|
711
|
+
|
|
712
|
+
@typing.final
|
|
713
|
+
class WorkflowDictArgument(google.protobuf.message.Message):
|
|
714
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
715
|
+
|
|
716
|
+
ENTRIES_FIELD_NUMBER: builtins.int
|
|
717
|
+
@property
|
|
718
|
+
def entries(
|
|
719
|
+
self,
|
|
720
|
+
) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
|
|
721
|
+
Global___WorkflowArgument
|
|
722
|
+
]: ...
|
|
723
|
+
def __init__(
|
|
724
|
+
self,
|
|
725
|
+
*,
|
|
726
|
+
entries: collections.abc.Iterable[Global___WorkflowArgument] | None = ...,
|
|
727
|
+
) -> None: ...
|
|
728
|
+
def ClearField(self, field_name: typing.Literal["entries", b"entries"]) -> None: ...
|
|
729
|
+
|
|
730
|
+
Global___WorkflowDictArgument: typing_extensions.TypeAlias = WorkflowDictArgument
|
|
731
|
+
|
|
732
|
+
@typing.final
|
|
733
|
+
class WorkflowRegistration(google.protobuf.message.Message):
|
|
734
|
+
"""=============================================================================
|
|
735
|
+
Workflow Registration
|
|
736
|
+
=============================================================================
|
|
737
|
+
Messages for registering workflows and starting instances.
|
|
738
|
+
|
|
739
|
+
Workflow registration containing the IR program
|
|
740
|
+
"""
|
|
741
|
+
|
|
742
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
743
|
+
|
|
744
|
+
WORKFLOW_NAME_FIELD_NUMBER: builtins.int
|
|
745
|
+
IR_FIELD_NUMBER: builtins.int
|
|
746
|
+
IR_HASH_FIELD_NUMBER: builtins.int
|
|
747
|
+
INITIAL_CONTEXT_FIELD_NUMBER: builtins.int
|
|
748
|
+
CONCURRENT_FIELD_NUMBER: builtins.int
|
|
749
|
+
workflow_name: builtins.str
|
|
750
|
+
ir: builtins.bytes
|
|
751
|
+
"""Serialized IR program (from ast.proto)"""
|
|
752
|
+
ir_hash: builtins.str
|
|
753
|
+
"""Hash of the IR for versioning"""
|
|
754
|
+
concurrent: builtins.bool
|
|
755
|
+
"""Whether multiple instances can run"""
|
|
756
|
+
@property
|
|
757
|
+
def initial_context(self) -> Global___WorkflowArguments: ...
|
|
758
|
+
def __init__(
|
|
759
|
+
self,
|
|
760
|
+
*,
|
|
761
|
+
workflow_name: builtins.str = ...,
|
|
762
|
+
ir: builtins.bytes = ...,
|
|
763
|
+
ir_hash: builtins.str = ...,
|
|
764
|
+
initial_context: Global___WorkflowArguments | None = ...,
|
|
765
|
+
concurrent: builtins.bool = ...,
|
|
766
|
+
) -> None: ...
|
|
767
|
+
def HasField(
|
|
768
|
+
self, field_name: typing.Literal["initial_context", b"initial_context"]
|
|
769
|
+
) -> builtins.bool: ...
|
|
770
|
+
def ClearField(
|
|
771
|
+
self,
|
|
772
|
+
field_name: typing.Literal[
|
|
773
|
+
"concurrent",
|
|
774
|
+
b"concurrent",
|
|
775
|
+
"initial_context",
|
|
776
|
+
b"initial_context",
|
|
777
|
+
"ir",
|
|
778
|
+
b"ir",
|
|
779
|
+
"ir_hash",
|
|
780
|
+
b"ir_hash",
|
|
781
|
+
"workflow_name",
|
|
782
|
+
b"workflow_name",
|
|
783
|
+
],
|
|
784
|
+
) -> None: ...
|
|
785
|
+
|
|
786
|
+
Global___WorkflowRegistration: typing_extensions.TypeAlias = WorkflowRegistration
|
|
787
|
+
|
|
788
|
+
@typing.final
|
|
789
|
+
class RegisterWorkflowRequest(google.protobuf.message.Message):
|
|
790
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
791
|
+
|
|
792
|
+
REGISTRATION_FIELD_NUMBER: builtins.int
|
|
793
|
+
@property
|
|
794
|
+
def registration(self) -> Global___WorkflowRegistration: ...
|
|
795
|
+
def __init__(
|
|
796
|
+
self,
|
|
797
|
+
*,
|
|
798
|
+
registration: Global___WorkflowRegistration | None = ...,
|
|
799
|
+
) -> None: ...
|
|
800
|
+
def HasField(
|
|
801
|
+
self, field_name: typing.Literal["registration", b"registration"]
|
|
802
|
+
) -> builtins.bool: ...
|
|
803
|
+
def ClearField(self, field_name: typing.Literal["registration", b"registration"]) -> None: ...
|
|
804
|
+
|
|
805
|
+
Global___RegisterWorkflowRequest: typing_extensions.TypeAlias = RegisterWorkflowRequest
|
|
806
|
+
|
|
807
|
+
@typing.final
|
|
808
|
+
class RegisterWorkflowResponse(google.protobuf.message.Message):
|
|
809
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
810
|
+
|
|
811
|
+
WORKFLOW_VERSION_ID_FIELD_NUMBER: builtins.int
|
|
812
|
+
WORKFLOW_INSTANCE_ID_FIELD_NUMBER: builtins.int
|
|
813
|
+
workflow_version_id: builtins.str
|
|
814
|
+
workflow_instance_id: builtins.str
|
|
815
|
+
def __init__(
|
|
816
|
+
self,
|
|
817
|
+
*,
|
|
818
|
+
workflow_version_id: builtins.str = ...,
|
|
819
|
+
workflow_instance_id: builtins.str = ...,
|
|
820
|
+
) -> None: ...
|
|
821
|
+
def ClearField(
|
|
822
|
+
self,
|
|
823
|
+
field_name: typing.Literal[
|
|
824
|
+
"workflow_instance_id",
|
|
825
|
+
b"workflow_instance_id",
|
|
826
|
+
"workflow_version_id",
|
|
827
|
+
b"workflow_version_id",
|
|
828
|
+
],
|
|
829
|
+
) -> None: ...
|
|
830
|
+
|
|
831
|
+
Global___RegisterWorkflowResponse: typing_extensions.TypeAlias = RegisterWorkflowResponse
|
|
832
|
+
|
|
833
|
+
@typing.final
|
|
834
|
+
class WaitForInstanceRequest(google.protobuf.message.Message):
|
|
835
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
836
|
+
|
|
837
|
+
INSTANCE_ID_FIELD_NUMBER: builtins.int
|
|
838
|
+
POLL_INTERVAL_SECS_FIELD_NUMBER: builtins.int
|
|
839
|
+
instance_id: builtins.str
|
|
840
|
+
poll_interval_secs: builtins.float
|
|
841
|
+
def __init__(
|
|
842
|
+
self,
|
|
843
|
+
*,
|
|
844
|
+
instance_id: builtins.str = ...,
|
|
845
|
+
poll_interval_secs: builtins.float = ...,
|
|
846
|
+
) -> None: ...
|
|
847
|
+
def ClearField(
|
|
848
|
+
self,
|
|
849
|
+
field_name: typing.Literal[
|
|
850
|
+
"instance_id", b"instance_id", "poll_interval_secs", b"poll_interval_secs"
|
|
851
|
+
],
|
|
852
|
+
) -> None: ...
|
|
853
|
+
|
|
854
|
+
Global___WaitForInstanceRequest: typing_extensions.TypeAlias = WaitForInstanceRequest
|
|
855
|
+
|
|
856
|
+
@typing.final
|
|
857
|
+
class WaitForInstanceResponse(google.protobuf.message.Message):
|
|
858
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
859
|
+
|
|
860
|
+
PAYLOAD_FIELD_NUMBER: builtins.int
|
|
861
|
+
payload: builtins.bytes
|
|
862
|
+
def __init__(
|
|
863
|
+
self,
|
|
864
|
+
*,
|
|
865
|
+
payload: builtins.bytes = ...,
|
|
866
|
+
) -> None: ...
|
|
867
|
+
def ClearField(self, field_name: typing.Literal["payload", b"payload"]) -> None: ...
|
|
868
|
+
|
|
869
|
+
Global___WaitForInstanceResponse: typing_extensions.TypeAlias = WaitForInstanceResponse
|
|
870
|
+
|
|
871
|
+
@typing.final
|
|
872
|
+
class ScheduleDefinition(google.protobuf.message.Message):
|
|
873
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
874
|
+
|
|
875
|
+
TYPE_FIELD_NUMBER: builtins.int
|
|
876
|
+
CRON_EXPRESSION_FIELD_NUMBER: builtins.int
|
|
877
|
+
INTERVAL_SECONDS_FIELD_NUMBER: builtins.int
|
|
878
|
+
type: Global___ScheduleType.ValueType
|
|
879
|
+
cron_expression: builtins.str
|
|
880
|
+
"""For cron: the cron expression (e.g., "0 * * * *")"""
|
|
881
|
+
interval_seconds: builtins.int
|
|
882
|
+
"""For interval: duration in seconds"""
|
|
883
|
+
def __init__(
|
|
884
|
+
self,
|
|
885
|
+
*,
|
|
886
|
+
type: Global___ScheduleType.ValueType = ...,
|
|
887
|
+
cron_expression: builtins.str = ...,
|
|
888
|
+
interval_seconds: builtins.int = ...,
|
|
889
|
+
) -> None: ...
|
|
890
|
+
def ClearField(
|
|
891
|
+
self,
|
|
892
|
+
field_name: typing.Literal[
|
|
893
|
+
"cron_expression",
|
|
894
|
+
b"cron_expression",
|
|
895
|
+
"interval_seconds",
|
|
896
|
+
b"interval_seconds",
|
|
897
|
+
"type",
|
|
898
|
+
b"type",
|
|
899
|
+
],
|
|
900
|
+
) -> None: ...
|
|
901
|
+
|
|
902
|
+
Global___ScheduleDefinition: typing_extensions.TypeAlias = ScheduleDefinition
|
|
903
|
+
|
|
904
|
+
@typing.final
|
|
905
|
+
class RegisterScheduleRequest(google.protobuf.message.Message):
|
|
906
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
907
|
+
|
|
908
|
+
WORKFLOW_NAME_FIELD_NUMBER: builtins.int
|
|
909
|
+
SCHEDULE_FIELD_NUMBER: builtins.int
|
|
910
|
+
INPUTS_FIELD_NUMBER: builtins.int
|
|
911
|
+
REGISTRATION_FIELD_NUMBER: builtins.int
|
|
912
|
+
workflow_name: builtins.str
|
|
913
|
+
@property
|
|
914
|
+
def schedule(self) -> Global___ScheduleDefinition: ...
|
|
915
|
+
@property
|
|
916
|
+
def inputs(self) -> Global___WorkflowArguments:
|
|
917
|
+
"""Optional: inputs to pass to each scheduled run"""
|
|
918
|
+
|
|
919
|
+
@property
|
|
920
|
+
def registration(self) -> Global___WorkflowRegistration:
|
|
921
|
+
"""Optional: workflow registration to register the DAG before scheduling.
|
|
922
|
+
If provided, the workflow version will be registered (or updated) before
|
|
923
|
+
the schedule is created. This ensures the workflow can execute when the
|
|
924
|
+
schedule fires.
|
|
925
|
+
"""
|
|
926
|
+
|
|
927
|
+
def __init__(
|
|
928
|
+
self,
|
|
929
|
+
*,
|
|
930
|
+
workflow_name: builtins.str = ...,
|
|
931
|
+
schedule: Global___ScheduleDefinition | None = ...,
|
|
932
|
+
inputs: Global___WorkflowArguments | None = ...,
|
|
933
|
+
registration: Global___WorkflowRegistration | None = ...,
|
|
934
|
+
) -> None: ...
|
|
935
|
+
def HasField(
|
|
936
|
+
self,
|
|
937
|
+
field_name: typing.Literal[
|
|
938
|
+
"inputs", b"inputs", "registration", b"registration", "schedule", b"schedule"
|
|
939
|
+
],
|
|
940
|
+
) -> builtins.bool: ...
|
|
941
|
+
def ClearField(
|
|
942
|
+
self,
|
|
943
|
+
field_name: typing.Literal[
|
|
944
|
+
"inputs",
|
|
945
|
+
b"inputs",
|
|
946
|
+
"registration",
|
|
947
|
+
b"registration",
|
|
948
|
+
"schedule",
|
|
949
|
+
b"schedule",
|
|
950
|
+
"workflow_name",
|
|
951
|
+
b"workflow_name",
|
|
952
|
+
],
|
|
953
|
+
) -> None: ...
|
|
954
|
+
|
|
955
|
+
Global___RegisterScheduleRequest: typing_extensions.TypeAlias = RegisterScheduleRequest
|
|
956
|
+
|
|
957
|
+
@typing.final
|
|
958
|
+
class RegisterScheduleResponse(google.protobuf.message.Message):
|
|
959
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
960
|
+
|
|
961
|
+
SCHEDULE_ID_FIELD_NUMBER: builtins.int
|
|
962
|
+
NEXT_RUN_AT_FIELD_NUMBER: builtins.int
|
|
963
|
+
schedule_id: builtins.str
|
|
964
|
+
next_run_at: builtins.str
|
|
965
|
+
"""The computed next_run_at timestamp (ISO 8601)"""
|
|
966
|
+
def __init__(
|
|
967
|
+
self,
|
|
968
|
+
*,
|
|
969
|
+
schedule_id: builtins.str = ...,
|
|
970
|
+
next_run_at: builtins.str = ...,
|
|
971
|
+
) -> None: ...
|
|
972
|
+
def ClearField(
|
|
973
|
+
self,
|
|
974
|
+
field_name: typing.Literal["next_run_at", b"next_run_at", "schedule_id", b"schedule_id"],
|
|
975
|
+
) -> None: ...
|
|
976
|
+
|
|
977
|
+
Global___RegisterScheduleResponse: typing_extensions.TypeAlias = RegisterScheduleResponse
|
|
978
|
+
|
|
979
|
+
@typing.final
|
|
980
|
+
class UpdateScheduleStatusRequest(google.protobuf.message.Message):
|
|
981
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
982
|
+
|
|
983
|
+
WORKFLOW_NAME_FIELD_NUMBER: builtins.int
|
|
984
|
+
STATUS_FIELD_NUMBER: builtins.int
|
|
985
|
+
workflow_name: builtins.str
|
|
986
|
+
status: Global___ScheduleStatus.ValueType
|
|
987
|
+
def __init__(
|
|
988
|
+
self,
|
|
989
|
+
*,
|
|
990
|
+
workflow_name: builtins.str = ...,
|
|
991
|
+
status: Global___ScheduleStatus.ValueType = ...,
|
|
992
|
+
) -> None: ...
|
|
993
|
+
def ClearField(
|
|
994
|
+
self, field_name: typing.Literal["status", b"status", "workflow_name", b"workflow_name"]
|
|
995
|
+
) -> None: ...
|
|
996
|
+
|
|
997
|
+
Global___UpdateScheduleStatusRequest: typing_extensions.TypeAlias = UpdateScheduleStatusRequest
|
|
998
|
+
|
|
999
|
+
@typing.final
|
|
1000
|
+
class UpdateScheduleStatusResponse(google.protobuf.message.Message):
|
|
1001
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
1002
|
+
|
|
1003
|
+
SUCCESS_FIELD_NUMBER: builtins.int
|
|
1004
|
+
success: builtins.bool
|
|
1005
|
+
def __init__(
|
|
1006
|
+
self,
|
|
1007
|
+
*,
|
|
1008
|
+
success: builtins.bool = ...,
|
|
1009
|
+
) -> None: ...
|
|
1010
|
+
def ClearField(self, field_name: typing.Literal["success", b"success"]) -> None: ...
|
|
1011
|
+
|
|
1012
|
+
Global___UpdateScheduleStatusResponse: typing_extensions.TypeAlias = UpdateScheduleStatusResponse
|
|
1013
|
+
|
|
1014
|
+
@typing.final
|
|
1015
|
+
class DeleteScheduleRequest(google.protobuf.message.Message):
|
|
1016
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
1017
|
+
|
|
1018
|
+
WORKFLOW_NAME_FIELD_NUMBER: builtins.int
|
|
1019
|
+
workflow_name: builtins.str
|
|
1020
|
+
def __init__(
|
|
1021
|
+
self,
|
|
1022
|
+
*,
|
|
1023
|
+
workflow_name: builtins.str = ...,
|
|
1024
|
+
) -> None: ...
|
|
1025
|
+
def ClearField(self, field_name: typing.Literal["workflow_name", b"workflow_name"]) -> None: ...
|
|
1026
|
+
|
|
1027
|
+
Global___DeleteScheduleRequest: typing_extensions.TypeAlias = DeleteScheduleRequest
|
|
1028
|
+
|
|
1029
|
+
@typing.final
|
|
1030
|
+
class DeleteScheduleResponse(google.protobuf.message.Message):
|
|
1031
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
1032
|
+
|
|
1033
|
+
SUCCESS_FIELD_NUMBER: builtins.int
|
|
1034
|
+
success: builtins.bool
|
|
1035
|
+
def __init__(
|
|
1036
|
+
self,
|
|
1037
|
+
*,
|
|
1038
|
+
success: builtins.bool = ...,
|
|
1039
|
+
) -> None: ...
|
|
1040
|
+
def ClearField(self, field_name: typing.Literal["success", b"success"]) -> None: ...
|
|
1041
|
+
|
|
1042
|
+
Global___DeleteScheduleResponse: typing_extensions.TypeAlias = DeleteScheduleResponse
|
|
1043
|
+
|
|
1044
|
+
@typing.final
|
|
1045
|
+
class ListSchedulesRequest(google.protobuf.message.Message):
|
|
1046
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
1047
|
+
|
|
1048
|
+
STATUS_FILTER_FIELD_NUMBER: builtins.int
|
|
1049
|
+
status_filter: builtins.str
|
|
1050
|
+
"""Optional filter by status ("active", "paused"). If empty, returns all non-deleted."""
|
|
1051
|
+
def __init__(
|
|
1052
|
+
self,
|
|
1053
|
+
*,
|
|
1054
|
+
status_filter: builtins.str | None = ...,
|
|
1055
|
+
) -> None: ...
|
|
1056
|
+
def HasField(
|
|
1057
|
+
self,
|
|
1058
|
+
field_name: typing.Literal[
|
|
1059
|
+
"_status_filter", b"_status_filter", "status_filter", b"status_filter"
|
|
1060
|
+
],
|
|
1061
|
+
) -> builtins.bool: ...
|
|
1062
|
+
def ClearField(
|
|
1063
|
+
self,
|
|
1064
|
+
field_name: typing.Literal[
|
|
1065
|
+
"_status_filter", b"_status_filter", "status_filter", b"status_filter"
|
|
1066
|
+
],
|
|
1067
|
+
) -> None: ...
|
|
1068
|
+
def WhichOneof(
|
|
1069
|
+
self, oneof_group: typing.Literal["_status_filter", b"_status_filter"]
|
|
1070
|
+
) -> typing.Literal["status_filter"] | None: ...
|
|
1071
|
+
|
|
1072
|
+
Global___ListSchedulesRequest: typing_extensions.TypeAlias = ListSchedulesRequest
|
|
1073
|
+
|
|
1074
|
+
@typing.final
|
|
1075
|
+
class ScheduleInfo(google.protobuf.message.Message):
|
|
1076
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
1077
|
+
|
|
1078
|
+
ID_FIELD_NUMBER: builtins.int
|
|
1079
|
+
WORKFLOW_NAME_FIELD_NUMBER: builtins.int
|
|
1080
|
+
SCHEDULE_TYPE_FIELD_NUMBER: builtins.int
|
|
1081
|
+
CRON_EXPRESSION_FIELD_NUMBER: builtins.int
|
|
1082
|
+
INTERVAL_SECONDS_FIELD_NUMBER: builtins.int
|
|
1083
|
+
STATUS_FIELD_NUMBER: builtins.int
|
|
1084
|
+
NEXT_RUN_AT_FIELD_NUMBER: builtins.int
|
|
1085
|
+
LAST_RUN_AT_FIELD_NUMBER: builtins.int
|
|
1086
|
+
LAST_INSTANCE_ID_FIELD_NUMBER: builtins.int
|
|
1087
|
+
CREATED_AT_FIELD_NUMBER: builtins.int
|
|
1088
|
+
UPDATED_AT_FIELD_NUMBER: builtins.int
|
|
1089
|
+
id: builtins.str
|
|
1090
|
+
workflow_name: builtins.str
|
|
1091
|
+
schedule_type: Global___ScheduleType.ValueType
|
|
1092
|
+
cron_expression: builtins.str
|
|
1093
|
+
"""Empty if interval-based"""
|
|
1094
|
+
interval_seconds: builtins.int
|
|
1095
|
+
"""0 if cron-based"""
|
|
1096
|
+
status: Global___ScheduleStatus.ValueType
|
|
1097
|
+
next_run_at: builtins.str
|
|
1098
|
+
"""ISO 8601 timestamp"""
|
|
1099
|
+
last_run_at: builtins.str
|
|
1100
|
+
"""ISO 8601 timestamp, empty if never run"""
|
|
1101
|
+
last_instance_id: builtins.str
|
|
1102
|
+
"""Empty if never run"""
|
|
1103
|
+
created_at: builtins.str
|
|
1104
|
+
"""ISO 8601 timestamp"""
|
|
1105
|
+
updated_at: builtins.str
|
|
1106
|
+
"""ISO 8601 timestamp"""
|
|
1107
|
+
def __init__(
|
|
1108
|
+
self,
|
|
1109
|
+
*,
|
|
1110
|
+
id: builtins.str = ...,
|
|
1111
|
+
workflow_name: builtins.str = ...,
|
|
1112
|
+
schedule_type: Global___ScheduleType.ValueType = ...,
|
|
1113
|
+
cron_expression: builtins.str = ...,
|
|
1114
|
+
interval_seconds: builtins.int = ...,
|
|
1115
|
+
status: Global___ScheduleStatus.ValueType = ...,
|
|
1116
|
+
next_run_at: builtins.str = ...,
|
|
1117
|
+
last_run_at: builtins.str = ...,
|
|
1118
|
+
last_instance_id: builtins.str = ...,
|
|
1119
|
+
created_at: builtins.str = ...,
|
|
1120
|
+
updated_at: builtins.str = ...,
|
|
1121
|
+
) -> None: ...
|
|
1122
|
+
def ClearField(
|
|
1123
|
+
self,
|
|
1124
|
+
field_name: typing.Literal[
|
|
1125
|
+
"created_at",
|
|
1126
|
+
b"created_at",
|
|
1127
|
+
"cron_expression",
|
|
1128
|
+
b"cron_expression",
|
|
1129
|
+
"id",
|
|
1130
|
+
b"id",
|
|
1131
|
+
"interval_seconds",
|
|
1132
|
+
b"interval_seconds",
|
|
1133
|
+
"last_instance_id",
|
|
1134
|
+
b"last_instance_id",
|
|
1135
|
+
"last_run_at",
|
|
1136
|
+
b"last_run_at",
|
|
1137
|
+
"next_run_at",
|
|
1138
|
+
b"next_run_at",
|
|
1139
|
+
"schedule_type",
|
|
1140
|
+
b"schedule_type",
|
|
1141
|
+
"status",
|
|
1142
|
+
b"status",
|
|
1143
|
+
"updated_at",
|
|
1144
|
+
b"updated_at",
|
|
1145
|
+
"workflow_name",
|
|
1146
|
+
b"workflow_name",
|
|
1147
|
+
],
|
|
1148
|
+
) -> None: ...
|
|
1149
|
+
|
|
1150
|
+
Global___ScheduleInfo: typing_extensions.TypeAlias = ScheduleInfo
|
|
1151
|
+
|
|
1152
|
+
@typing.final
|
|
1153
|
+
class ListSchedulesResponse(google.protobuf.message.Message):
|
|
1154
|
+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
|
1155
|
+
|
|
1156
|
+
SCHEDULES_FIELD_NUMBER: builtins.int
|
|
1157
|
+
@property
|
|
1158
|
+
def schedules(
|
|
1159
|
+
self,
|
|
1160
|
+
) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
|
|
1161
|
+
Global___ScheduleInfo
|
|
1162
|
+
]: ...
|
|
1163
|
+
def __init__(
|
|
1164
|
+
self,
|
|
1165
|
+
*,
|
|
1166
|
+
schedules: collections.abc.Iterable[Global___ScheduleInfo] | None = ...,
|
|
1167
|
+
) -> None: ...
|
|
1168
|
+
def ClearField(self, field_name: typing.Literal["schedules", b"schedules"]) -> None: ...
|
|
1169
|
+
|
|
1170
|
+
Global___ListSchedulesResponse: typing_extensions.TypeAlias = ListSchedulesResponse
|