refactor(memory): require archive count in prompt

This commit is contained in:
chengyongru
2026-08-19 18:40:20 +08:00
committed by chengyongru
parent f63001828f
commit f13abe0806
2 changed files with 2 additions and 5 deletions
@@ -1,10 +1,6 @@
{% if archive_count is defined %}
Create a memory overview for only the final {{ archive_count }} conversation messages immediately before this instruction. Earlier messages are context for resolving references; do not summarize them again.
Do not call tools. Return only the overview, following these memory rules:
{% else %}
Extract key facts from this conversation. For each fact, annotate its memory attributes.
{% endif %}
Only SNIP facts deserve a non-[skip] mark:
- Signal: would the user need to repeat this if forgotten?
+2 -1
View File
@@ -233,9 +233,10 @@ class TestConsolidatorSummarize:
class TestConsolidatorPromptContract:
def test_archive_prompt_outputs_attribute_tags_without_missing_context_claims(self):
prompt = render_template("agent/consolidator_archive.md", strip=True)
prompt = render_template("agent/consolidator_archive.md", strip=True, archive_count=4)
assert "SNIP" in prompt
assert "final 4 conversation messages" in prompt
for mark in ("[permanent]", "[durable]", "[ephemeral]", "[correction]", "[skip]"):
assert mark in prompt
assert "check context below" not in prompt.lower()