fix: block leaked history summaries in replies
This commit is contained in:
@@ -18,6 +18,7 @@ _OUTBOUND_BLOCK_MARKERS = (
|
||||
"think_never_used",
|
||||
'[{"name":',
|
||||
)
|
||||
_TRANSFER_COMMAND_RE = re.compile(r"^\s*正在为您转接\|\[转移会话\],[^,\r\n]+,[^\r\n]*\s*$")
|
||||
|
||||
_HISTORY_LEAK_PATTERNS = [
|
||||
r'\[\d{4}-\d{2}-\d{2}[^\]]*\]\s*(客户|客服)[::]',
|
||||
@@ -35,8 +36,11 @@ def _sanitize_outbound_archive_text(content: str) -> str:
|
||||
if not content:
|
||||
return ""
|
||||
cleaned = str(content).strip()
|
||||
if "[转移会话]" in cleaned:
|
||||
if _TRANSFER_COMMAND_RE.fullmatch(cleaned):
|
||||
return cleaned
|
||||
if "[转移会话]" in cleaned:
|
||||
logger.warning("[Repository] 检测到混入正文的转接指令,拦截出站入库")
|
||||
return "我在帮你看记录,稍等哈"
|
||||
if any(marker in cleaned for marker in _OUTBOUND_BLOCK_MARKERS):
|
||||
logger.warning("[Repository] 拦截到内部内容写入外发记录,替换为安全兜底回复")
|
||||
return "我在帮你看记录,稍等哈"
|
||||
|
||||
Reference in New Issue
Block a user