@@ -1329,16 +1329,7 @@ async def update_project_node_outputs(
13291329 permission = "write" , # NOTE: MD: before only read was sufficient, double check this
13301330 )
13311331
1332- updated_project , changed_entries = await db_legacy .update_project_node_data (
1333- user_id = user_id ,
1334- project_uuid = project_id ,
1335- node_id = node_id ,
1336- product_name = None ,
1337- new_node_data = {"outputs" : new_outputs , "runHash" : new_run_hash },
1338- client_session_id = client_session_id ,
1339- )
1340-
1341- await _projects_nodes_repository .update (
1332+ updated_node = await _projects_nodes_repository .update (
13421333 app ,
13431334 project_id = project_id ,
13441335 node_id = node_id ,
@@ -1347,23 +1338,31 @@ async def update_project_node_outputs(
13471338 ),
13481339 )
13491340
1341+ await _create_project_document_and_notify (
1342+ app ,
1343+ project_id = project_id ,
1344+ user_id = user_id ,
1345+ client_session_id = client_session_id ,
1346+ )
1347+
13501348 _logger .debug (
13511349 "patched project %s, following entries changed: %s" ,
13521350 project_id ,
1353- pformat (changed_entries ),
1351+ pformat (updated_node ),
13541352 )
1355- updated_project = await add_project_states_for_user (
1356- user_id = user_id , project = updated_project , is_template = False , app = app
1353+
1354+ updated_project = await _projects_repository .get_project_with_workbench (
1355+ app , project_uuid = project_id
13571356 )
13581357
1359- # changed entries come in the form of {node_uuid: {outputs: {changed_key1: value1, changed_key2: value2}}}
1360- # we do want only the key names
1361- changed_keys = (
1362- changed_entries .get (TypeAdapter (NodeIDStr ).validate_python (f"{ node_id } " ), {})
1363- .get ("outputs" , {})
1364- .keys ()
1358+ updated_project_with_states = await add_project_states_for_user (
1359+ user_id = user_id ,
1360+ project = updated_project .model_dump (mode = "json" ),
1361+ is_template = False ,
1362+ app = app ,
13651363 )
1366- return updated_project , changed_keys
1364+
1365+ return updated_project_with_states , list (new_outputs .keys ())
13671366
13681367
13691368async def list_node_ids_in_project (
0 commit comments