chore: Update changelog for v4.2.11 with cross-platform path detection fixes
This commit is contained in:
@@ -8,6 +8,24 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
|
||||||
|
## [4.2.11] - 2025-10-25
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- **Cross-platform Claude path detection**: Fixed SDK auto-detection failure by implementing explicit `which`/`where` command execution
|
||||||
|
- SDK's automatic Claude path detection was returning undefined
|
||||||
|
- Unix/macOS: Uses `which claude` command to find executable
|
||||||
|
- Windows: Uses `where claude` command (works in both CMD and PowerShell)
|
||||||
|
- Fallback to `CLAUDE_CODE_PATH` environment variable if set
|
||||||
|
- Handles Windows multiple results by taking first match
|
||||||
|
- Worker now logs discovered path for debugging: "Found Claude executable: /path/to/claude"
|
||||||
|
|
||||||
|
### Technical Details
|
||||||
|
- Added `findClaudePath()` helper function using `child_process.execSync`
|
||||||
|
- Platform detection via `process.platform === 'win32'` to choose appropriate command
|
||||||
|
- Updated `src/sdk/worker.ts` and `src/services/worker-service.ts` with explicit path detection
|
||||||
|
- Both files now pass `pathToClaudeCodeExecutable: claudePath` to SDK query
|
||||||
|
|
||||||
|
|
||||||
## [4.2.10] - 2025-10-25
|
## [4.2.10] - 2025-10-25
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
@@ -210,99 +210,27 @@ npm run build && git commit -a -m "Build and update" && git push && cd ~/.claude
|
|||||||
|
|
||||||
## Version History
|
## Version History
|
||||||
|
|
||||||
### v4.2.11 (Current)
|
For detailed version history and changelog, see [CHANGELOG.md](CHANGELOG.md).
|
||||||
**Breaking Changes**: None (patch version)
|
|
||||||
|
|
||||||
**Critical Bugfix**:
|
**Current Version**: 4.2.11
|
||||||
- Fixed SDK auto-detection failure by implementing explicit `which`/`where` command execution
|
|
||||||
- SDK's automatic Claude path detection was not working (returned undefined)
|
|
||||||
- Implemented cross-platform executable finder using `child_process.execSync`
|
|
||||||
- Unix/macOS: Uses `which claude` command
|
|
||||||
- Windows: Uses `where claude` command (works in both CMD and PowerShell)
|
|
||||||
- Fallback to `CLAUDE_CODE_PATH` environment variable if set
|
|
||||||
- Handles Windows multiple results (takes first match)
|
|
||||||
|
|
||||||
**Impact**:
|
### Recent Highlights
|
||||||
- Before: Worker service failed with "path argument must be of type string. Received undefined"
|
|
||||||
- After: Worker service correctly finds Claude executable on all platforms
|
|
||||||
|
|
||||||
**Technical Details**:
|
#### v4.2.11 (2025-10-25)
|
||||||
- Added `findClaudePath()` helper function to both worker files
|
- Fixed cross-platform Claude executable path detection using `which`/`where` commands
|
||||||
- Uses `process.platform === 'win32'` to detect Windows and choose appropriate command
|
- Full Windows, macOS, and Linux compatibility
|
||||||
- Logs the discovered path for debugging: "Found Claude executable: /path/to/claude"
|
|
||||||
- Updated `src/sdk/worker.ts` with explicit path detection
|
|
||||||
- Updated `src/services/worker-service.ts` with explicit path detection
|
|
||||||
- Both files now pass `pathToClaudeCodeExecutable: claudePath` to SDK
|
|
||||||
|
|
||||||
**Files Changed**:
|
#### v4.2.8 (2025-10-25)
|
||||||
- `src/sdk/worker.ts`
|
- Fixed NOT NULL constraint violation for claude_session_id
|
||||||
- `src/services/worker-service.ts`
|
|
||||||
- `plugin/scripts/worker-service.cjs` (rebuilt)
|
|
||||||
|
|
||||||
### v4.2.10
|
#### v4.2.3 (2025-10-23)
|
||||||
**Breaking Changes**: None (patch version)
|
- Fixed FTS5 injection vulnerability
|
||||||
|
- Fixed Windows PowerShell compatibility
|
||||||
|
|
||||||
**Critical Bugfix**:
|
#### v4.0.0 (2025-10-18)
|
||||||
- Attempted to fix Windows compatibility by removing hardcoded macOS path
|
- MCP Search Server with FTS5 full-text search
|
||||||
- Removed hardcoded path: `/Users/alexnewman/.nvm/versions/node/v24.5.0/bin/claude`
|
- Plugin data directory integration
|
||||||
- Removed `pathToClaudeCodeExecutable` parameter to rely on SDK auto-detection
|
- HTTP REST API architecture with PM2
|
||||||
- **Note**: This approach failed; SDK auto-detection did not work (fixed in v4.2.11)
|
|
||||||
|
|
||||||
**Impact**:
|
|
||||||
- Partial fix: Removed hardcoded macOS path
|
|
||||||
- Issue: SDK auto-detection returned undefined, causing worker failures
|
|
||||||
|
|
||||||
**Files Changed**:
|
|
||||||
- `src/sdk/worker.ts`
|
|
||||||
- `src/services/worker-service.ts`
|
|
||||||
- `plugin/scripts/worker-service.cjs` (rebuilt)
|
|
||||||
|
|
||||||
### v4.2.9
|
|
||||||
**Breaking Changes**: None (patch version)
|
|
||||||
|
|
||||||
**Documentation**:
|
|
||||||
- Added experimental progressive disclosure context system documentation
|
|
||||||
- New README section explaining the 3-layer memory retrieval approach
|
|
||||||
- Created `EXPERIMENTAL_RELEASE_NOTES.md` with comprehensive testing guide
|
|
||||||
- Created `GITHUB_RELEASE_TEMPLATE.md` for release announcements
|
|
||||||
- Invites users to test `feature/context-with-observations` branch
|
|
||||||
- Progressive disclosure concept: Index (what exists + token costs) → Details (on-demand via MCP) → Perfect recall (source code)
|
|
||||||
- Seeks user feedback on observation-level context injection vs current summary-only approach
|
|
||||||
|
|
||||||
**Purpose**:
|
|
||||||
- Gather real-world feedback before merging experimental context improvements
|
|
||||||
- Test whether showing observation index improves Claude's retrieval decisions
|
|
||||||
- Validate token cost metadata influences Claude's search behavior
|
|
||||||
|
|
||||||
**Files Changed**:
|
|
||||||
- `README.md` - Added experimental feature section
|
|
||||||
- `EXPERIMENTAL_RELEASE_NOTES.md` - Full testing guide and feedback template
|
|
||||||
- `GITHUB_RELEASE_TEMPLATE.md` - Release announcement template
|
|
||||||
- Updated all version references to 4.2.9
|
|
||||||
|
|
||||||
### v4.2.8
|
|
||||||
**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**:
|
**Improvements**:
|
||||||
- Enhanced data quality with consistent null handling
|
- Enhanced data quality with consistent null handling
|
||||||
|
|||||||
Reference in New Issue
Block a user