Repository navigation
v1.8.0: Unified Decay System
What's New in v1.8.0
🎯 Unified Decay System
Auto-decay and manual decay now use the same algorithm, ensuring consistent behavior regardless of code path.
New configuration option:
# Choose decay function: exponential (default), linear, or step
SPATIAL_MEMORY_AUTO_DECAY_FUNCTION=exponentialDecay functions:
| Function | Behavior |
|---|---|
exponential |
Smooth decay following 2^(-t/half_life), best for most use cases |
linear |
Constant rate decay reaching 0 at 2x half_life |
step |
Discrete drops at half_life intervals (1.0 → 0.5 → 0.25) |
Adaptive half-life: The effective half-life now considers:
- Access count: 1.5× multiplier per access (frequently used memories decay slower)
- Importance factor: (1 + importance) multiplier
🔧 Code Quality Improvements
- Type Safety: Resolved all mypy errors in main source code (49 files)
- Linting: Resolved all ruff errors in test files (45 issues)
- Clean Codebase: Ready for open source contributions
📚 Documentation
- Updated
docs/CONFIGURATION.mdwith decay function options - Updated
.env.examplewith configuration examples
✅ Test Results
- 1,393 tests passing
- mypy: Success (no issues)
- ruff: All checks passed
Full Changelog: v1.7.0...v1.8.0