Authored memory is an append-only temporal port. rho_remember() creates a
live note, rho_edit_memory() applies a typed edit only when its expected
revision is still current, and rho_forget() appends a tombstone. Recall and
history retain attribution and revision identity; no operation destroys an
earlier observation.
Details
MemoryStore is the structural interface consumed by the coding tools.
rho_in_memory_memory_store() is the process-local reference
implementation. Other packages can implement the same generics over DuckDB,
NNG, or another temporal observation store.
rho_memory_tools() returns remember, recall, edit_memory, forget,
and memory_history. Mutating calls require an explicit author. Edit and
forget require the revision identifier returned by recall, so a stale model
action resolves to RhoMemoryConflict instead of overwriting newer work.