Skip to content

Commit 0d2f076

Browse files
committed
docs: prepare v0.8.5 release documentation
- Update release-notes.md with v0.8.5 features and fixes - Move unreleased content to v0.8.5 section in CHANGELOG.md - Update README status section to reflect v0.8.5 release - Highlight advanced date parsing system and task assignment fixes Preparing for v0.8.5 release with GitHub workflow automation.
1 parent 07886d2 commit 0d2f076

File tree

3 files changed

+52
-64
lines changed

3 files changed

+52
-64
lines changed

CHANGELOG.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,13 @@
22

33
## Unreleased
44

5-
### 🚀 New Improvements
5+
### 🚀 New Features & Improvements
6+
7+
### 🐛 Bug Fixes
8+
9+
## v0.8.5 (2025-07-11)
10+
11+
### 🚀 New Features & Improvements
612

713
- **Major Enhancement: Advanced Date Parsing System (Option A Implementation)**:
814
- **Smart Preprocessing Layer**: Automatically corrects typos and normalizes natural language expressions

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
A Model Context Protocol (MCP) server for integrating ClickUp tasks with AI applications. This server allows AI agents to interact with ClickUp tasks, spaces, lists, and folders through a standardized protocol.
88

9-
> 🚀 **Status Update:** v0.8.4 is released with security features and compatibility improvements! Added comprehensive opt-in enhanced security features, fixed Gemini compatibility (Issue #79), and resolved priority handling and subtask retrieval issues. See [Release Notes](release-notes.md) for full details.
9+
> 🚀 **Status Update:** v0.8.5 is released with advanced date parsing and critical bug fixes! Added major date parsing enhancements with smart preprocessing, fixed task assignment functionality, and resolved time tracking tool response formatting. See [Release Notes](release-notes.md) for full details.
1010
1111
## Setup
1212

release-notes.md

Lines changed: 44 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,65 +1,47 @@
1-
# v0.8.4 Release Notes
2-
3-
### � Security Features
4-
5-
- **Comprehensive MCP Streamable HTTPS Transport Security Implementation**:
6-
- **HTTPS/TLS Support**: Added optional HTTPS server alongside HTTP for encrypted communication
7-
- Environment variables: `ENABLE_HTTPS`, `SSL_KEY_PATH`, `SSL_CERT_PATH`, `SSL_CA_PATH`, `HTTPS_PORT`
8-
- Dual protocol support: HTTP (3231) and HTTPS (3443) run simultaneously for backwards compatibility
9-
- Self-signed certificate generation script: `./scripts/generate-ssl-cert.sh`
10-
- Production-ready with CA-issued certificates
11-
- **Origin Header Validation**: Prevents cross-site attacks by validating Origin header against whitelist
12-
- Environment variable: `ENABLE_ORIGIN_VALIDATION=true`
13-
- Default allowed origins: `127.0.0.1:3231`, `localhost:3231`, plus HTTPS variants
14-
- Smart handling: Allows non-browser clients (n8n, MCP Inspector) while blocking unauthorized origins
15-
- **Rate Limiting Protection**: Protects against DoS attacks with configurable request limits
16-
- Environment variable: `ENABLE_RATE_LIMIT=true`
17-
- Default: 100 requests per minute per IP address
18-
- Configurable via: `RATE_LIMIT_MAX`, `RATE_LIMIT_WINDOW_MS`
19-
- **CORS Configuration**: Secure cross-origin resource sharing for web applications
20-
- Environment variable: `ENABLE_CORS=true`
21-
- Supports GET, POST, DELETE, OPTIONS methods
22-
- Headers: Content-Type, mcp-session-id, Authorization
23-
- **Security Headers**: Web security best practices when `ENABLE_SECURITY_FEATURES=true`
24-
- X-Content-Type-Options, X-Frame-Options, X-XSS-Protection
25-
- Referrer-Policy, Strict-Transport-Security (HTTPS only)
26-
- **Request Size Limits**: Prevents memory exhaustion attacks
27-
- Configurable limit: `MAX_REQUEST_SIZE=10mb` (default)
28-
- Hard limit: 50MB maximum
29-
- **Security Monitoring**: Comprehensive logging and health endpoint
30-
- Health endpoint: `/health` shows security status
31-
- Security event logging: origin validation, rate limits, violations
32-
- Log levels: DEBUG, INFO, WARN, ERROR for security events
33-
- **Zero Breaking Changes**: All security features are opt-in and disabled by default
34-
- Existing clients (Claude Desktop, n8n, MCP Inspector) work unchanged
35-
- No configuration changes required for current users
36-
- Backwards compatibility thoroughly tested and verified
1+
# v0.8.5 Release Notes
2+
3+
### 🚀 New Features & Improvements
4+
5+
- **Major Enhancement: Advanced Date Parsing System**:
6+
- **Smart Preprocessing Layer**: Automatically corrects typos and normalizes natural language expressions
7+
- Typo correction: `"tommorow"``"tomorrow"`, `"yesterady"``"yesterday"`
8+
- Natural language enhancement: `"tomorrow morning"``"tomorrow 9am"`, `"yesterday evening"``"yesterday 6pm"`
9+
- Complex expression normalization: `"day after tomorrow"``"+2 days"`, `"day before yesterday"``"-2 days"`
10+
- Time format normalization: Handles `"@"`, `"at"`, and various am/pm formats
11+
- **Enhanced Pattern Matching**: Consolidated regex patterns with improved flexibility
12+
- Relative days with time: `"+3 days 2pm"`, `"-2 days 9:30am"`
13+
- Relative weeks with time: `"+2 weeks 1pm"`, `"-1 weeks 5pm"`
14+
- Enhanced yesterday/tomorrow: `"tomorrow 8am"`, `"yesterday 7:30pm"`
15+
- **Expanded Format Support**: Added support for multiple new date formats
16+
- US dates with time: `"7/4/2025 5pm"`, `"11/11/2030 11:11pm"`
17+
- Text month formats: `"march 10 2025 6:30pm"`
18+
- Dates without year: `"10/10 6:00pm"` (assumes current year)
19+
- Timestamp boundary fix: Now accepts Year 2000 boundary (`946684800000`)
20+
- **Improved Date Clearing**: Fixed date clearing functionality to properly set `null` values
21+
- **Code Optimization**: Reduced code duplication by 40% with helper functions and consolidated patterns
22+
- **Performance**: Maintains sub-millisecond parsing speed (~0.188ms average)
23+
- **Comprehensive Testing**: Achieves 100% success rate on 50-test comprehensive suite
24+
- **Backward Compatibility**: All existing functionality preserved while adding significant new capabilities
3725

3826
### 🐛 Bug Fixes
3927

40-
- **Fixed Gemini compatibility (Issue #79)**:
41-
- **Root cause**: Priority enum values were defined as numbers `[1, 2, 3, 4, null]` but Gemini API expects strings
42-
- **Solution**: Updated priority enum to use string values `["1", "2", "3", "4", null]` in `update_task` and `update_bulk_tasks` tools
43-
- **Schema changes**: Changed type from `"number"` to `"string"` for priority field in affected tools
44-
- **Backward compatibility**: Maintained via existing `toTaskPriority()` function that handles string-to-number conversion
45-
- **Impact**: Resolves schema validation errors in Cursor IDE and other Gemini-based MCP clients
46-
- **Affected tools**: `update_task_ClickUp__Local_` and `update_bulk_tasks_ClickUp__Local_`
47-
- **Testing**: Verified priority setting and removal functionality works correctly
48-
49-
- **Fixed priority null handling in task updates (Issue #23)**:
50-
- Fixed `update_task` tool failing when setting priority to `null` to clear/remove priority
51-
- Modified `buildUpdateData` function to use `toTaskPriority` helper for proper null value conversion
52-
- Priority updates now work correctly for both setting valid values (1-4) and clearing priority (null)
53-
- Bulk task updates (`update_bulk_tasks`) already worked correctly and continue to function properly
54-
55-
- **Fixed subtasks not being retrieved (Issue #69)**:
56-
- Fixed `getSubtasks` method in `task-core.ts` to include required query parameters
57-
- Added `subtasks=true` and `include_subtasks=true` parameters to ClickUp API call
58-
- Subtasks are now properly retrieved and displayed when using `get_task` tool with `subtasks=true`
59-
- Resolves issue where subtasks arrays were always empty despite subtasks existing in ClickUp
60-
61-
### 🔧 Compatibility Improvements
62-
63-
- **Enhanced MCP Client Support**: Improved compatibility with Cursor IDE and Gemini-based MCP clients
64-
- **Schema Standardization**: Aligned tool schemas with MCP protocol best practices for broader client support
65-
- **Testing Coverage**: Verified functionality across multiple MCP client implementations
28+
- **Fixed Task Assignment Functionality**:
29+
- **Root Cause**: ClickUp API uses different formats for assignees in task creation vs updates
30+
- Creation: `"assignees": [user_id1, user_id2]` (simple array)
31+
- Updates: `"assignees": { "add": [user_id1], "rem": [user_id2] }` (object with add/rem arrays)
32+
- **Parameter Parsing**: Fixed MCP serialization issue where assignee arrays were received as strings
33+
- **Smart Assignment Logic**: Implemented intelligent add/remove calculation by comparing current vs desired assignees
34+
- **Complete Functionality**: Now supports adding, removing, and updating task assignees
35+
- **Multiple Formats**: Supports user IDs, emails, and usernames for assignee resolution
36+
- **TypeScript Types**: Updated interfaces to support both array and object assignee formats
37+
- **Testing**: Verified full assignment cycle (add → remove → re-add) works correctly
38+
39+
- **Fixed Track Time tool response formatting issue**:
40+
- Fixed issue where Track Time tools (start/stop time tracking, get time entries, etc.) were executing successfully but returning no output to users
41+
- **Root cause**: Time tracking handlers were returning raw JavaScript objects instead of using proper MCP server response formatting
42+
- **Solution**: Updated all 6 time tracking handlers to use `sponsorService.createResponse()` method for consistent response formatting
43+
- **Handlers fixed**: `handleStartTimeTracking`, `handleStopTimeTracking`, `handleGetTaskTimeEntries`, `handleAddTimeEntry`, `handleDeleteTimeEntry`, `handleGetCurrentTimeEntry`
44+
- **Enhanced error handling**: All error responses now use `sponsorService.createErrorResponse()` for consistent error formatting
45+
- **Added null safety**: Fixed potential undefined property access in time entries data with proper null checks
46+
- **Improved user experience**: Added helpful success messages and proper data structure formatting
47+
- **Impact**: Track Time tools now provide clear, formatted JSON responses instead of appearing to run silently

0 commit comments

Comments
 (0)