@@ -233,7 +233,17 @@ class CreationConversationSerializer(serializers.ModelSerializer):
|
||||
# 兼容服务端升级前已开始的轮次:至少显示当前一条进度。
|
||||
if not history or history[-1] != progress:
|
||||
history.append(progress)
|
||||
progress["history"] = history[-12:]
|
||||
# 兼容升级前已经存下的重复历史:同一句只保留最后出现的位置,
|
||||
# 保证当前阶段仍位于列表末尾。
|
||||
seen: set[tuple[str, str]] = set()
|
||||
unique_reversed: list[dict[str, str]] = []
|
||||
for item in reversed(history):
|
||||
key = (str(item.get("label") or ""), str(item.get("detail") or ""))
|
||||
if key in seen:
|
||||
continue
|
||||
seen.add(key)
|
||||
unique_reversed.append(item)
|
||||
progress["history"] = list(reversed(unique_reversed))[-12:]
|
||||
return progress
|
||||
|
||||
def update(self, instance, validated_data):
|
||||
|
||||
Reference in New Issue
Block a user