adding total memory counter bottom of Memory_Manager output
Browse files
app.py
CHANGED
@@ -888,6 +888,9 @@ def _mem_list(
|
|
888 |
if include_tags and m.get("tags"):
|
889 |
base += f" | tags: {m['tags']}"
|
890 |
lines.append(base)
|
|
|
|
|
|
|
891 |
return "\n".join(lines)
|
892 |
|
893 |
|
@@ -919,16 +922,23 @@ def _mem_search(
|
|
919 |
with _MEMORY_LOCK:
|
920 |
memories = _load_memories()
|
921 |
# Newest first iteration for early cutoff
|
922 |
-
matches: List[Dict[str, str]] = []
|
|
|
923 |
for m in reversed(memories): # newest backward
|
924 |
hay = (m.get("text", "") + " " + m.get("tags", "")).lower()
|
925 |
if all(t in hay for t in terms):
|
926 |
-
|
927 |
-
if len(matches)
|
928 |
-
|
929 |
if not matches:
|
930 |
return f"No matches for: {query}"
|
931 |
-
lines = [
|
|
|
|
|
|
|
|
|
|
|
|
|
932 |
return "\n".join(lines)
|
933 |
|
934 |
|
|
|
888 |
if include_tags and m.get("tags"):
|
889 |
base += f" | tags: {m['tags']}"
|
890 |
lines.append(base)
|
891 |
+
omitted = len(memories) - len(chosen)
|
892 |
+
if omitted > 0:
|
893 |
+
lines.append(f"… ({omitted} older memorie{'s' if omitted!=1 else ''} omitted; total={len(memories)})")
|
894 |
return "\n".join(lines)
|
895 |
|
896 |
|
|
|
922 |
with _MEMORY_LOCK:
|
923 |
memories = _load_memories()
|
924 |
# Newest first iteration for early cutoff
|
925 |
+
matches: List[Dict[str, str]] = [] # collected (capped at limit)
|
926 |
+
total_matches = 0
|
927 |
for m in reversed(memories): # newest backward
|
928 |
hay = (m.get("text", "") + " " + m.get("tags", "")).lower()
|
929 |
if all(t in hay for t in terms):
|
930 |
+
total_matches += 1
|
931 |
+
if len(matches) < limit:
|
932 |
+
matches.append(m)
|
933 |
if not matches:
|
934 |
return f"No matches for: {query}"
|
935 |
+
lines = [
|
936 |
+
f"{m['id'][:8]} [{m.get('timestamp','?')}] {m.get('text','')}" + (f" | tags: {m['tags']}" if m.get('tags') else "")
|
937 |
+
for m in matches
|
938 |
+
]
|
939 |
+
omitted = total_matches - len(matches)
|
940 |
+
if omitted > 0:
|
941 |
+
lines.append(f"… ({omitted} additional match{'es' if omitted!=1 else ''} omitted; total_matches={total_matches})")
|
942 |
return "\n".join(lines)
|
943 |
|
944 |
|