diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 90cae179..ce01ea44 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -10,7 +10,7 @@ "plugins": [ { "name": "claude-mem", - "version": "4.2.6", + "version": "4.2.8", "source": "./plugin", "description": "Persistent memory system for Claude Code - context compression across sessions" } diff --git a/CLAUDE.md b/CLAUDE.md index 26bef181..778a46b5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,7 +4,7 @@ Claude-mem is a persistent memory compression system that preserves context across Claude Code sessions. It automatically captures tool usage observations, processes them through the Claude Agent SDK, and makes summaries available to future sessions. -**Current Version**: 4.2.7 +**Current Version**: 4.2.8 **License**: AGPL-3.0 **Author**: Alex Newman (@thedotmack) @@ -210,7 +210,28 @@ npm run build && git commit -a -m "Build and update" && git push && cd ~/.claude ## Version History -### v4.2.7 (Current) +### v4.2.8 (Current) +**Breaking Changes**: None (patch version) + +**Critical Bugfix**: +- Fixed NOT NULL constraint violation that prevented observations and summaries from being stored + - Root cause: `SessionStore.getSessionById()` was not selecting `claude_session_id` from database + - Worker service received `undefined` for `claude_session_id` when initializing sessions + - Result: Database inserts failed with "NOT NULL constraint failed: sdk_sessions.claude_session_id" + - Fix: Added `claude_session_id` to SELECT query and return type in `getSessionById()` + - Impact: Session ID from hooks now flows correctly: hook → database → worker → SDK agent + - Affects: All observation and summary storage operations + +**Technical Details**: +- Updated `src/services/sqlite/SessionStore.ts:711` to include `claude_session_id` in SELECT +- Updated return type signature to include `claude_session_id: string` field +- Worker service now correctly receives and uses `claude_session_id` from database +- System maintains consistency throughout entire session lifecycle + +**Files Changed**: +- `src/services/sqlite/SessionStore.ts` (getSessionById method) + +### v4.2.7 **Breaking Changes**: None (patch version) **Improvements**: diff --git a/package.json b/package.json index 995d0182..488d3e56 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "claude-mem", - "version": "4.2.7", + "version": "4.2.8", "description": "Memory compression system for Claude Code - persist context across sessions", "keywords": [ "claude", diff --git a/plugin/.claude-plugin/plugin.json b/plugin/.claude-plugin/plugin.json index 575aa59d..b9f2bdf5 100644 --- a/plugin/.claude-plugin/plugin.json +++ b/plugin/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "claude-mem", - "version": "4.2.6", + "version": "4.2.8", "description": "Persistent memory system for Claude Code - seamlessly preserve context across sessions", "author": { "name": "Alex Newman"