Fix memory bullet extraction in service copy

Fix services.memory bullet-list extraction by grouping the bullet/number regex before the capture, and cover both memory manager copies in the regression test.
This commit is contained in:
Mubashir R
2026-06-03 09:41:46 +05:00
committed by GitHub
parent 4ec53a296a
commit 61d62a3cb8
2 changed files with 19 additions and 5 deletions
+6 -2
View File
@@ -59,8 +59,12 @@ class MemoryManager:
line = line.strip()
# Look for bullet points or numbered lists that might contain memories
if re.match(r'^[-*•]|\d+\.', line):
# Extract the text after the bullet/number
text_match = re.match(r'^[-*•]|\d+\.\s*(.*)', line)
# Extract the text after the bullet/number. Group both
# markers so the capture applies to either. The previous
# `^[-*•]|\d+\.\s*(.*)` put the group on the numbered
# branch only, so a bullet line matched with group(1)=None
# and crashed on .strip().
text_match = re.match(r'^(?:[-*•]|\d+\.)\s*(.*)', line)
if text_match:
text = text_match.group(1).strip()
if text: