structured memory: facts/pinned/episodes, batched consolidation, participant-scoped recall

This commit is contained in:
Oleksandr Kozachuk
2026-07-13 14:12:21 +02:00
parent 02c989946b
commit 3d2289496b
14 changed files with 608 additions and 90 deletions
+8 -6
View File
@@ -69,9 +69,10 @@ is the channel the message came from.
### ENV-10 — System prompt template substitution (coverage: test)
`message()` substitutes `{date}` (YYYY-MM-DD), `{time}`, `{memory}`
(current memory string) in the system prompt; `{news}` is replaced
with the news file content when the configured file exists and stays
literal when it does not.
(the assembled memory block — legacy memory string while the
structured memory is inactive, see MEM-10) in the system prompt;
`{news}` is replaced with the news file content when the configured
file exists and stays literal when it does not.
### ENV-11 — Per-channel history shrink prefers busy channels (coverage: test)
@@ -92,10 +93,11 @@ back-to-back (D1).
records the clearing in the channel's memory. (D7: the previous
handler declared `(reaction, user)` and crashed on dispatch.)
### ENV-14 — update_memory persists its argument (coverage: test)
### ENV-14 — update_memory persists its argument (coverage: withdrawn — successor SPEC-002)
`update_memory(memory)` sets the responder's memory to the passed
value and persists that value. (D12: the argument was ignored.)
Withdrawn 2026-07-13 with FDB-007: the per-answer memory rewrite
(`update_memory`/`memoize`) is deleted; structured memory (MEM-01+)
replaces it. The D12 defect died with the code.
### ENV-15 — retry-model is used after a rate limit (coverage: test)