fix: don't override callback data if using temporal (#5004)

This commit is contained in:
Sarah Wooders
2025-09-29 20:18:45 -07:00
committed by Caren Thomas
parent 09d9c3ffd4
commit 5502134e7a

View File

@@ -139,10 +139,7 @@ class RunManager:
@enforce_types
async def update_run_by_id_async(
self,
run_id: str,
update: RunUpdate,
actor: PydanticUser,
self, run_id: str, update: RunUpdate, actor: PydanticUser, refresh_result_messages: bool = True
) -> PydanticRun:
"""Update a run using a RunUpdate object."""
@@ -183,12 +180,13 @@ class RunManager:
# Dispatch callback outside of database session if needed
if needs_callback:
result = LettaResponse(
messages=await self.get_run_messages(run_id=run_id, actor=actor),
stop_reason=LettaStopReason(stop_reason=pydantic_run.stop_reason),
usage=await self.get_run_usage(run_id=run_id, actor=actor),
)
final_metadata["result"] = result.model_dump()
if refresh_result_messages:
result = LettaResponse(
messages=await self.get_run_messages(run_id=run_id, actor=actor),
stop_reason=LettaStopReason(stop_reason=pydantic_run.stop_reason),
usage=await self.get_run_usage(run_id=run_id, actor=actor),
)
final_metadata["result"] = result.model_dump()
callback_info = {
"run_id": run_id,
"callback_url": callback_url,