flock-core 0.5.0b15__py3-none-any.whl → 0.5.0b16__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 flock-core might be problematic. Click here for more details.
- flock/core/util/input_resolver.py +16 -6
- {flock_core-0.5.0b15.dist-info → flock_core-0.5.0b16.dist-info}/METADATA +1 -1
- {flock_core-0.5.0b15.dist-info → flock_core-0.5.0b16.dist-info}/RECORD +6 -6
- {flock_core-0.5.0b15.dist-info → flock_core-0.5.0b16.dist-info}/WHEEL +0 -0
- {flock_core-0.5.0b15.dist-info → flock_core-0.5.0b16.dist-info}/entry_points.txt +0 -0
- {flock_core-0.5.0b15.dist-info → flock_core-0.5.0b16.dist-info}/licenses/LICENSE +0 -0
|
@@ -102,6 +102,16 @@ def resolve_inputs(
|
|
|
102
102
|
keys = _parse_keys(split_input)
|
|
103
103
|
inputs = {}
|
|
104
104
|
|
|
105
|
+
def _normalize_empty_string(val):
|
|
106
|
+
"""Treat empty string inputs as None to match None semantics.
|
|
107
|
+
|
|
108
|
+
This aligns behavior so passing "" behaves like passing None
|
|
109
|
+
for agent input properties.
|
|
110
|
+
"""
|
|
111
|
+
if isinstance(val, str) and val == "":
|
|
112
|
+
return None
|
|
113
|
+
return val
|
|
114
|
+
|
|
105
115
|
for key in keys:
|
|
106
116
|
split_key = key.split(".")
|
|
107
117
|
|
|
@@ -122,16 +132,16 @@ def resolve_inputs(
|
|
|
122
132
|
# Fallback to the most recent value in the state
|
|
123
133
|
historic_value = context.get_most_recent_value(key)
|
|
124
134
|
if historic_value is not None:
|
|
125
|
-
inputs[key] = historic_value
|
|
135
|
+
inputs[key] = _normalize_empty_string(historic_value)
|
|
126
136
|
continue
|
|
127
137
|
|
|
128
138
|
# Fallback to the initial input
|
|
129
139
|
var_value = context.get_variable(key)
|
|
130
140
|
if var_value is not None:
|
|
131
|
-
inputs[key] = var_value
|
|
141
|
+
inputs[key] = _normalize_empty_string(var_value)
|
|
132
142
|
continue
|
|
133
143
|
|
|
134
|
-
inputs[key] = context.get_variable("flock." + key)
|
|
144
|
+
inputs[key] = _normalize_empty_string(context.get_variable("flock." + key))
|
|
135
145
|
|
|
136
146
|
# Case 2: A compound key (e.g., "agent_name.property" or "context.property")
|
|
137
147
|
elif len(split_key) == 2:
|
|
@@ -139,16 +149,16 @@ def resolve_inputs(
|
|
|
139
149
|
|
|
140
150
|
if entity_name.lower() == "context":
|
|
141
151
|
# Try to fetch the attribute from the context
|
|
142
|
-
inputs[key] = getattr(context, property_name, None)
|
|
152
|
+
inputs[key] = _normalize_empty_string(getattr(context, property_name, None))
|
|
143
153
|
continue
|
|
144
154
|
|
|
145
155
|
if entity_name.lower() == "def":
|
|
146
156
|
# Return the agent definition for the given property name
|
|
147
|
-
inputs[key] = context.get_agent_definition(property_name)
|
|
157
|
+
inputs[key] = _normalize_empty_string(context.get_agent_definition(property_name))
|
|
148
158
|
continue
|
|
149
159
|
|
|
150
160
|
# Otherwise, attempt to look up a state variable with the key "entity_name.property_name"
|
|
151
|
-
inputs[key] = context.get_variable(f"{entity_name}.{property_name}")
|
|
161
|
+
inputs[key] = _normalize_empty_string(context.get_variable(f"{entity_name}.{property_name}"))
|
|
152
162
|
continue
|
|
153
163
|
|
|
154
164
|
return inputs
|
|
@@ -127,7 +127,7 @@ flock/core/serialization/serialization_utils.py,sha256=_TvGJw5zLP-asJxtAGJ65nqWN
|
|
|
127
127
|
flock/core/util/cli_helper.py,sha256=w8N7UJZOdOFhkcUSSusnL22JDlmJGgWmH0DgO--j-5c,50057
|
|
128
128
|
flock/core/util/file_path_utils.py,sha256=Odf7uU32C-x1KNighbNERSiMtkzW4h8laABIoFK7A5M,6246
|
|
129
129
|
flock/core/util/hydrator.py,sha256=qRfVTDBEwqv1-ET2D4s5NI25f-UA_tGsoAmt5jaJMDI,10693
|
|
130
|
-
flock/core/util/input_resolver.py,sha256=
|
|
130
|
+
flock/core/util/input_resolver.py,sha256=t3C98xz_-LGnDH0YeWQyV8yKZrls-_ekOYR-IKrAXDs,6232
|
|
131
131
|
flock/core/util/loader.py,sha256=j3q2qem5bFMP2SmMuYjb-ISxsNGNZd1baQmpvAnRUUk,2244
|
|
132
132
|
flock/core/util/splitter.py,sha256=rDLnZX158PWkmW8vi2UfMLAMRXcHQFUIydAABd-lDGw,7154
|
|
133
133
|
flock/mcp/servers/sse/__init__.py,sha256=r6YtleRSOMJqKhTtKQeFKd3QDaUJVz9R1BGJgOm_PF8,51
|
|
@@ -550,8 +550,8 @@ flock/workflow/agent_execution_activity.py,sha256=CzTkbjGqrPoAbldaQOS_doesosDK9m
|
|
|
550
550
|
flock/workflow/flock_workflow.py,sha256=ZhAF82ewNRY2vvDjNpXT1D9lCVQsLOSMTaZVzdcogJc,9674
|
|
551
551
|
flock/workflow/temporal_config.py,sha256=3_8O7SDEjMsSMXsWJBfnb6XTp0TFaz39uyzSlMTSF_I,3988
|
|
552
552
|
flock/workflow/temporal_setup.py,sha256=YIHnSBntzOchHfMSh8hoLeNXrz3B1UbR14YrR6soM7A,1606
|
|
553
|
-
flock_core-0.5.
|
|
554
|
-
flock_core-0.5.
|
|
555
|
-
flock_core-0.5.
|
|
556
|
-
flock_core-0.5.
|
|
557
|
-
flock_core-0.5.
|
|
553
|
+
flock_core-0.5.0b16.dist-info/METADATA,sha256=mYvKKOKkicpC6qGJ1Y-Yo5wStlC381oEshcKOVpr4Gg,10026
|
|
554
|
+
flock_core-0.5.0b16.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
555
|
+
flock_core-0.5.0b16.dist-info/entry_points.txt,sha256=rWaS5KSpkTmWySURGFZk6PhbJ87TmvcFQDi2uzjlagQ,37
|
|
556
|
+
flock_core-0.5.0b16.dist-info/licenses/LICENSE,sha256=iYEqWy0wjULzM9GAERaybP4LBiPeu7Z1NEliLUdJKSc,1072
|
|
557
|
+
flock_core-0.5.0b16.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|