refactor(memory): guard empty summaries only on write

This commit is contained in:
chengyongru
2026-08-19 18:40:20 +08:00
committed by chengyongru
parent 6bb3b33aac
commit f63001828f
2 changed files with 1 additions and 16 deletions
+1 -5
View File
@@ -431,11 +431,7 @@ class MemoryStore:
unified_session: bool = False, unified_session: bool = False,
) -> list[dict[str, Any]]: ) -> list[dict[str, Any]]:
"""Return unprocessed history entries safe to inject into a turn prompt.""" """Return unprocessed history entries safe to inject into a turn prompt."""
entries = [ entries = self.read_unprocessed_history(since_cursor=since_cursor)
entry
for entry in self.read_unprocessed_history(since_cursor=since_cursor)
if str(entry.get("content", "")).strip() != "(nothing)"
]
if session_key is None: if session_key is None:
return entries return entries
if not unified_session: if not unified_session:
-11
View File
@@ -96,17 +96,6 @@ def test_unprocessed_history_injected_into_system_prompt(tmp_path) -> None:
assert re.search(r"\[\d{4}-\d{2}-\d{2} \d{2}:\d{2}\]", prompt) assert re.search(r"\[\d{4}-\d{2}-\d{2} \d{2}:\d{2}\]", prompt)
def test_nothing_history_entry_is_not_injected(tmp_path) -> None:
workspace = _make_workspace(tmp_path)
builder = ContextBuilder(workspace)
builder.memory.append_history("(nothing)")
prompt = builder.build_system_prompt()
assert "# Recent History" not in prompt
assert "(nothing)" not in prompt
def test_recent_history_injection_is_session_scoped(tmp_path) -> None: def test_recent_history_injection_is_session_scoped(tmp_path) -> None:
workspace = _make_workspace(tmp_path) workspace = _make_workspace(tmp_path)
builder = ContextBuilder(workspace) builder = ContextBuilder(workspace)