v12.1.2

thedotmack/claude-memv12.1.2Apr 15, 2026by thedotmack

AI Summary

This v12.1.2 release merges 15 community PRs focused on runtime reliability, cross-platform compatibility, and data integrity improvements. Key improvements include session lifecycle guards to prevent runaway API spend, circuit breaker on OpenClaw worker client, and better file observation with mtime-based invalidation. The test baseline improved significantly from 18 failures to 11.

Key Highlights

  • Session lifecycle guards to prevent runaway API spend (#1693)
  • Circuit breaker on OpenClaw worker client for improved reliability (#1697)
  • Worktree observation now uses parent project name for writes (#1820)
  • File reads now invalidate properly on mtime changes (#1729)
  • Test failures reduced from 18 to 11 (1429 passing)

New Features

  • Reap stuck generators in reapStaleSessions for better session management
  • Login-shell resolution replaces hardcoded nvm/homebrew PATH detection
  • Filter empty-string args before Bun spawn() to prevent errors
  • Primary-key index excluded from unique-constraint check in migration 7
  • ~/.claude-mem/.env permissions restricted to 0600 for security
  • Corpus route filters now properly coerced

Full Release Notes

## Community PRs merged (15)

**Runtime & reliability**
- #1698 Reap stuck generators in reapStaleSessions (@ousamabenyounes)
- #1697 Circuit breaker on OpenClaw worker client (@ousamabenyounes)
- #1696 Resolve Setup hook reference, warn on macOS-only binary (@ousamabenyounes)
- #1693 Session lifecycle guards to prevent runaway API spend (@ousamabenyounes)
- #1692 Resolve Gemini CLI 0.37.0 session capture failures (@ousamabenyounes)

**Cross-platform & hooks**
- #1833 Replace hardcoded nvm/homebrew PATH with login-shell resolution (@masak1yu)
- #1781 Filter empty-string args before Bun spawn() (@biswanath-cmd)
- #1780 Fix npx search, default Codex context to workspace-local AGENTS (@enma998)

**Data integrity**
- #1820 Use parent project name for worktree observation writes (@0xLeathery)
- #1771 Exclude primary-key index from unique-constraint check in migration 7 (@derjochenmeyer)
- #1770 Restrict ~/.claude-mem/.env permissions to 0600 (@derjochenmeyer)
- #1729 Preserve targeted file reads and invalidate on mtime (@quangtran88)
- #1776 Coerce corpus route filters (@suyua9)

**Docs**
- #1777 Document CLAUDE_MEM_MODE (@AviArora02-commits)
- #1765 Update opencode install instructions (@s-uryansh)

## Held for rebase
- #1748, #1694, #1695 — developed conflicts during batch merge

## Test baseline
1429 pass / 11 fail (improved from 18 fail at v12.1.1)