From 8039ada2224b0ad235a48dccd680e25ff402cef7 Mon Sep 17 00:00:00 2001 From: Alex Newman Date: Mon, 16 Feb 2026 18:09:02 -0500 Subject: [PATCH] docs: update CHANGELOG.md for v10.2.1 Co-Authored-By: Claude Opus 4.6 --- CHANGELOG.md | 77 ++++++++-------------------------------------------- 1 file changed, 12 insertions(+), 65 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3416c726..9bd12aed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,18 @@ All notable changes to claude-mem. +## [v10.2.1] - 2026-02-16 + +## Bug Fixes + +- **Bun install & sharp native modules**: Fixed stale native module cache issues on Bun updates, added `node-addon-api` as a dev dependency required by sharp (#1140) +- **PendingMessageStore consolidation**: Deduplicated PendingMessageStore initialization in worker-service; added session-scoped filtering to `resetStaleProcessingMessages` to prevent cross-session message resets (#1140) +- **Gemini empty response handling**: Fixed silent message deletion when Gemini returns empty summary responses โ€” now logs a warning and preserves the original message (#1138) +- **Idle timeout session scoping**: Fixed idle timeout handler to only reset messages for the timed-out session instead of globally resetting all sessions (#1138) +- **Shell injection in sync-marketplace**: Replaced `execSync` with `spawnSync` for rsync calls to eliminate command injection via gitignore patterns (#1138) +- **Sharp cache invalidation**: Added cache clearing for sharp's native bindings when Bun version changes (#1138) +- **Marketplace install**: Switched marketplace sync from npm to bun for package installation consistency (#1140) + ## [v10.1.0] - 2026-02-16 ## SessionStart System Message & Cleaner Defaults @@ -1411,68 +1423,3 @@ Patch release v8.2.4 - Update hooks.json to use worker-service.cjs CLI - Add comprehensive tests for hook constants and worker spawn functionality -## [v8.2.1] - 2025-12-27 - -## ๐Ÿ”ง Worker Lifecycle Hardening - -This patch release addresses critical bugs discovered during PR review of the self-spawn pattern introduced in 8.2.0. The worker daemon now handles edge cases robustly across both Unix and Windows platforms. - -### ๐Ÿ› Critical Bug Fixes - -#### Process Exit Detection Fixed -The `waitForProcessesExit` function was crashing when processes exited during monitoring. The `process.kill(pid, 0)` call throws when a process no longer exists, which was not being caught. Now wrapped in try/catch to correctly identify exited processes. - -#### Spawn PID Validation -The worker daemon now validates that `spawn()` actually returned a valid PID before writing to the PID file. Previously, spawn failures could leave invalid PID files that broke subsequent lifecycle operations. - -#### Cross-Platform Orphan Cleanup -- **Unix**: Replaced single `kill` command with individual `process.kill()` calls wrapped in try/catch, so one already-exited process doesn't abort cleanup of remaining orphans -- **Windows**: Wrapped `taskkill` calls in try/catch for the same reason - -#### Health Check Reliability -Changed `waitForHealth` to use the `/api/readiness` endpoint (returns 503 until fully initialized) instead of just checking if the port is in use. Callers now wait for *actual* worker readiness, not just network availability. - -### ๐Ÿ”„ Refactoring - -#### Code Consolidation (-580 lines) -Deleted obsolete process management infrastructure that was replaced by the self-spawn pattern: -- `src/services/process/ProcessManager.ts` (433 lines) - PID management now in worker-service -- `src/cli/worker-cli.ts` (81 lines) - CLI handling now in worker-service -- `src/services/worker-wrapper.ts` (157 lines) - Replaced by `--daemon` flag - -#### Updated Hook Commands -All hooks now use `worker-service.cjs` CLI directly instead of the deleted `worker-cli.js`. - -### โฑ๏ธ Timeout Adjustments - -Increased timeouts throughout for compatibility with slow systems: - -| Component | Before | After | -|-----------|--------|-------| -| Default hook timeout | 120s | 300s | -| Health check timeout | 1s | 30s | -| Health check retries | 15 | 300 | -| Context initialization | 30s | 300s | -| MCP connection | 15s | 300s | -| PowerShell commands | 5s | 60s | -| Git commands | 30s | 300s | -| NPM install | 120s | 600s | -| Hook worker commands | 30s | 180s | - -### ๐Ÿงช Testing - -Added comprehensive test suites: -- `tests/hook-constants.test.ts` - Validates timeout configurations -- `tests/worker-spawn.test.ts` - Tests worker CLI and health endpoints - -### ๐Ÿ›ก๏ธ Additional Robustness - -- PID validation in restart command (matches start command behavior) -- Try/catch around `forceKillProcess()` for graceful shutdown -- Try/catch around `getChildProcesses()` for Windows failures -- Improved logging for PID file operations and HTTP shutdown - ---- - -**Full Changelog**: https://github.com/thedotmack/claude-mem/compare/v8.2.0...v8.2.1 -