Why not one TTL for everything?
A 30-day TTL murders architecture decisions; a 1-year TTL preserves dead tactics. Type-matched half-lives mirror how code knowledge actually ages.
Glossary · Per-Type Memory Decay (Gravitas)
Forgetting on a schedule that matches reality.
Direct answer
Different knowledge rots at different speeds, so one TTL fits none: decisions age slowly, approaches die fast. Per-type exponential decay (outcome × decay × links × confidence) scores each node by its kind's half-life — decisions ≈347 days, patterns 180, bugfixes 60, approaches 30. Decay never deletes: it demotes, letting fresh corroboration rescue and silence bury.
In Anvaya
Questions
A 30-day TTL murders architecture decisions; a 1-year TTL preserves dead tactics. Type-matched half-lives mirror how code knowledge actually ages.
Yes — frequently accessed nodes strengthen (Ebbinghaus-style), stale untouched ones auto-evict. Use is a vote.
No — demoted from live indexes, preserved in version chains and temporal logs for audit and resurrection.
One binary. 11+9 Rust crates. 545 tests. Hand-written HNSW index. Three transport modes. Four providers, Ollama, Anthropic, OpenAI, Siemens. Zero API keys required to start. Mind remembers everything after the first session.