sapiopycommons 2025.4.17a488__py3-none-any.whl → 2025.4.22a490__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.

Potentially problematic release.


This version of sapiopycommons might be problematic. Click here for more details.

Files changed (48) hide show
  1. sapiopycommons/ai/__init__.py +0 -0
  2. sapiopycommons/ai/api/plan/proto/step_output_pb2.py +45 -0
  3. sapiopycommons/ai/api/plan/proto/step_output_pb2.pyi +42 -0
  4. sapiopycommons/ai/api/plan/proto/step_output_pb2_grpc.py +24 -0
  5. sapiopycommons/ai/api/plan/proto/step_pb2.py +43 -0
  6. sapiopycommons/ai/api/plan/proto/step_pb2.pyi +43 -0
  7. sapiopycommons/ai/api/plan/proto/step_pb2_grpc.py +24 -0
  8. sapiopycommons/ai/api/plan/script/proto/script_pb2.py +51 -0
  9. sapiopycommons/ai/api/plan/script/proto/script_pb2.pyi +73 -0
  10. sapiopycommons/ai/api/plan/script/proto/script_pb2_grpc.py +153 -0
  11. sapiopycommons/ai/api/plan/tool/proto/entry_pb2.py +57 -0
  12. sapiopycommons/ai/api/plan/tool/proto/entry_pb2.pyi +96 -0
  13. sapiopycommons/ai/api/plan/tool/proto/entry_pb2_grpc.py +24 -0
  14. sapiopycommons/ai/api/plan/tool/proto/tool_pb2.py +61 -0
  15. sapiopycommons/ai/api/plan/tool/proto/tool_pb2.pyi +114 -0
  16. sapiopycommons/ai/api/plan/tool/proto/tool_pb2_grpc.py +154 -0
  17. sapiopycommons/ai/api/session/proto/sapio_conn_info_pb2.py +39 -0
  18. sapiopycommons/ai/api/session/proto/sapio_conn_info_pb2.pyi +32 -0
  19. sapiopycommons/ai/api/session/proto/sapio_conn_info_pb2_grpc.py +24 -0
  20. sapiopycommons/ai/tool_of_tools.py +917 -0
  21. sapiopycommons/ai/tool_service_base.py +271 -0
  22. sapiopycommons/callbacks/callback_util.py +64 -116
  23. sapiopycommons/callbacks/field_builder.py +0 -2
  24. sapiopycommons/customreport/auto_pagers.py +1 -2
  25. sapiopycommons/customreport/term_builder.py +1 -1
  26. sapiopycommons/datatype/pseudo_data_types.py +326 -349
  27. sapiopycommons/eln/experiment_handler.py +719 -336
  28. sapiopycommons/eln/plate_designer.py +2 -7
  29. sapiopycommons/files/file_util.py +4 -4
  30. sapiopycommons/general/accession_service.py +2 -2
  31. sapiopycommons/general/aliases.py +1 -4
  32. sapiopycommons/general/html_formatter.py +456 -0
  33. sapiopycommons/general/sapio_links.py +12 -4
  34. sapiopycommons/processtracking/custom_workflow_handler.py +1 -2
  35. sapiopycommons/recordmodel/record_handler.py +27 -357
  36. sapiopycommons/rules/eln_rule_handler.py +1 -8
  37. sapiopycommons/rules/on_save_rule_handler.py +1 -8
  38. sapiopycommons/webhook/webhook_handlers.py +0 -3
  39. sapiopycommons/webhook/webservice_handlers.py +2 -2
  40. {sapiopycommons-2025.4.17a488.dist-info → sapiopycommons-2025.4.22a490.dist-info}/METADATA +2 -2
  41. sapiopycommons-2025.4.22a490.dist-info/RECORD +85 -0
  42. sapiopycommons/eln/experiment_cache.py +0 -188
  43. sapiopycommons/eln/experiment_step_factory.py +0 -476
  44. sapiopycommons/eln/step_creation.py +0 -236
  45. sapiopycommons/general/data_structure_util.py +0 -115
  46. sapiopycommons-2025.4.17a488.dist-info/RECORD +0 -67
  47. {sapiopycommons-2025.4.17a488.dist-info → sapiopycommons-2025.4.22a490.dist-info}/WHEEL +0 -0
  48. {sapiopycommons-2025.4.17a488.dist-info → sapiopycommons-2025.4.22a490.dist-info}/licenses/LICENSE +0 -0
File without changes
@@ -0,0 +1,45 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: com/velox/api/plan/proto/step_output.proto
5
+ # Protobuf Python Version: 5.29.0
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 5,
15
+ 29,
16
+ 0,
17
+ '',
18
+ 'com/velox/api/plan/proto/step_output.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n*com/velox/api/plan/proto/step_output.proto\"$\n\x13StepJsonOutputEntry\x12\r\n\x05\x65ntry\x18\x01 \x01(\t\"$\n\x13StepTextOutputEntry\x12\r\n\x05\x65ntry\x18\x01 \x01(\t\"#\n\x12StepCsvOutputEntry\x12\r\n\x05\x63\x65lls\x18\x01 \x03(\t\"&\n\x15StepBinaryOutputEntry\x12\r\n\x05\x65ntry\x18\x01 \x01(\x0c\"\xd1\x01\n\x0fStepOutputEntry\x12+\n\x0bjson_output\x18\x01 \x01(\x0b\x32\x14.StepJsonOutputEntryH\x00\x12+\n\x0btext_output\x18\x02 \x01(\x0b\x32\x14.StepTextOutputEntryH\x00\x12)\n\ncsv_output\x18\x03 \x01(\x0b\x32\x13.StepCsvOutputEntryH\x00\x12/\n\rbinary_output\x18\x04 \x01(\x0b\x32\x16.StepBinaryOutputEntryH\x00\x42\x08\n\x06outputB\x1c\n\x18\x63om.velox.api.plan.protoP\x01\x62\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sapiopycommons.ai.api.plan.proto.step_output_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'\n\030sapiopycommons.ai.api.plan.protoP\001'
35
+ _globals['_STEPJSONOUTPUTENTRY']._serialized_start=46
36
+ _globals['_STEPJSONOUTPUTENTRY']._serialized_end=82
37
+ _globals['_STEPTEXTOUTPUTENTRY']._serialized_start=84
38
+ _globals['_STEPTEXTOUTPUTENTRY']._serialized_end=120
39
+ _globals['_STEPCSVOUTPUTENTRY']._serialized_start=122
40
+ _globals['_STEPCSVOUTPUTENTRY']._serialized_end=157
41
+ _globals['_STEPBINARYOUTPUTENTRY']._serialized_start=159
42
+ _globals['_STEPBINARYOUTPUTENTRY']._serialized_end=197
43
+ _globals['_STEPOUTPUTENTRY']._serialized_start=200
44
+ _globals['_STEPOUTPUTENTRY']._serialized_end=409
45
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,42 @@
1
+ from google.protobuf.internal import containers as _containers
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
5
+
6
+ DESCRIPTOR: _descriptor.FileDescriptor
7
+
8
+ class StepJsonOutputEntry(_message.Message):
9
+ __slots__ = ("entry",)
10
+ ENTRY_FIELD_NUMBER: _ClassVar[int]
11
+ entry: str
12
+ def __init__(self, entry: _Optional[str] = ...) -> None: ...
13
+
14
+ class StepTextOutputEntry(_message.Message):
15
+ __slots__ = ("entry",)
16
+ ENTRY_FIELD_NUMBER: _ClassVar[int]
17
+ entry: str
18
+ def __init__(self, entry: _Optional[str] = ...) -> None: ...
19
+
20
+ class StepCsvOutputEntry(_message.Message):
21
+ __slots__ = ("cells",)
22
+ CELLS_FIELD_NUMBER: _ClassVar[int]
23
+ cells: _containers.RepeatedScalarFieldContainer[str]
24
+ def __init__(self, cells: _Optional[_Iterable[str]] = ...) -> None: ...
25
+
26
+ class StepBinaryOutputEntry(_message.Message):
27
+ __slots__ = ("entry",)
28
+ ENTRY_FIELD_NUMBER: _ClassVar[int]
29
+ entry: bytes
30
+ def __init__(self, entry: _Optional[bytes] = ...) -> None: ...
31
+
32
+ class StepOutputEntry(_message.Message):
33
+ __slots__ = ("json_output", "text_output", "csv_output", "binary_output")
34
+ JSON_OUTPUT_FIELD_NUMBER: _ClassVar[int]
35
+ TEXT_OUTPUT_FIELD_NUMBER: _ClassVar[int]
36
+ CSV_OUTPUT_FIELD_NUMBER: _ClassVar[int]
37
+ BINARY_OUTPUT_FIELD_NUMBER: _ClassVar[int]
38
+ json_output: StepJsonOutputEntry
39
+ text_output: StepTextOutputEntry
40
+ csv_output: StepCsvOutputEntry
41
+ binary_output: StepBinaryOutputEntry
42
+ def __init__(self, json_output: _Optional[_Union[StepJsonOutputEntry, _Mapping]] = ..., text_output: _Optional[_Union[StepTextOutputEntry, _Mapping]] = ..., csv_output: _Optional[_Union[StepCsvOutputEntry, _Mapping]] = ..., binary_output: _Optional[_Union[StepBinaryOutputEntry, _Mapping]] = ...) -> None: ...
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.71.0'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + f' but the generated code in com/velox/api/plan/proto/step_output_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )
@@ -0,0 +1,43 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: com/velox/api/plan/proto/step.proto
5
+ # Protobuf Python Version: 5.29.0
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 5,
15
+ 29,
16
+ 0,
17
+ '',
18
+ 'com/velox/api/plan/proto/step.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#com/velox/api/plan/proto/step.proto\"K\n\nStepIoInfo\x12\x16\n\x0estep_io_number\x18\x01 \x01(\x05\x12\x14\n\x0c\x63ontent_type\x18\x02 \x01(\t\x12\x0f\n\x07io_name\x18\x03 \x01(\t\"l\n\rStepIoDetails\x12!\n\x0cstep_io_info\x18\x01 \x01(\x0b\x32\x0b.StepIoInfo\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0f\n\x07\x65xample\x18\x03 \x01(\t\x12\x12\n\nvalidation\x18\x04 \x01(\t\"j\n\x10StepInputDetails\x12\'\n\x0fstep_io_details\x18\x01 \x01(\x0b\x32\x0e.StepIoDetails\x12\x18\n\x10paging_supported\x18\x02 \x01(\x08\x12\x13\n\x0bmax_entries\x18\x03 \x01(\x05\"<\n\x11StepOutputDetails\x12\'\n\x0fstep_io_details\x18\x01 \x01(\x0b\x32\x0e.StepIoDetailsB\x1c\n\x18\x63om.velox.api.plan.protoP\x01\x62\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sapiopycommons.ai.api.plan.proto.step_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'\n\030sapiopycommons.ai.api.plan.protoP\001'
35
+ _globals['_STEPIOINFO']._serialized_start=39
36
+ _globals['_STEPIOINFO']._serialized_end=114
37
+ _globals['_STEPIODETAILS']._serialized_start=116
38
+ _globals['_STEPIODETAILS']._serialized_end=224
39
+ _globals['_STEPINPUTDETAILS']._serialized_start=226
40
+ _globals['_STEPINPUTDETAILS']._serialized_end=332
41
+ _globals['_STEPOUTPUTDETAILS']._serialized_start=334
42
+ _globals['_STEPOUTPUTDETAILS']._serialized_end=394
43
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,43 @@
1
+ from google.protobuf import descriptor as _descriptor
2
+ from google.protobuf import message as _message
3
+ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
4
+
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class StepIoInfo(_message.Message):
8
+ __slots__ = ("step_io_number", "content_type", "io_name")
9
+ STEP_IO_NUMBER_FIELD_NUMBER: _ClassVar[int]
10
+ CONTENT_TYPE_FIELD_NUMBER: _ClassVar[int]
11
+ IO_NAME_FIELD_NUMBER: _ClassVar[int]
12
+ step_io_number: int
13
+ content_type: str
14
+ io_name: str
15
+ def __init__(self, step_io_number: _Optional[int] = ..., content_type: _Optional[str] = ..., io_name: _Optional[str] = ...) -> None: ...
16
+
17
+ class StepIoDetails(_message.Message):
18
+ __slots__ = ("step_io_info", "description", "example", "validation")
19
+ STEP_IO_INFO_FIELD_NUMBER: _ClassVar[int]
20
+ DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
21
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
22
+ VALIDATION_FIELD_NUMBER: _ClassVar[int]
23
+ step_io_info: StepIoInfo
24
+ description: str
25
+ example: str
26
+ validation: str
27
+ def __init__(self, step_io_info: _Optional[_Union[StepIoInfo, _Mapping]] = ..., description: _Optional[str] = ..., example: _Optional[str] = ..., validation: _Optional[str] = ...) -> None: ...
28
+
29
+ class StepInputDetails(_message.Message):
30
+ __slots__ = ("step_io_details", "paging_supported", "max_entries")
31
+ STEP_IO_DETAILS_FIELD_NUMBER: _ClassVar[int]
32
+ PAGING_SUPPORTED_FIELD_NUMBER: _ClassVar[int]
33
+ MAX_ENTRIES_FIELD_NUMBER: _ClassVar[int]
34
+ step_io_details: StepIoDetails
35
+ paging_supported: bool
36
+ max_entries: int
37
+ def __init__(self, step_io_details: _Optional[_Union[StepIoDetails, _Mapping]] = ..., paging_supported: bool = ..., max_entries: _Optional[int] = ...) -> None: ...
38
+
39
+ class StepOutputDetails(_message.Message):
40
+ __slots__ = ("step_io_details",)
41
+ STEP_IO_DETAILS_FIELD_NUMBER: _ClassVar[int]
42
+ step_io_details: StepIoDetails
43
+ def __init__(self, step_io_details: _Optional[_Union[StepIoDetails, _Mapping]] = ...) -> None: ...
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.71.0'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + f' but the generated code in com/velox/api/plan/proto/step_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )
@@ -0,0 +1,51 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: com/velox/api/plan/script/proto/script.proto
5
+ # Protobuf Python Version: 5.29.0
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 5,
15
+ 29,
16
+ 0,
17
+ '',
18
+ 'com/velox/api/plan/script/proto/script.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from sapiopycommons.ai.api.plan.tool.proto import entry_pb2 as com_dot_velox_dot_api_dot_plan_dot_tool_dot_proto_dot_entry__pb2
26
+ from sapiopycommons.ai.api.plan.proto import step_pb2 as com_dot_velox_dot_api_dot_plan_dot_proto_dot_step__pb2
27
+ from sapiopycommons.ai.api.session.proto import sapio_conn_info_pb2 as com_dot_velox_dot_api_dot_session_dot_proto_dot_sapio__conn__info__pb2
28
+
29
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import *
30
+ from sapiopycommons.ai.api.plan.proto.step_pb2 import *
31
+ from sapiopycommons.ai.api.session.proto.sapio_conn_info_pb2 import *
32
+
33
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n,com/velox/api/plan/script/proto/script.proto\x1a)com/velox/api/plan/tool/proto/entry.proto\x1a#com/velox/api/plan/proto/step.proto\x1a\x31\x63om/velox/api/session/proto/sapio_conn_info.proto\"\x99\x02\n\x16\x43reateScriptJobRequest\x12(\n\nsapio_user\x18\x01 \x01(\x0b\x32\x14.SapioConnectionInfo\x12\x17\n\x0fscript_language\x18\x02 \x01(\t\x12\x18\n\x10plan_instance_id\x18\x03 \x01(\x03\x12\x18\n\x10step_instance_id\x18\x04 \x01(\x03\x12\x15\n\rinvocation_id\x18\x05 \x01(\x03\x12\"\n\rinput_configs\x18\x06 \x03(\x0b\x32\x0b.StepIoInfo\x12#\n\x0eoutput_configs\x18\x07 \x03(\x0b\x32\x0b.StepIoInfo\x12(\n\nentry_data\x18\xff\x0f \x03(\x0b\x32\x13.StepEntryInputData\")\n\x17\x43reateScriptJobResponse\x12\x0e\n\x06job_id\x18\x01 \x01(\t\"\x1f\n\rGetJobRequest\x12\x0e\n\x06job_id\x18\x01 \x01(\t\"I\n\x0eGetJobResponse\x12\x0c\n\x03log\x18\xfe\x0f \x03(\t\x12)\n\nentry_data\x18\xff\x0f \x03(\x0b\x32\x14.StepEntryOutputData2\x80\x01\n\rScriptService\x12\x44\n\x0f\x43reateScriptJob\x12\x17.CreateScriptJobRequest\x1a\x18.CreateScriptJobResponse\x12)\n\x06GetJob\x12\x0e.GetJobRequest\x1a\x0f.GetJobResponseB!\n\x1f\x63om.velox.api.plan.script.protoP\x00P\x01P\x02\x62\x06proto3')
34
+
35
+ _globals = globals()
36
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
37
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sapiopycommons.ai.api.plan.script.proto.script_pb2', _globals)
38
+ if not _descriptor._USE_C_DESCRIPTORS:
39
+ _globals['DESCRIPTOR']._loaded_options = None
40
+ _globals['DESCRIPTOR']._serialized_options = b'\n\037sapiopycommons.ai.api.plan.script.proto'
41
+ _globals['_CREATESCRIPTJOBREQUEST']._serialized_start=180
42
+ _globals['_CREATESCRIPTJOBREQUEST']._serialized_end=461
43
+ _globals['_CREATESCRIPTJOBRESPONSE']._serialized_start=463
44
+ _globals['_CREATESCRIPTJOBRESPONSE']._serialized_end=504
45
+ _globals['_GETJOBREQUEST']._serialized_start=506
46
+ _globals['_GETJOBREQUEST']._serialized_end=537
47
+ _globals['_GETJOBRESPONSE']._serialized_start=539
48
+ _globals['_GETJOBRESPONSE']._serialized_end=612
49
+ _globals['_SCRIPTSERVICE']._serialized_start=615
50
+ _globals['_SCRIPTSERVICE']._serialized_end=743
51
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,73 @@
1
+ from sapiopycommons.ai.api.plan.tool.proto import entry_pb2 as _entry_pb2
2
+ from sapiopycommons.ai.api.plan.proto import step_pb2 as _step_pb2
3
+ from sapiopycommons.ai.api.session.proto import sapio_conn_info_pb2 as _sapio_conn_info_pb2
4
+ from google.protobuf.internal import containers as _containers
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import message as _message
7
+ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
8
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepCsvHeaderRow as StepCsvHeaderRow
9
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepCsvRow as StepCsvRow
10
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepCsvData as StepCsvData
11
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepJsonData as StepJsonData
12
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepTextData as StepTextData
13
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepBinaryData as StepBinaryData
14
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepImageData as StepImageData
15
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepEntryData as StepEntryData
16
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepEntryInputData as StepEntryInputData
17
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import StepEntryOutputData as StepEntryOutputData
18
+ from sapiopycommons.ai.api.plan.tool.proto.entry_pb2 import DataType as DataType
19
+ from sapiopycommons.ai.api.plan.proto.step_pb2 import StepIoInfo as StepIoInfo
20
+ from sapiopycommons.ai.api.plan.proto.step_pb2 import StepIoDetails as StepIoDetails
21
+ from sapiopycommons.ai.api.plan.proto.step_pb2 import StepInputDetails as StepInputDetails
22
+ from sapiopycommons.ai.api.plan.proto.step_pb2 import StepOutputDetails as StepOutputDetails
23
+ from sapiopycommons.ai.api.session.proto.sapio_conn_info_pb2 import SapioConnectionInfo as SapioConnectionInfo
24
+ from sapiopycommons.ai.api.session.proto.sapio_conn_info_pb2 import SapioUserSecretType as SapioUserSecretType
25
+
26
+ DESCRIPTOR: _descriptor.FileDescriptor
27
+ BINARY: _entry_pb2.DataType
28
+ JSON: _entry_pb2.DataType
29
+ CSV: _entry_pb2.DataType
30
+ TEXT: _entry_pb2.DataType
31
+ IMAGE: _entry_pb2.DataType
32
+ SESSION_TOKEN: _sapio_conn_info_pb2.SapioUserSecretType
33
+ PASSWORD: _sapio_conn_info_pb2.SapioUserSecretType
34
+
35
+ class CreateScriptJobRequest(_message.Message):
36
+ __slots__ = ("sapio_user", "script_language", "plan_instance_id", "step_instance_id", "invocation_id", "input_configs", "output_configs", "entry_data")
37
+ SAPIO_USER_FIELD_NUMBER: _ClassVar[int]
38
+ SCRIPT_LANGUAGE_FIELD_NUMBER: _ClassVar[int]
39
+ PLAN_INSTANCE_ID_FIELD_NUMBER: _ClassVar[int]
40
+ STEP_INSTANCE_ID_FIELD_NUMBER: _ClassVar[int]
41
+ INVOCATION_ID_FIELD_NUMBER: _ClassVar[int]
42
+ INPUT_CONFIGS_FIELD_NUMBER: _ClassVar[int]
43
+ OUTPUT_CONFIGS_FIELD_NUMBER: _ClassVar[int]
44
+ ENTRY_DATA_FIELD_NUMBER: _ClassVar[int]
45
+ sapio_user: _sapio_conn_info_pb2.SapioConnectionInfo
46
+ script_language: str
47
+ plan_instance_id: int
48
+ step_instance_id: int
49
+ invocation_id: int
50
+ input_configs: _containers.RepeatedCompositeFieldContainer[_step_pb2.StepIoInfo]
51
+ output_configs: _containers.RepeatedCompositeFieldContainer[_step_pb2.StepIoInfo]
52
+ entry_data: _containers.RepeatedCompositeFieldContainer[_entry_pb2.StepEntryInputData]
53
+ def __init__(self, sapio_user: _Optional[_Union[_sapio_conn_info_pb2.SapioConnectionInfo, _Mapping]] = ..., script_language: _Optional[str] = ..., plan_instance_id: _Optional[int] = ..., step_instance_id: _Optional[int] = ..., invocation_id: _Optional[int] = ..., input_configs: _Optional[_Iterable[_Union[_step_pb2.StepIoInfo, _Mapping]]] = ..., output_configs: _Optional[_Iterable[_Union[_step_pb2.StepIoInfo, _Mapping]]] = ..., entry_data: _Optional[_Iterable[_Union[_entry_pb2.StepEntryInputData, _Mapping]]] = ...) -> None: ...
54
+
55
+ class CreateScriptJobResponse(_message.Message):
56
+ __slots__ = ("job_id",)
57
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
58
+ job_id: str
59
+ def __init__(self, job_id: _Optional[str] = ...) -> None: ...
60
+
61
+ class GetJobRequest(_message.Message):
62
+ __slots__ = ("job_id",)
63
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
64
+ job_id: str
65
+ def __init__(self, job_id: _Optional[str] = ...) -> None: ...
66
+
67
+ class GetJobResponse(_message.Message):
68
+ __slots__ = ("log", "entry_data")
69
+ LOG_FIELD_NUMBER: _ClassVar[int]
70
+ ENTRY_DATA_FIELD_NUMBER: _ClassVar[int]
71
+ log: _containers.RepeatedScalarFieldContainer[str]
72
+ entry_data: _containers.RepeatedCompositeFieldContainer[_entry_pb2.StepEntryOutputData]
73
+ def __init__(self, log: _Optional[_Iterable[str]] = ..., entry_data: _Optional[_Iterable[_Union[_entry_pb2.StepEntryOutputData, _Mapping]]] = ...) -> None: ...
@@ -0,0 +1,153 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+ from sapiopycommons.ai.api.plan.script.proto import script_pb2 as com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2
7
+
8
+ GRPC_GENERATED_VERSION = '1.71.0'
9
+ GRPC_VERSION = grpc.__version__
10
+ _version_not_supported = False
11
+
12
+ try:
13
+ from grpc._utilities import first_version_is_lower
14
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
15
+ except ImportError:
16
+ _version_not_supported = True
17
+
18
+ if _version_not_supported:
19
+ raise RuntimeError(
20
+ f'The grpc package installed is at version {GRPC_VERSION},'
21
+ + f' but the generated code in com/velox/api/plan/script/proto/script_pb2_grpc.py depends on'
22
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
23
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
24
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
25
+ )
26
+
27
+
28
+ class ScriptServiceStub(object):
29
+ """
30
+ This is the generic service interface that all tools must implement. We will use hostname routing to route the request to the correct tool.
31
+ The other option is for us to use gRPC metadata to route the request to the correct tool. We don't want to expose a bunch of ports and that's
32
+ a pain to manage. So we will use hostname routing for now.
33
+ """
34
+
35
+ def __init__(self, channel):
36
+ """Constructor.
37
+
38
+ Args:
39
+ channel: A grpc.Channel.
40
+ """
41
+ self.CreateScriptJob = channel.unary_unary(
42
+ '/ScriptService/CreateScriptJob',
43
+ request_serializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.CreateScriptJobRequest.SerializeToString,
44
+ response_deserializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.CreateScriptJobResponse.FromString,
45
+ _registered_method=True)
46
+ self.GetJob = channel.unary_unary(
47
+ '/ScriptService/GetJob',
48
+ request_serializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.GetJobRequest.SerializeToString,
49
+ response_deserializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.GetJobResponse.FromString,
50
+ _registered_method=True)
51
+
52
+
53
+ class ScriptServiceServicer(object):
54
+ """
55
+ This is the generic service interface that all tools must implement. We will use hostname routing to route the request to the correct tool.
56
+ The other option is for us to use gRPC metadata to route the request to the correct tool. We don't want to expose a bunch of ports and that's
57
+ a pain to manage. So we will use hostname routing for now.
58
+ """
59
+
60
+ def CreateScriptJob(self, request, context):
61
+ """The main entry point for script
62
+ """
63
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
64
+ context.set_details('Method not implemented!')
65
+ raise NotImplementedError('Method not implemented!')
66
+
67
+ def GetJob(self, request, context):
68
+ """Missing associated documentation comment in .proto file."""
69
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
70
+ context.set_details('Method not implemented!')
71
+ raise NotImplementedError('Method not implemented!')
72
+
73
+
74
+ def add_ScriptServiceServicer_to_server(servicer, server):
75
+ rpc_method_handlers = {
76
+ 'CreateScriptJob': grpc.unary_unary_rpc_method_handler(
77
+ servicer.CreateScriptJob,
78
+ request_deserializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.CreateScriptJobRequest.FromString,
79
+ response_serializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.CreateScriptJobResponse.SerializeToString,
80
+ ),
81
+ 'GetJob': grpc.unary_unary_rpc_method_handler(
82
+ servicer.GetJob,
83
+ request_deserializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.GetJobRequest.FromString,
84
+ response_serializer=com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.GetJobResponse.SerializeToString,
85
+ ),
86
+ }
87
+ generic_handler = grpc.method_handlers_generic_handler(
88
+ 'ScriptService', rpc_method_handlers)
89
+ server.add_generic_rpc_handlers((generic_handler,))
90
+ server.add_registered_method_handlers('ScriptService', rpc_method_handlers)
91
+
92
+
93
+ # This class is part of an EXPERIMENTAL API.
94
+ class ScriptService(object):
95
+ """
96
+ This is the generic service interface that all tools must implement. We will use hostname routing to route the request to the correct tool.
97
+ The other option is for us to use gRPC metadata to route the request to the correct tool. We don't want to expose a bunch of ports and that's
98
+ a pain to manage. So we will use hostname routing for now.
99
+ """
100
+
101
+ @staticmethod
102
+ def CreateScriptJob(request,
103
+ target,
104
+ options=(),
105
+ channel_credentials=None,
106
+ call_credentials=None,
107
+ insecure=False,
108
+ compression=None,
109
+ wait_for_ready=None,
110
+ timeout=None,
111
+ metadata=None):
112
+ return grpc.experimental.unary_unary(
113
+ request,
114
+ target,
115
+ '/ScriptService/CreateScriptJob',
116
+ com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.CreateScriptJobRequest.SerializeToString,
117
+ com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.CreateScriptJobResponse.FromString,
118
+ options,
119
+ channel_credentials,
120
+ insecure,
121
+ call_credentials,
122
+ compression,
123
+ wait_for_ready,
124
+ timeout,
125
+ metadata,
126
+ _registered_method=True)
127
+
128
+ @staticmethod
129
+ def GetJob(request,
130
+ target,
131
+ options=(),
132
+ channel_credentials=None,
133
+ call_credentials=None,
134
+ insecure=False,
135
+ compression=None,
136
+ wait_for_ready=None,
137
+ timeout=None,
138
+ metadata=None):
139
+ return grpc.experimental.unary_unary(
140
+ request,
141
+ target,
142
+ '/ScriptService/GetJob',
143
+ com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.GetJobRequest.SerializeToString,
144
+ com_dot_velox_dot_api_dot_plan_dot_script_dot_proto_dot_script__pb2.GetJobResponse.FromString,
145
+ options,
146
+ channel_credentials,
147
+ insecure,
148
+ call_credentials,
149
+ compression,
150
+ wait_for_ready,
151
+ timeout,
152
+ metadata,
153
+ _registered_method=True)
@@ -0,0 +1,57 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: com/velox/api/plan/tool/proto/entry.proto
5
+ # Protobuf Python Version: 5.29.0
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 5,
15
+ 29,
16
+ 0,
17
+ '',
18
+ 'com/velox/api/plan/tool/proto/entry.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n)com/velox/api/plan/tool/proto/entry.proto\"!\n\x10StepCsvHeaderRow\x12\r\n\x05\x63\x65lls\x18\x01 \x03(\t\"\x1b\n\nStepCsvRow\x12\r\n\x05\x63\x65lls\x18\x01 \x03(\t\"N\n\x0bStepCsvData\x12!\n\x06header\x18\x0e \x01(\x0b\x32\x11.StepCsvHeaderRow\x12\x1c\n\x07\x65ntries\x18\x0f \x03(\x0b\x32\x0b.StepCsvRow\"\x1f\n\x0cStepJsonData\x12\x0f\n\x07\x65ntries\x18\x0f \x03(\t\"\x1f\n\x0cStepTextData\x12\x0f\n\x07\x65ntries\x18\x0f \x03(\t\"!\n\x0eStepBinaryData\x12\x0f\n\x07\x65ntries\x18\x0f \x03(\x0c\"6\n\rStepImageData\x12\x14\n\x0cimage_format\x18\x01 \x01(\t\x12\x0f\n\x07\x65ntries\x18\x0f \x03(\x0c\"\xf2\x01\n\rStepEntryData\x12\x1b\n\x08\x64\x61taType\x18\x01 \x01(\x0e\x32\t.DataType\x12\'\n\x0b\x62inary_data\x18\xff\x0f \x01(\x0b\x32\x0f.StepBinaryDataH\x00\x12!\n\x08\x63sv_data\x18\xfe\x0f \x01(\x0b\x32\x0c.StepCsvDataH\x00\x12#\n\tjson_data\x18\xfd\x0f \x01(\x0b\x32\r.StepJsonDataH\x00\x12#\n\ttext_data\x18\xfc\x0f \x01(\x0b\x32\r.StepTextDataH\x00\x12&\n\nimage_data\x18\xfb\x0f \x01(\x0b\x32\x0f.StepBinaryDataH\x00\x42\x06\n\x04\x64\x61ta\"L\n\x12StepEntryInputData\x12\x12\n\nis_partial\x18\x02 \x01(\x08\x12\"\n\nentry_data\x18\x01 \x01(\x0b\x32\x0e.StepEntryData\"9\n\x13StepEntryOutputData\x12\"\n\nentry_data\x18\x01 \x01(\x0b\x32\x0e.StepEntryData*>\n\x08\x44\x61taType\x12\n\n\x06\x42INARY\x10\x00\x12\x08\n\x04JSON\x10\x01\x12\x07\n\x03\x43SV\x10\x02\x12\x08\n\x04TEXT\x10\x03\x12\t\n\x05IMAGE\x10\x04\x42!\n\x1d\x63om.velox.api.plan.tool.protoP\x01\x62\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sapiopycommons.ai.api.plan.tool.proto.entry_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ _globals['DESCRIPTOR']._loaded_options = None
34
+ _globals['DESCRIPTOR']._serialized_options = b'\n\035sapiopycommons.ai.api.plan.tool.protoP\001'
35
+ _globals['_DATATYPE']._serialized_start=728
36
+ _globals['_DATATYPE']._serialized_end=790
37
+ _globals['_STEPCSVHEADERROW']._serialized_start=45
38
+ _globals['_STEPCSVHEADERROW']._serialized_end=78
39
+ _globals['_STEPCSVROW']._serialized_start=80
40
+ _globals['_STEPCSVROW']._serialized_end=107
41
+ _globals['_STEPCSVDATA']._serialized_start=109
42
+ _globals['_STEPCSVDATA']._serialized_end=187
43
+ _globals['_STEPJSONDATA']._serialized_start=189
44
+ _globals['_STEPJSONDATA']._serialized_end=220
45
+ _globals['_STEPTEXTDATA']._serialized_start=222
46
+ _globals['_STEPTEXTDATA']._serialized_end=253
47
+ _globals['_STEPBINARYDATA']._serialized_start=255
48
+ _globals['_STEPBINARYDATA']._serialized_end=288
49
+ _globals['_STEPIMAGEDATA']._serialized_start=290
50
+ _globals['_STEPIMAGEDATA']._serialized_end=344
51
+ _globals['_STEPENTRYDATA']._serialized_start=347
52
+ _globals['_STEPENTRYDATA']._serialized_end=589
53
+ _globals['_STEPENTRYINPUTDATA']._serialized_start=591
54
+ _globals['_STEPENTRYINPUTDATA']._serialized_end=667
55
+ _globals['_STEPENTRYOUTPUTDATA']._serialized_start=669
56
+ _globals['_STEPENTRYOUTPUTDATA']._serialized_end=726
57
+ # @@protoc_insertion_point(module_scope)