Skip to content

Commit cc86d53

Browse files
fix: workbench nulls
1 parent 260c4ab commit cc86d53

File tree

2 files changed

+36
-37
lines changed

2 files changed

+36
-37
lines changed

packages/models-library/src/models_library/projects_nodes.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -300,8 +300,6 @@ def _convert_from_enum(cls, v):
300300
# the old version of state was a enum of RunningState
301301
running_state_value = _convert_old_enum_name(v)
302302
return NodeState(current_status=running_state_value)
303-
if v is None:
304-
return NodeState(current_status=RunningState.NOT_STARTED)
305303
return v
306304

307305
@staticmethod

packages/postgres-database/src/simcore_postgres_database/utils_projects_nodes.py

Lines changed: 36 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -117,45 +117,46 @@ def model_dump_as_node(self) -> dict[str, Any]:
117117

118118

119119
def create_workbench_subquery(project_id: str) -> Subquery:
120+
workbench_obj = sa.func.json_build_object(
121+
"key",
122+
projects_nodes.c.key,
123+
"version",
124+
projects_nodes.c.version,
125+
"label",
126+
projects_nodes.c.label,
127+
"progress",
128+
projects_nodes.c.progress,
129+
"thumbnail",
130+
projects_nodes.c.thumbnail,
131+
"inputAccess",
132+
projects_nodes.c.input_access,
133+
"inputNodes",
134+
projects_nodes.c.input_nodes,
135+
"inputs",
136+
projects_nodes.c.inputs,
137+
"inputsRequired",
138+
projects_nodes.c.inputs_required,
139+
"inputsUnits",
140+
projects_nodes.c.inputs_units,
141+
"outputNodes",
142+
projects_nodes.c.output_nodes,
143+
"outputs",
144+
projects_nodes.c.outputs,
145+
"runHash",
146+
projects_nodes.c.run_hash,
147+
"state",
148+
projects_nodes.c.state,
149+
"parent",
150+
projects_nodes.c.parent,
151+
"bootOptions",
152+
projects_nodes.c.boot_options,
153+
)
154+
120155
return (
121156
sa.select(
122157
projects_nodes.c.project_uuid,
123158
sa.func.json_object_agg(
124-
projects_nodes.c.node_id,
125-
sa.func.json_build_object(
126-
"key",
127-
projects_nodes.c.key,
128-
"version",
129-
projects_nodes.c.version,
130-
"label",
131-
projects_nodes.c.label,
132-
"progress",
133-
projects_nodes.c.progress,
134-
"thumbnail",
135-
projects_nodes.c.thumbnail,
136-
"inputAccess",
137-
projects_nodes.c.input_access,
138-
"inputNodes",
139-
projects_nodes.c.input_nodes,
140-
"inputs",
141-
projects_nodes.c.inputs,
142-
"inputsRequired",
143-
projects_nodes.c.inputs_required,
144-
"inputsUnits",
145-
projects_nodes.c.inputs_units,
146-
"outputNodes",
147-
projects_nodes.c.output_nodes,
148-
"outputs",
149-
projects_nodes.c.outputs,
150-
"runHash",
151-
projects_nodes.c.run_hash,
152-
"state",
153-
projects_nodes.c.state,
154-
"parent",
155-
projects_nodes.c.parent,
156-
"bootOptions",
157-
projects_nodes.c.boot_options,
158-
),
159+
projects_nodes.c.node_id, sa.func.json_strip_nulls(workbench_obj)
159160
).label("workbench"),
160161
)
161162
.select_from(

0 commit comments

Comments
 (0)