Skip to content

Commit 282c7ec

Browse files
authored
fix: handle deserialization of TaskResult (#108)
1 parent 2c6f2bc commit 282c7ec

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

silverback/types.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,12 @@ def parse_datapoints(cls, datapoints: dict) -> dict:
8080
names_to_remove: dict[str, ValidationError] = {}
8181
# Automatically convert raw scalar types
8282
for name in datapoints:
83-
if not isinstance(datapoints[name], Datapoint):
83+
if isinstance(datapoints[name], dict) and "type" in datapoints[name]:
84+
try:
85+
datapoints[name] = ScalarDatapoint.model_validate(datapoints[name])
86+
except ValidationError as e:
87+
names_to_remove[name] = e
88+
elif not isinstance(datapoints[name], Datapoint):
8489
try:
8590
datapoints[name] = ScalarDatapoint(data=datapoints[name])
8691
except ValidationError as e:

0 commit comments

Comments
 (0)