v0.2.2cerebra2026-06-11

Phase 5 Steps 3+4 — WorkingMemory core + memory CLI

WorkingMemory class with capacity eviction, tower-cited penalty, and pin guards; `cerebra memory` CLI (status / promote / evict).

v0.2.22026-06-11
  • ·WorkingMemoryItem dataclass; is_tower_cited computed via JOIN at query time, not stored
  • ·WorkingMemory.promote(): optimistic insert, capacity eviction by lowest salience, tower-cited +0.20 eviction penalty, pinned items non-evictable, PromotionError on full-pinned slot; all events post-commit (WAL safety)
  • ·WorkingMemory.evict(), load_slot(), load_all_active(), render_text(), to_dict()
  • ·`cerebra memory status [--format text|json]`: read-only, all 10 slots, pinned/tower-cited markers, WorkingMemoryRendered event
  • ·`cerebra memory promote`: lockfile-guarded, auto-creates session, --tier deferred to Step 7
  • ·`cerebra memory evict <item_id>`: lockfile-guarded explicit eviction
  • ·42 unit + 9 integration (WorkingMemory) + 29 unit + 8 integration (CLI) = 88 new tests