soe-ai 0.1.1__py3-none-any.whl → 0.1.2__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.
- soe/builtin_tools/__init__.py +39 -0
- soe/builtin_tools/soe_add_signal.py +82 -0
- soe/builtin_tools/soe_call_tool.py +111 -0
- soe/builtin_tools/soe_copy_context.py +80 -0
- soe/builtin_tools/soe_explore_docs.py +290 -0
- soe/builtin_tools/soe_get_available_tools.py +42 -0
- soe/builtin_tools/soe_get_context.py +50 -0
- soe/builtin_tools/soe_get_workflows.py +63 -0
- soe/builtin_tools/soe_inject_node.py +86 -0
- soe/builtin_tools/soe_inject_workflow.py +105 -0
- soe/builtin_tools/soe_list_contexts.py +73 -0
- soe/builtin_tools/soe_remove_node.py +72 -0
- soe/builtin_tools/soe_remove_workflow.py +62 -0
- soe/builtin_tools/soe_update_context.py +54 -0
- soe/docs/_config.yml +10 -0
- soe/docs/advanced_patterns/guide_fanout_and_aggregations.md +318 -0
- soe/docs/advanced_patterns/guide_inheritance.md +435 -0
- soe/docs/advanced_patterns/hybrid_intelligence.md +237 -0
- soe/docs/advanced_patterns/index.md +49 -0
- soe/docs/advanced_patterns/operational.md +781 -0
- soe/docs/advanced_patterns/self_evolving_workflows.md +385 -0
- soe/docs/advanced_patterns/swarm_intelligence.md +211 -0
- soe/docs/builtins/context.md +164 -0
- soe/docs/builtins/explore_docs.md +135 -0
- soe/docs/builtins/tools.md +164 -0
- soe/docs/builtins/workflows.md +199 -0
- soe/docs/guide_00_getting_started.md +341 -0
- soe/docs/guide_01_tool.md +206 -0
- soe/docs/guide_02_llm.md +143 -0
- soe/docs/guide_03_router.md +146 -0
- soe/docs/guide_04_patterns.md +475 -0
- soe/docs/guide_05_agent.md +159 -0
- soe/docs/guide_06_schema.md +397 -0
- soe/docs/guide_07_identity.md +540 -0
- soe/docs/guide_08_child.md +612 -0
- soe/docs/guide_09_ecosystem.md +690 -0
- soe/docs/guide_10_infrastructure.md +427 -0
- soe/docs/guide_11_builtins.md +118 -0
- soe/docs/index.md +104 -0
- soe/docs/primitives/backends.md +281 -0
- soe/docs/primitives/context.md +256 -0
- soe/docs/primitives/node_reference.md +259 -0
- soe/docs/primitives/primitives.md +331 -0
- soe/docs/primitives/signals.md +865 -0
- soe/docs_index.py +1 -1
- soe/lib/__init__.py +0 -0
- soe/lib/child_context.py +46 -0
- soe/lib/context_fields.py +51 -0
- soe/lib/inheritance.py +172 -0
- soe/lib/jinja_render.py +113 -0
- soe/lib/operational.py +51 -0
- soe/lib/parent_sync.py +71 -0
- soe/lib/register_event.py +75 -0
- soe/lib/schema_validation.py +134 -0
- soe/lib/yaml_parser.py +14 -0
- soe/local_backends/__init__.py +18 -0
- soe/local_backends/factory.py +124 -0
- soe/local_backends/in_memory/context.py +38 -0
- soe/local_backends/in_memory/conversation_history.py +60 -0
- soe/local_backends/in_memory/identity.py +52 -0
- soe/local_backends/in_memory/schema.py +40 -0
- soe/local_backends/in_memory/telemetry.py +38 -0
- soe/local_backends/in_memory/workflow.py +33 -0
- soe/local_backends/storage/context.py +57 -0
- soe/local_backends/storage/conversation_history.py +82 -0
- soe/local_backends/storage/identity.py +118 -0
- soe/local_backends/storage/schema.py +96 -0
- soe/local_backends/storage/telemetry.py +72 -0
- soe/local_backends/storage/workflow.py +56 -0
- soe/nodes/__init__.py +13 -0
- soe/nodes/agent/__init__.py +10 -0
- soe/nodes/agent/factory.py +134 -0
- soe/nodes/agent/lib/loop_handlers.py +150 -0
- soe/nodes/agent/lib/loop_state.py +157 -0
- soe/nodes/agent/lib/prompts.py +65 -0
- soe/nodes/agent/lib/tools.py +35 -0
- soe/nodes/agent/stages/__init__.py +12 -0
- soe/nodes/agent/stages/parameter.py +37 -0
- soe/nodes/agent/stages/response.py +54 -0
- soe/nodes/agent/stages/router.py +37 -0
- soe/nodes/agent/state.py +111 -0
- soe/nodes/agent/types.py +66 -0
- soe/nodes/agent/validation/__init__.py +11 -0
- soe/nodes/agent/validation/config.py +95 -0
- soe/nodes/agent/validation/operational.py +24 -0
- soe/nodes/child/__init__.py +3 -0
- soe/nodes/child/factory.py +61 -0
- soe/nodes/child/state.py +59 -0
- soe/nodes/child/validation/__init__.py +11 -0
- soe/nodes/child/validation/config.py +126 -0
- soe/nodes/child/validation/operational.py +28 -0
- soe/nodes/lib/conditions.py +71 -0
- soe/nodes/lib/context.py +24 -0
- soe/nodes/lib/conversation_history.py +77 -0
- soe/nodes/lib/identity.py +64 -0
- soe/nodes/lib/llm_resolver.py +142 -0
- soe/nodes/lib/output.py +68 -0
- soe/nodes/lib/response_builder.py +91 -0
- soe/nodes/lib/signal_emission.py +79 -0
- soe/nodes/lib/signals.py +54 -0
- soe/nodes/lib/tools.py +100 -0
- soe/nodes/llm/__init__.py +7 -0
- soe/nodes/llm/factory.py +103 -0
- soe/nodes/llm/state.py +76 -0
- soe/nodes/llm/types.py +12 -0
- soe/nodes/llm/validation/__init__.py +11 -0
- soe/nodes/llm/validation/config.py +89 -0
- soe/nodes/llm/validation/operational.py +23 -0
- soe/nodes/router/__init__.py +3 -0
- soe/nodes/router/factory.py +37 -0
- soe/nodes/router/state.py +32 -0
- soe/nodes/router/validation/__init__.py +11 -0
- soe/nodes/router/validation/config.py +58 -0
- soe/nodes/router/validation/operational.py +16 -0
- soe/nodes/tool/factory.py +66 -0
- soe/nodes/tool/lib/__init__.py +11 -0
- soe/nodes/tool/lib/conditions.py +35 -0
- soe/nodes/tool/lib/failure.py +28 -0
- soe/nodes/tool/lib/parameters.py +67 -0
- soe/nodes/tool/state.py +66 -0
- soe/nodes/tool/types.py +27 -0
- soe/nodes/tool/validation/__init__.py +15 -0
- soe/nodes/tool/validation/config.py +132 -0
- soe/nodes/tool/validation/operational.py +16 -0
- soe/validation/__init__.py +18 -0
- soe/validation/config.py +195 -0
- soe/validation/jinja.py +54 -0
- soe/validation/operational.py +110 -0
- {soe_ai-0.1.1.dist-info → soe_ai-0.1.2.dist-info}/METADATA +4 -4
- soe_ai-0.1.2.dist-info/RECORD +137 -0
- {soe_ai-0.1.1.dist-info → soe_ai-0.1.2.dist-info}/WHEEL +1 -1
- soe_ai-0.1.1.dist-info/RECORD +0 -10
- {soe_ai-0.1.1.dist-info → soe_ai-0.1.2.dist-info}/licenses/LICENSE +0 -0
- {soe_ai-0.1.1.dist-info → soe_ai-0.1.2.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Operational validation - validates runtime state before node execution.
|
|
3
|
+
|
|
4
|
+
This validates that the context and backends are in a valid state
|
|
5
|
+
for node execution. Runs before each node executes so that operational
|
|
6
|
+
code can trust the structure and avoid defensive programming.
|
|
7
|
+
|
|
8
|
+
Fail-fast: If validation fails, raise immediately with clear message.
|
|
9
|
+
"""
|
|
10
|
+
|
|
11
|
+
from typing import Dict, Any
|
|
12
|
+
|
|
13
|
+
from ..types import Backends, SoeError
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class OperationalValidationError(SoeError):
|
|
17
|
+
"""Raised when operational context is invalid."""
|
|
18
|
+
pass
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def validate_operational(
|
|
22
|
+
execution_id: str,
|
|
23
|
+
backends: Backends,
|
|
24
|
+
) -> Dict[str, Any]:
|
|
25
|
+
"""
|
|
26
|
+
Validate that operational context exists and has required structure.
|
|
27
|
+
|
|
28
|
+
Call this before any node execution to ensure __operational__ is valid.
|
|
29
|
+
Returns the context so caller doesn't need to fetch it again.
|
|
30
|
+
|
|
31
|
+
Args:
|
|
32
|
+
execution_id: The execution ID
|
|
33
|
+
backends: Backend services
|
|
34
|
+
|
|
35
|
+
Returns:
|
|
36
|
+
The validated context dict
|
|
37
|
+
|
|
38
|
+
Raises:
|
|
39
|
+
OperationalValidationError: If context or __operational__ is invalid
|
|
40
|
+
"""
|
|
41
|
+
context = backends.context.get_context(execution_id)
|
|
42
|
+
|
|
43
|
+
if not context:
|
|
44
|
+
raise OperationalValidationError(
|
|
45
|
+
f"No context found for execution_id '{execution_id}'. "
|
|
46
|
+
f"Context must be initialized before node execution."
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
operational = context.get("__operational__")
|
|
50
|
+
|
|
51
|
+
if operational is None:
|
|
52
|
+
raise OperationalValidationError(
|
|
53
|
+
f"Missing '__operational__' in context for execution_id '{execution_id}'. "
|
|
54
|
+
f"Call initialize_operational_context() before node execution."
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
required_fields = ["signals", "nodes", "llm_calls", "tool_calls", "errors", "main_execution_id"]
|
|
58
|
+
missing = [f for f in required_fields if f not in operational]
|
|
59
|
+
|
|
60
|
+
if missing:
|
|
61
|
+
raise OperationalValidationError(
|
|
62
|
+
f"Invalid '__operational__' structure for execution_id '{execution_id}'. "
|
|
63
|
+
f"Missing fields: {missing}"
|
|
64
|
+
)
|
|
65
|
+
|
|
66
|
+
if not isinstance(operational["signals"], list):
|
|
67
|
+
raise OperationalValidationError(
|
|
68
|
+
f"Invalid '__operational__.signals' - must be a list, got {type(operational['signals']).__name__}"
|
|
69
|
+
)
|
|
70
|
+
|
|
71
|
+
if not isinstance(operational["nodes"], dict):
|
|
72
|
+
raise OperationalValidationError(
|
|
73
|
+
f"Invalid '__operational__.nodes' - must be a dict, got {type(operational['nodes']).__name__}"
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
if not isinstance(operational["llm_calls"], int):
|
|
77
|
+
raise OperationalValidationError(
|
|
78
|
+
f"Invalid '__operational__.llm_calls' - must be an int, got {type(operational['llm_calls']).__name__}"
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
if not isinstance(operational["tool_calls"], int):
|
|
82
|
+
raise OperationalValidationError(
|
|
83
|
+
f"Invalid '__operational__.tool_calls' - must be an int, got {type(operational['tool_calls']).__name__}"
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
if not isinstance(operational["errors"], int):
|
|
87
|
+
raise OperationalValidationError(
|
|
88
|
+
f"Invalid '__operational__.errors' - must be an int, got {type(operational['errors']).__name__}"
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
return context
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
def validate_backends(backends: Backends) -> None:
|
|
95
|
+
"""
|
|
96
|
+
Validate that backends has required attributes.
|
|
97
|
+
|
|
98
|
+
Args:
|
|
99
|
+
backends: Backend services
|
|
100
|
+
|
|
101
|
+
Raises:
|
|
102
|
+
OperationalValidationError: If backends is invalid
|
|
103
|
+
"""
|
|
104
|
+
required = ["context", "workflow"]
|
|
105
|
+
|
|
106
|
+
for attr in required:
|
|
107
|
+
if not hasattr(backends, attr) or getattr(backends, attr) is None:
|
|
108
|
+
raise OperationalValidationError(
|
|
109
|
+
f"Invalid backends: missing required attribute '{attr}'"
|
|
110
|
+
)
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: soe-ai
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Signal-driven Orchestration Engine - Agent orchestration with event-driven workflow engine
|
|
5
|
-
Author-email: Pedro Garcia <
|
|
5
|
+
Author-email: Pedro Garcia <pgarcia14180@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
7
7
|
Project-URL: Homepage, https://github.com/pgarcia14180/soe
|
|
8
8
|
Project-URL: Documentation, https://github.com/pgarcia14180/soe/tree/master/docs
|
|
@@ -220,8 +220,8 @@ execution_id = orchestrate(
|
|
|
220
220
|
|
|
221
221
|
| Audience | Start Here |
|
|
222
222
|
|----------|------------|
|
|
223
|
-
| **Builders** (workflow authors) | [Documentation](docs/index.md) — Step-by-step chapters |
|
|
224
|
-
| **Engineers** (infrastructure) | [Infrastructure Guide](docs/guide_10_infrastructure.md) — Backend protocols |
|
|
223
|
+
| **Builders** (workflow authors) | [Documentation](soe/docs/index.md) — Step-by-step chapters |
|
|
224
|
+
| **Engineers** (infrastructure) | [Infrastructure Guide](soe/docs/guide_10_infrastructure.md) — Backend protocols |
|
|
225
225
|
| **Researchers** (advanced patterns) | [Advanced Patterns](docs/advanced_patterns/) — Swarm, hybrid, self-evolving |
|
|
226
226
|
|
|
227
227
|
---
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
soe/__init__.py,sha256=4g0b-2C4wlr3Aq9eSmISxEMeWRCI4fim_I1v4nfW_Cs,1131
|
|
2
|
+
soe/broker.py,sha256=F_lKV0uqi9_dY1NIzQnUFJm84r6xd1CmvXjjfgRpwrM,5956
|
|
3
|
+
soe/docs_index.py,sha256=CQZKGozZWB-uovDQxUts-vjIlS5vq6PmH824k8AJNbo,3507566
|
|
4
|
+
soe/init.py,sha256=SdVV1oTmh63BCtJpaYZavyO0ALfffsFgd75Vb8aJmXI,5928
|
|
5
|
+
soe/types.py,sha256=3CERX7rti_xRSliH2knZKeNDWqbetWg0z-tTQaGZODk,5929
|
|
6
|
+
soe/builtin_tools/__init__.py,sha256=DgFnCFYJ0tsyQqIbkiqe-rYjzaFMxKCuhG5X3ws31R0,1739
|
|
7
|
+
soe/builtin_tools/soe_add_signal.py,sha256=G85UkaOzYEtQDX5CcYk1HL8-aBd48mytVsvzC20fm9w,2583
|
|
8
|
+
soe/builtin_tools/soe_call_tool.py,sha256=2aFPIHhKIvQIwtWbKOyvHBn4tMp_75YurgvRhKH-4QA,3370
|
|
9
|
+
soe/builtin_tools/soe_copy_context.py,sha256=kuffSBSd8qgiqQQCzNr2qp9idW-aQMeQou-CXMHR5po,2812
|
|
10
|
+
soe/builtin_tools/soe_explore_docs.py,sha256=yKanIF8XuSHkN9di3cWDBXdByLUz4L4E2VlfATrpZrk,9957
|
|
11
|
+
soe/builtin_tools/soe_get_available_tools.py,sha256=WtE0EpumNfIc-EGQo8uCG87xQhFaShZwmZf_fJOQiUc,1154
|
|
12
|
+
soe/builtin_tools/soe_get_context.py,sha256=wmWsV_lV_fzzjGyUpM2KQ1A6P1s0DqRA32sBU-coaVY,1463
|
|
13
|
+
soe/builtin_tools/soe_get_workflows.py,sha256=l04xLHHq87T69_9GRdQCzZ9eiv3cvFoJRpvZwxy63-M,2223
|
|
14
|
+
soe/builtin_tools/soe_inject_node.py,sha256=0X1GP23Jqjp3Bm-W-TVToI5VSvYZQ0cCgg2jWfiDpEM,2830
|
|
15
|
+
soe/builtin_tools/soe_inject_workflow.py,sha256=VqLcLObBJHNxG_LphzeXp7WK_YLEJukOGY6WUhyqSkY,3859
|
|
16
|
+
soe/builtin_tools/soe_list_contexts.py,sha256=yDZI4feISa0sue_PYIe96De46-NondA9E3J6fur12kU,2290
|
|
17
|
+
soe/builtin_tools/soe_remove_node.py,sha256=rDe8az7K9FaM4L4nTFdWFJRhte2p4eRXha6iv-5DoZg,2197
|
|
18
|
+
soe/builtin_tools/soe_remove_workflow.py,sha256=AlhjPU1xrj6VqKSwAbBVpt1sv1B3gcnWasKcrJvw12w,1848
|
|
19
|
+
soe/builtin_tools/soe_update_context.py,sha256=1gu0dTYtK-EY1n3qysJQeusfZYmxWoXCt3c7nhXTcRY,1547
|
|
20
|
+
soe/docs/_config.yml,sha256=PBTNeE97HoDj80tgMtpfxrAAGQxr0OiCaMZaJF-qVmo,255
|
|
21
|
+
soe/docs/guide_00_getting_started.md,sha256=ULHQfKSyex5I3FVwENVa3AmOQkMMKVKJ8TaVPpYVVXA,11279
|
|
22
|
+
soe/docs/guide_01_tool.md,sha256=twDxHgQhHYgdWDlmoY0v9xnC-5RX_NbOMCRi68l_b_s,6964
|
|
23
|
+
soe/docs/guide_02_llm.md,sha256=2t9td-V37vWdtdxfsPNFIT4y5w0vXZVQtc-gy6A3Jko,4839
|
|
24
|
+
soe/docs/guide_03_router.md,sha256=614FW8jhwJBZ6TBeyhBfRRDyw3xV6_6byZH74hlgO6A,5645
|
|
25
|
+
soe/docs/guide_04_patterns.md,sha256=Yyzhb0yyFuHZSiPam7UCj6HagkTcqrI3K2MJbwA2nQU,15368
|
|
26
|
+
soe/docs/guide_05_agent.md,sha256=eZAYryU1AypunOM3V8i9DOeCDPcvk0FjMg97355DCPw,6075
|
|
27
|
+
soe/docs/guide_06_schema.md,sha256=kxRKErtpwPGiasf7gxuYouHaQFOgg-dz1A77vPJMvjw,11513
|
|
28
|
+
soe/docs/guide_07_identity.md,sha256=s2FGdS5rB5YD9GW64SYontIw-STreGkb0QRNvEkwlUw,17038
|
|
29
|
+
soe/docs/guide_08_child.md,sha256=whBLBmCH9si17lQfoUgN6U9A5Mc71_TywCYq_XQSfeg,17888
|
|
30
|
+
soe/docs/guide_09_ecosystem.md,sha256=rfoKjskQmpOc4Fl1h6HUSqRExMd8DVnvH2rLNhxjVac,20219
|
|
31
|
+
soe/docs/guide_10_infrastructure.md,sha256=oGZWtE-PJ-CpqGOF5aM5hM4CCXRjuMAA-C4IBhK-ZlE,14154
|
|
32
|
+
soe/docs/guide_11_builtins.md,sha256=rxndeJ8INNxH7w7fWDQOfmCsNbpKwha3ZKPrcw4gZEo,4234
|
|
33
|
+
soe/docs/index.md,sha256=kVJsInGngoHGUf0shEIgPKnaRo7BWTtrXSuS2YCOcQU,5084
|
|
34
|
+
soe/docs/advanced_patterns/guide_fanout_and_aggregations.md,sha256=vWs6-sBqczHI4knFBi7EtNUGdYmknb4Pp_vXp8lHMtY,9459
|
|
35
|
+
soe/docs/advanced_patterns/guide_inheritance.md,sha256=xDC0MYn1oGQfiwy-4z01PpwUcpuLMREHqh61H-oCQWg,12212
|
|
36
|
+
soe/docs/advanced_patterns/hybrid_intelligence.md,sha256=BoxK-MN8WRZOckqigWzOtwHsA47SKSAbzO9ekK06lGs,7142
|
|
37
|
+
soe/docs/advanced_patterns/index.md,sha256=MTs60CftW5jIrPCOumaH_QPfd1TE7ClW0Qvl_ybHqEE,2127
|
|
38
|
+
soe/docs/advanced_patterns/operational.md,sha256=uk7r3Uh5yNIanbW6JrKD-_n_VPO5WZE8AKIkqFJkRFU,23707
|
|
39
|
+
soe/docs/advanced_patterns/self_evolving_workflows.md,sha256=HICTmuwIg-zjmiAXdbyPKmgD0hELoBLn9y54bbwYV1w,11072
|
|
40
|
+
soe/docs/advanced_patterns/swarm_intelligence.md,sha256=rGKReC1beiU4x5pnKF9hWEXAmqrntQj9TnQ8KvKv8YY,6210
|
|
41
|
+
soe/docs/builtins/context.md,sha256=l1sc9q2jFHCSm8w4klcZN32LNsq5xiMT6mk09oynMC8,3655
|
|
42
|
+
soe/docs/builtins/explore_docs.md,sha256=XJRDNAGsxi98k9BHSyRHs06av_gqEVLwgaC1YFKG6NE,3646
|
|
43
|
+
soe/docs/builtins/tools.md,sha256=a5QZLEdddK6WZ1jJ1UPxlmTHHOjm4QhQZ8pC2GOEbr0,3753
|
|
44
|
+
soe/docs/builtins/workflows.md,sha256=M1n2tGECcrCUQwZ-OzF-GqVRx-LNUxTvKDxIv41esx4,4774
|
|
45
|
+
soe/docs/primitives/backends.md,sha256=T_6jhjum6af9gPil4vIZdJtX9tgSGCJk6IQUuiISnyo,8209
|
|
46
|
+
soe/docs/primitives/context.md,sha256=FJ5d_7H8hOYJeSQ5MPzsapMS13WZ2f9IJ6of8TvmwdY,5325
|
|
47
|
+
soe/docs/primitives/node_reference.md,sha256=S8Ifwmhtl3PDex5XpzQAgFd-MmbZRg84vIIdGP0b0Gs,8208
|
|
48
|
+
soe/docs/primitives/primitives.md,sha256=LUtIb1h5b2b3QCWSJrPYHUWAwE4KJjagCDCNJjj_UJo,11519
|
|
49
|
+
soe/docs/primitives/signals.md,sha256=1TBzz5hdTVsvSl1tNKwKl-hRJeLiYatyRplxgxx0za0,26287
|
|
50
|
+
soe/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
51
|
+
soe/lib/child_context.py,sha256=qIosNpCjhvEuLpJUHxRkgXjA78FyasnGrsTTcq9DN-4,1431
|
|
52
|
+
soe/lib/context_fields.py,sha256=Fct7JlzWLQ2268pdKHo8P2o2DVhpIDNwVMQ3o5bcqtI,1363
|
|
53
|
+
soe/lib/inheritance.py,sha256=m8BP-G8UIKuDYZBTXOcz1Jbecr1Tjg31GBTtYGA-GwU,5122
|
|
54
|
+
soe/lib/jinja_render.py,sha256=MTWNvv0XU2WmhcTupTfLkp_n348dL9nBlz0J4oDDm4Q,4041
|
|
55
|
+
soe/lib/operational.py,sha256=pgx-nSOhYXD9pj1vlQqyCMloLLfPazL0WYp785K4mjQ,1416
|
|
56
|
+
soe/lib/parent_sync.py,sha256=h5x20aop3zqgtLWaIJ848sd6hkRcEFvVed99JFBTdxQ,2504
|
|
57
|
+
soe/lib/register_event.py,sha256=3j6NbJPevkAHIbYwm7bOBcvS3xk1XG6sLfAE6sK8lsE,2591
|
|
58
|
+
soe/lib/schema_validation.py,sha256=mivLPUCVdo_P4CD4x7ZOk0Ixos2Xj52QiVNFl88Zy_A,4070
|
|
59
|
+
soe/lib/yaml_parser.py,sha256=dZcG1SarrNfRtDTqDcGeCGvyEXtBt2d38v-isepR5KM,408
|
|
60
|
+
soe/local_backends/__init__.py,sha256=GLBYWxu6o4zlp9ejEOzebrwyiwKzQILOIzrVzzwLQ6A,558
|
|
61
|
+
soe/local_backends/factory.py,sha256=WEvTq34qeb2d91uu9Pze4G2KY24L9zeqy7WBUxm3i-o,4594
|
|
62
|
+
soe/local_backends/in_memory/context.py,sha256=M7TMKDn7LPFOJz61_vFcCVRxDmc1VOr5sx_Xs9Tdias,944
|
|
63
|
+
soe/local_backends/in_memory/conversation_history.py,sha256=AzQl1qiEntUKfw20U0FPHK-Jizj7wTP8bwzTTnZVHxM,1635
|
|
64
|
+
soe/local_backends/in_memory/identity.py,sha256=O-QSPX-wajAzaVeaEniLsIIBe5tCrM8FykuC4N0QEto,1774
|
|
65
|
+
soe/local_backends/in_memory/schema.py,sha256=eXOwKFbFDWZfyRCxrBZx2lYABnZeLNzz1zxMOgRn_es,1216
|
|
66
|
+
soe/local_backends/in_memory/telemetry.py,sha256=-krImbIfa183DblbRq1K7785hSGJF5lu49VCQ66vMNI,1020
|
|
67
|
+
soe/local_backends/in_memory/workflow.py,sha256=STujgxyTpgK0giQJcJvYMUKcoKX_6UopnLOQzEb1lPA,1141
|
|
68
|
+
soe/local_backends/storage/context.py,sha256=ufM58u86MN6rMj0ZGjKJ6_tU0mifaT7NAXoCxN7FXtk,1588
|
|
69
|
+
soe/local_backends/storage/conversation_history.py,sha256=-BV8zlD_6CV3q8CnlHJL0dG0e-1E0YSUx2X_V_y6sDI,2638
|
|
70
|
+
soe/local_backends/storage/identity.py,sha256=adm_zA6XjVsjV-6ZdZOFsSV7i1PvCI0unfBxgc4LhXk,3910
|
|
71
|
+
soe/local_backends/storage/schema.py,sha256=slNFDaiae1pY_PbeYsgdzror9xL2vReIo3XcaX6q4dM,3068
|
|
72
|
+
soe/local_backends/storage/telemetry.py,sha256=K6gcpXDsoH9Pll_Lz-27ff_ad48nCNwfHi5gzC5YNKA,2138
|
|
73
|
+
soe/local_backends/storage/workflow.py,sha256=d3DiwfjR1OP4bnhRLgzdTZQ6xYUnwBh5B3sz0W5sH_k,2094
|
|
74
|
+
soe/nodes/__init__.py,sha256=soAkTMdrAuc82la7TRabTtpiQW2kngd8MlWuJuCRCrM,305
|
|
75
|
+
soe/nodes/agent/__init__.py,sha256=SQaDB9TAiMv5ZjGLX4B1nBnOwX_DGUxqzzDJ4BIT534,171
|
|
76
|
+
soe/nodes/agent/factory.py,sha256=skqPpMcfA9qYtcFEJ2FqjRXhVrvn2XgEPg40dt8KnHw,5359
|
|
77
|
+
soe/nodes/agent/state.py,sha256=2fznePHA-0etOlCepMKVnguFDpooYynTBD21VjI_Fgw,3716
|
|
78
|
+
soe/nodes/agent/types.py,sha256=t25gHmsJ_oYxGXWSWvychvXcXcSenbQAMkET1CA-iO4,1837
|
|
79
|
+
soe/nodes/agent/lib/loop_handlers.py,sha256=ndCoW_hQbtEkoj7UYlvXskZxXc-IgTCG3kBQzjJqQUE,4642
|
|
80
|
+
soe/nodes/agent/lib/loop_state.py,sha256=oft2uP5Rrl5iYrKZ31JX9nslKhi6GZRQZFclTU0w6DU,5474
|
|
81
|
+
soe/nodes/agent/lib/prompts.py,sha256=Nk3115Hq7Pa5FX1w_YZel7Yi1BLcMjLGme-p3UgyOxY,2002
|
|
82
|
+
soe/nodes/agent/lib/tools.py,sha256=8XDof2qYnUw8BWC0VXybMaBx-QwzEfZM5fAbA9VMwc0,986
|
|
83
|
+
soe/nodes/agent/stages/__init__.py,sha256=l3jXE7U4B41w7iTvuvgVrymD_BNIQSNA65oWfMRYtgs,330
|
|
84
|
+
soe/nodes/agent/stages/parameter.py,sha256=R6ylX2Lprf24FGiohN9LQk3C6jrQkTtOWdNNQHKST9g,1052
|
|
85
|
+
soe/nodes/agent/stages/response.py,sha256=khoyIr8nX10DLKvw-fNE7NUZh5uB_rpmmKm6pOt0OG0,1671
|
|
86
|
+
soe/nodes/agent/stages/router.py,sha256=AWtcYD8ae25QQFySg7iKyn9kKIq-8LLEZyqBG7XxL4I,1138
|
|
87
|
+
soe/nodes/agent/validation/__init__.py,sha256=ELLoSXqr1NeVwG766QzTuP2Fm3rLMKBXdhsgRUYOy_E,314
|
|
88
|
+
soe/nodes/agent/validation/config.py,sha256=YQABnBSS4bLZvdhl2N5AfSPsZmhVljWS8ibxDxAeyWs,3834
|
|
89
|
+
soe/nodes/agent/validation/operational.py,sha256=yFVD0wadNx5WH981d3NUHGIxkBMlVduE-N8UVlvqxrg,743
|
|
90
|
+
soe/nodes/child/__init__.py,sha256=Ac85rPNGjefXqTc4poyYi6PYuXqUEVThiF9SSSPV0dY,87
|
|
91
|
+
soe/nodes/child/factory.py,sha256=eELq_v7RVhpRyEu4OY4RzcCnd3lepw7O-uqG0weFgkE,2054
|
|
92
|
+
soe/nodes/child/state.py,sha256=QTzXcTd4CstgCww01-nxzbWHf05lNcn4gfHd1lRl_WA,2080
|
|
93
|
+
soe/nodes/child/validation/__init__.py,sha256=TBPmAlQ92wIIYD22yG8YjfYo25tsUDay1amA4cexPi4,314
|
|
94
|
+
soe/nodes/child/validation/config.py,sha256=IF-IdaNRgNbFhPfr-ssTbnTsC9XgjC9DBv1kl_SqRbk,5421
|
|
95
|
+
soe/nodes/child/validation/operational.py,sha256=NPM1exArEbrzNqBN-SY7DXp-zk8tdHpHHDPjKdnNXfI,859
|
|
96
|
+
soe/nodes/lib/conditions.py,sha256=QlVbaG9UF-VACBxw2pukqJWMgpeqx98QpyaDBjT2P4Y,2437
|
|
97
|
+
soe/nodes/lib/context.py,sha256=1gKkCW4B19yt2NTfeJvWn39V1aT1PCYd2mQ2L-HV1iU,798
|
|
98
|
+
soe/nodes/lib/conversation_history.py,sha256=WTQscCSTElWShehij3lEVSWebHtrGpM_s2RbZxfJSx4,2844
|
|
99
|
+
soe/nodes/lib/identity.py,sha256=HxSVJrjPAyAjMujFOgq-uZkGYrSz6sZbjM1VFi2PSVk,1861
|
|
100
|
+
soe/nodes/lib/llm_resolver.py,sha256=KJYh9Rt3T85XDe8wWyf1p-UPPxF6EYqGCdnd87rUk3o,4138
|
|
101
|
+
soe/nodes/lib/output.py,sha256=bfTwwSmSFr8i5_AoKwrPU-bEMqImo8QDd-AWEY9mac4,2231
|
|
102
|
+
soe/nodes/lib/response_builder.py,sha256=xnx7iKGRay3UNAfWRl934kUEmtb3VfxAoLG7aPWUa8o,3078
|
|
103
|
+
soe/nodes/lib/signal_emission.py,sha256=o69AtiUctwP9E8UCKrfKUcFQJ5USlx-nhiY-F2I2Ibg,2773
|
|
104
|
+
soe/nodes/lib/signals.py,sha256=GD5PnwACVNvQ8VnH5o60ixhwZrO6cFlAb0DwEjW06T4,1829
|
|
105
|
+
soe/nodes/lib/tools.py,sha256=2m5kQQWC46zL0wjj7Amo-m4Hzar56UH11q1z8XMlgmo,3105
|
|
106
|
+
soe/nodes/llm/__init__.py,sha256=2iUEslXqRO5izJZLdecLBUZ0cXsQsD0pWg0CaBY13MI,159
|
|
107
|
+
soe/nodes/llm/factory.py,sha256=3wiZxHGDWdTEi-_rZNAoPz_QTKYUurtd3Hd_aR9goCs,3743
|
|
108
|
+
soe/nodes/llm/state.py,sha256=c4x_22SdYTa1NRz5APjex8Ro_l3ISAixg55-rIG6ucQ,2775
|
|
109
|
+
soe/nodes/llm/types.py,sha256=hqUrvnNRCw_vnqJWIvdru9k4sLh6O3Zk9DSY-7jOE7c,223
|
|
110
|
+
soe/nodes/llm/validation/__init__.py,sha256=HAArh6mw4ixTRx4v8CW44BcpIRpU6tLjLGPd06X9m4Y,308
|
|
111
|
+
soe/nodes/llm/validation/config.py,sha256=j1kr3yDBdC95aDpu7Z7nItN55reaOSBWvQkeybvoA8g,3593
|
|
112
|
+
soe/nodes/llm/validation/operational.py,sha256=fyVsVgCLA1FqBvxDyA7SYYp5qI_3evrhooQHDBVH364,672
|
|
113
|
+
soe/nodes/router/__init__.py,sha256=3a4BcgFLGGcO1xdjcbAnxNjGwhvl8NGRLLxTnCqtkjM,67
|
|
114
|
+
soe/nodes/router/factory.py,sha256=37qyLurhjAuGWwGOb6FbpZ6Ef5Hzw2gBd4dQxWTzuy4,1338
|
|
115
|
+
soe/nodes/router/state.py,sha256=vXZWWQ7BJ0SEZayUoAIX3rEkJTARYHwIiJ7O8N1esHg,886
|
|
116
|
+
soe/nodes/router/validation/__init__.py,sha256=DgU37MHrR90GI1VvvfaUltrFtwpVGlGOc9PBGIVUjX0,317
|
|
117
|
+
soe/nodes/router/validation/config.py,sha256=iR07s31GsyJJBInljRu8qh7zMKHKGoYVf2auLb0lSQQ,2195
|
|
118
|
+
soe/nodes/router/validation/operational.py,sha256=Chldb5tpMe1MfFV3ym5XzneIF2OA8cBTvbfdWchX21c,519
|
|
119
|
+
soe/nodes/tool/factory.py,sha256=cWJD-tNsCQnp6vNGtdbdX7pnQWlsCu1RdClKH6q2KSA,2460
|
|
120
|
+
soe/nodes/tool/state.py,sha256=ncJ0huYPwkKqU_2ITEc3hXOnB7S9a4RbLytZKVxs2uQ,2263
|
|
121
|
+
soe/nodes/tool/types.py,sha256=l3ZjXlOReqYEe8jg1ohzmldaPqQGEmZpkgNFCvWejw4,566
|
|
122
|
+
soe/nodes/tool/lib/__init__.py,sha256=KG1pnYuOAdPofsmX9LZgNc61bqagj1SMv-mzw8J5Hvc,201
|
|
123
|
+
soe/nodes/tool/lib/conditions.py,sha256=3xoBEjBeCZQGGjh8cRumH1IGwvZqv3vw_2zk9Ha6AWU,1111
|
|
124
|
+
soe/nodes/tool/lib/failure.py,sha256=miCrV2Mbx8b6sle1WT_zoaAoAyB7tHQhkwcjxgiDmRY,891
|
|
125
|
+
soe/nodes/tool/lib/parameters.py,sha256=q0c7znyqpRY3L0iI8x3WXTWyjSQ-XzDGw6baVJVdvDw,2182
|
|
126
|
+
soe/nodes/tool/validation/__init__.py,sha256=9sdtiYrPZg4zJ3WXAWg6h4c_oS9SIVgL7Oc7JQTiMfI,382
|
|
127
|
+
soe/nodes/tool/validation/config.py,sha256=tI8mHawFjbXLQ6xSMOJ9mnQUirnoqqK5Gfi9kclB3DE,4632
|
|
128
|
+
soe/nodes/tool/validation/operational.py,sha256=5he58ssGzQ_kXfdy26y4kqNEjo_CAVx989JJxNa5fi0,488
|
|
129
|
+
soe/validation/__init__.py,sha256=oZGAT3Mp8Pzu_D_FSObLUEBTf10dk8C-GhM4tipfAxw,523
|
|
130
|
+
soe/validation/config.py,sha256=hB7Gk_bkoqvf0iES9PNmVTcKgyUm_0UgiCSXcc30ztc,6834
|
|
131
|
+
soe/validation/jinja.py,sha256=_Ykj-UT9i3wQRXCyQgja3boCZuI3lrqOnf5C3iB1Kmg,1746
|
|
132
|
+
soe/validation/operational.py,sha256=P5SrE_8345IhHvsXpJ-XDEp1sIQVFhGXDBNQhuh7sTo,3628
|
|
133
|
+
soe_ai-0.1.2.dist-info/licenses/LICENSE,sha256=SvEn330zvSOu83Vi4lDCX2QHgr6bmSSXOV1YClLGk1Y,1069
|
|
134
|
+
soe_ai-0.1.2.dist-info/METADATA,sha256=ro4JH1Nr4YbaGYsgVpq-cz3_sGsKyKOzX4q35aJ4MaQ,8794
|
|
135
|
+
soe_ai-0.1.2.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
|
|
136
|
+
soe_ai-0.1.2.dist-info/top_level.txt,sha256=TUufXyVAQnzN6iT6zRb4dRHdfBSiWXuAL8EoyvugZuY,4
|
|
137
|
+
soe_ai-0.1.2.dist-info/RECORD,,
|
soe_ai-0.1.1.dist-info/RECORD
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
soe/__init__.py,sha256=4g0b-2C4wlr3Aq9eSmISxEMeWRCI4fim_I1v4nfW_Cs,1131
|
|
2
|
-
soe/broker.py,sha256=F_lKV0uqi9_dY1NIzQnUFJm84r6xd1CmvXjjfgRpwrM,5956
|
|
3
|
-
soe/docs_index.py,sha256=L-VkR0rfr9qGbMHIhhc_gAZKToBsFyiAxW42qj1bFag,3425867
|
|
4
|
-
soe/init.py,sha256=SdVV1oTmh63BCtJpaYZavyO0ALfffsFgd75Vb8aJmXI,5928
|
|
5
|
-
soe/types.py,sha256=3CERX7rti_xRSliH2knZKeNDWqbetWg0z-tTQaGZODk,5929
|
|
6
|
-
soe_ai-0.1.1.dist-info/licenses/LICENSE,sha256=SvEn330zvSOu83Vi4lDCX2QHgr6bmSSXOV1YClLGk1Y,1069
|
|
7
|
-
soe_ai-0.1.1.dist-info/METADATA,sha256=3i9sm4-lbSA6kKZhHcEeIkkvvPH2gWDrIaAK7wh3Pl8,8781
|
|
8
|
-
soe_ai-0.1.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
9
|
-
soe_ai-0.1.1.dist-info/top_level.txt,sha256=TUufXyVAQnzN6iT6zRb4dRHdfBSiWXuAL8EoyvugZuY,4
|
|
10
|
-
soe_ai-0.1.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|