mirror of https://github.com/langgenius/dify.git
feat: move version update logic out of save_memory
This commit is contained in:
parent
5bf642c3f9
commit
8833fee232
|
|
@ -73,7 +73,7 @@ class MemoryEditApi(Resource):
|
|||
is_draft=False
|
||||
)
|
||||
|
||||
# Create updated memory instance
|
||||
# Create updated memory instance with incremented version
|
||||
updated_memory = MemoryBlock(
|
||||
spec=existing_memory.spec,
|
||||
tenant_id=existing_memory.tenant_id,
|
||||
|
|
@ -81,7 +81,7 @@ class MemoryEditApi(Resource):
|
|||
conversation_id=existing_memory.conversation_id,
|
||||
node_id=existing_memory.node_id,
|
||||
value=update, # New value
|
||||
version=existing_memory.version, # Keep current version (save_memory will handle version increment)
|
||||
version=existing_memory.version + 1, # Increment version for update
|
||||
edited_by_user=True,
|
||||
created_by=existing_memory.created_by,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ class MemoryEditApi(WebApiResource):
|
|||
is_draft=False
|
||||
)
|
||||
|
||||
# Create updated memory instance
|
||||
# Create updated memory instance with incremented version
|
||||
updated_memory = MemoryBlock(
|
||||
spec=existing_memory.spec,
|
||||
tenant_id=existing_memory.tenant_id,
|
||||
|
|
@ -81,7 +81,7 @@ class MemoryEditApi(WebApiResource):
|
|||
conversation_id=existing_memory.conversation_id,
|
||||
node_id=existing_memory.node_id,
|
||||
value=update, # New value
|
||||
version=existing_memory.version, # Keep current version (save_memory will handle version increment)
|
||||
version=existing_memory.version + 1, # Increment version for update
|
||||
edited_by_user=True,
|
||||
created_by=existing_memory.created_by,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -114,16 +114,6 @@ class ChatflowMemoryService:
|
|||
created_by = memory.created_by.id
|
||||
|
||||
with Session(db.engine) as session:
|
||||
existing = session.query(ChatflowMemoryVariable).filter_by(
|
||||
memory_id=memory.spec.id,
|
||||
tenant_id=memory.tenant_id,
|
||||
app_id=memory.app_id,
|
||||
node_id=memory.node_id,
|
||||
conversation_id=memory.conversation_id,
|
||||
created_by_role=created_by_role,
|
||||
created_by=created_by,
|
||||
).order_by(ChatflowMemoryVariable.version.desc()).first()
|
||||
new_version = 1 if not existing else existing.version + 1
|
||||
session.add(
|
||||
ChatflowMemoryVariable(
|
||||
memory_id=memory.spec.id,
|
||||
|
|
@ -138,7 +128,7 @@ class ChatflowMemoryService:
|
|||
).model_dump_json(),
|
||||
term=memory.spec.term,
|
||||
scope=memory.spec.scope,
|
||||
version=new_version,
|
||||
version=memory.version, # Use version from MemoryBlock directly
|
||||
created_by_role=created_by_role,
|
||||
created_by=created_by,
|
||||
)
|
||||
|
|
@ -555,7 +545,7 @@ class ChatflowMemoryService:
|
|||
node_id=memory_block.node_id,
|
||||
edited_by_user=False,
|
||||
created_by=memory_block.created_by,
|
||||
version=memory_block.version,
|
||||
version=memory_block.version + 1, # Increment version for business logic update
|
||||
)
|
||||
ChatflowMemoryService.save_memory(updated_memory, variable_pool, is_draft)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue