mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-04-05 09:03:07 +00:00
chore: release v2.15.2 with 100% test coverage
- Bump version to 2.15.2 - Add comprehensive changelog entry documenting all improvements - Add 31 new unit tests achieving 100% coverage for changed code - Fix flaky integration tests with deterministic ordering Test Coverage Improvements: - buildMetadataFilterConditions: All filter combinations (11 tests) - Performance logging validation (3 tests) - ID filtering edge cases (7 tests) - getMetadataSearchCount: Shared helper usage (7 tests) - Two-phase optimization verification (3 tests) Coverage increased from 36.58% to 100% for patch 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
36
CHANGELOG.md
36
CHANGELOG.md
@@ -5,6 +5,42 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [2.15.2] - 2025-10-03
|
||||
|
||||
### Fixed
|
||||
- **Template Search Performance & Reliability** - Enhanced `search_templates_by_metadata` with production-ready improvements
|
||||
- **Ordering Stability**: Implemented CTE with VALUES clause to preserve exact Phase 1 ordering
|
||||
- Prevents ordering discrepancies between ID selection and data fetch phases
|
||||
- Ensures deterministic results across query phases
|
||||
- **Defensive ID Validation**: Added type safety filters before Phase 2 query
|
||||
- Validates only positive integers are used in the CTE
|
||||
- Logs warnings for filtered invalid IDs
|
||||
- **Performance Monitoring**: Added detailed timing metrics (phase1Ms, phase2Ms, totalMs)
|
||||
- Enables quantifying optimization benefits
|
||||
- Debug logging for all search operations
|
||||
- **DRY Refactoring**: Extracted `buildMetadataFilterConditions` helper method
|
||||
- Eliminates duplication between `searchTemplatesByMetadata` and `getMetadataSearchCount`
|
||||
- Centralized filter-building logic
|
||||
|
||||
### Added
|
||||
- **Comprehensive Test Coverage** - 31 new unit tests achieving 100% coverage for changed code
|
||||
- `buildMetadataFilterConditions` - All filter combinations (11 tests)
|
||||
- Performance logging validation (3 tests)
|
||||
- ID filtering edge cases - negative, zero, non-integer, null (7 tests)
|
||||
- `getMetadataSearchCount` - Shared helper usage (7 tests)
|
||||
- Two-phase query optimization verification (3 tests)
|
||||
- Fixed flaky integration tests with deterministic ordering using unique view counts
|
||||
|
||||
### Performance
|
||||
- Query optimization maintains sub-1ms Phase 1 performance
|
||||
- Two-phase approach prevents timeout on large template sets
|
||||
- CTE-based ordering adds negligible overhead (<1ms)
|
||||
|
||||
### Test Results
|
||||
- Unit tests: 31 new tests, all passing
|
||||
- Integration tests: 36 passing, 1 skipped
|
||||
- **Coverage**: 100% for changed code (previously 36.58% patch coverage)
|
||||
|
||||
## [2.15.0] - 2025-10-02
|
||||
|
||||
### 🚀 Major Features
|
||||
|
||||
Reference in New Issue
Block a user