CHANGELOG.md•9.65 kB
# Changelog
All notable changes to the TaskFlow MCP 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).
## [1.5.0] - 2025-09-15
### BREAKING CHANGES
- **Task Interface Simplified** - Removed unused `approved` field from Task interface (Issue #12)
- The `approved` boolean field was never used by any MCP tools and was blocking archiving functionality
- Tasks are now considered complete when `done: true` without requiring separate approval
- This aligns with the simplified workflow introduced in v1.3.2
- **Migration**: Any existing task files with `approved` fields will continue to work, but the field will be ignored
- **Per-Request Task Numbering** - Changed from global to per-request task numbering (Issue #13)
- Tasks now use per-request numbering: req-1 has task-1, task-2; req-2 has task-1, task-2, etc.
- Subtasks also use per-request numbering: subtask-1, subtask-2 per request
- More intuitive and aligns with user expectations of independent request workflows
- **Migration**: Existing task files will continue to work, but new tasks will use the new numbering scheme
### Fixed
- **Archiving Workflow** - Archive operations no longer blocked by unused approval requirements
- **Task ID Clarity** - Task numbering now matches user mental model of request-scoped workflows
### Improved
- Better separation between global counters (for notes) and per-request counters (for tasks)
- Cleaner task interface without unnecessary fields
- More intuitive task management workflow
## [1.4.2] - 2025-09-08
### Added
- **Request Completion Tool** - New `mark_request_complete` MCP tool to mark entire requests as completed (Issue #10)
- Validates that all tasks and subtasks are completed before allowing request completion
- Required before requests can be archived
- Supports optional completion details/notes
- Automatic archiving integration when `ARCHIVE_MODE=auto-on-complete`
- Comprehensive error handling for incomplete tasks or subtasks
### Fixed
- **Request Completion Workflow** - Addressed issue where requests couldn't be marked as complete (Issue #10)
- Users can now properly complete requests which enables proper archiving workflow
- Request completion status is now properly tracked and validated
- Archive operations now work correctly with completed requests
- **Archive File Auto-Creation** - Confirmed and documented automatic archive file creation (Issue #11)
- Archive files are automatically created when archiving is performed
- No manual file creation required by users
- Proper directory structure creation with error handling
- Existing functionality was working correctly, issue was resolved through clarification
### Improved
- Enhanced documentation with new `mark_request_complete` tool usage examples
- Updated README.md with complete workflow documentation
- Better error messages for request completion validation
## [1.4.1] - 2025-09-03
### Added
- **Archive System** - Complete task archiving functionality (Issue #9)
- `archive_completed_requests` tool to archive finished requests and keep active tasks clean
- `list_archived_requests` tool to browse archived requests with search and filtering capabilities
- `restore_archived_request` tool to restore archived requests back to active status
- Archive files include completion timestamps, metadata, and full request history
- Comprehensive error handling and validation for archive operations
- Archive file structure with version tracking and metadata management
- **Prompts System** - Global prompts configuration management (Issue #8)
- `get_prompts` tool to retrieve current prompts configuration
- `set_prompts` tool to set global instructions, taskPrefix, and taskSuffix
- `update_prompts` tool to update specific parts of prompts configuration
- `remove_prompts` tool to remove entire configuration or specific fields
- Prompts are stored alongside tasks in the same file (JSON/YAML)
- Automatic timestamp tracking for prompts creation and updates
- Backward compatibility with existing task files without prompts
- **Enhanced Path Resolution** - Improved file path handling (Issue #7)
- Support for relative paths in TASK_MANAGER_FILE_PATH environment variable
- Automatic path resolution using Node.js path.resolve() and path.normalize()
- Cross-platform compatibility for Windows and Linux path formats
- Support for TASK_MANAGER_BASE_DIR to override default base directory
- Comprehensive error handling and fallback mechanisms for path resolution
- Enhanced documentation with path usage examples and best practices
### Improved
- Enhanced progress tracking with better task status visualization
- Improved error messages and validation across all tools
- Better handling of edge cases in task and subtask management
- More robust file operations with proper error recovery
### Fixed
- Path resolution issues on different operating systems
- Task completion status validation in archive operations
- Memory management improvements in large task sets
## [1.3.3] - 2025-01-05
### Added
- YAML format support for task data persistence
- Tasks can now be saved in YAML format by configuring the file path with `.yaml` or `.yml` extension
- Automatic format detection based on file extension during load and save operations
- YAML format better preserves multiline descriptions and complex text content
- Maintains backward compatibility with existing JSON format
### Fixed
- Robust newline handling in task descriptions and subtask descriptions
- Fixed corrupted newline patterns like 'nn' and 'n-' that were appearing in saved data
- Implemented comprehensive string sanitization to normalize various newline formats
- Improved sanitization logic to be more precise and avoid false positives with legitimate text
- Fixed specific issue #4 where "instructions.mdnnFiles" and "analyze:n-" patterns were corrupted
- Ensured proper preservation of multiline content in both JSON and YAML formats
- Fixed issues where newlines were being incorrectly escaped or replaced during save operations
## [1.3.2] - 2025-08-19
### Changed
- Simplified approval workflow to use direct user confirmation instead of dedicated approval tools
- Updated tool descriptions to clarify the approval process
- Streamlined progress reporting by removing approval status columns
### Removed
- Removed unused approval tool schemas (`ApproveTaskCompletionSchema` and `ApproveRequestCompletionSchema`)
- Removed approval status tracking from progress tables and status reports
- Removed approval counts from request summaries
### Fixed
- Fixed workflow clarity by removing references to non-existent approval tools
- Improved user experience by eliminating confusion around approval tool calls
- Enhanced documentation consistency across all tool descriptions
## [1.2.1] - 2025-05-10
### Fixed
- Updated documentation to reflect current features and functionality
- Fixed minor issues in the README.md and OVERVIEW.md files
- Improved example system prompts for better clarity
## [1.2.0] - 2025-05-09
### Added
- Export functionality
- Added `outputPath` parameter to `plan_task` tool to save task plan as Markdown
- New `export_task_status` tool to export current task status in Markdown, JSON, or HTML format
- Detailed task plan export with checkboxes, dependencies, and notes
- Status report export with progress bars and detailed task information
- Dependencies management
- Added support for project and task-level dependencies
- Dependencies can include name, version, URL, and description
- New `add_dependency` tool to add dependencies to requests or tasks
- Dependencies are displayed in progress tables and exports
- Notes management
- Added support for project-level notes
- Notes can include title, content, and timestamps
- New tools for managing notes:
- `add_note`: Add a note to a request
- `update_note`: Update an existing note
- `delete_note`: Delete a note from a request
- Notes are displayed in progress tables and exports
## [1.1.0] - 2025-05-09
### Added
- Subtasks functionality
- Tasks can now have subtasks, which are smaller units of work
- All subtasks must be completed before a task can be marked as done
- New tools for managing subtasks:
- `add_subtasks`: Add subtasks to an existing task
- `mark_subtask_done`: Mark a subtask as completed
- `update_subtask`: Update a subtask's title or description
- `delete_subtask`: Delete a subtask from a task
- Updated progress table to display subtasks with their status
- Enhanced task details to include subtask information
## [1.0.0] - 2025-05-09
### Added
- Initial release of TaskFlow MCP
- Core TaskFlowServer class for managing tasks and requests
- MCP Server integration using @modelcontextprotocol/sdk
- Data persistence using JSON file storage
- Tool definitions for AI assistants to interact with the task manager
- Task planning functionality
- Task progress tracking with visual tables
- User approval workflow for tasks and requests
- Ability to add, update, and delete tasks
- Detailed reporting of task status and progress
- Configuration options for task file path
- MCP configuration for easy integration with AI assistants
### Changed
- N/A (Initial release)
### Deprecated
- N/A (Initial release)
### Removed
- N/A (Initial release)
### Fixed
- N/A (Initial release)
### Security
- N/A (Initial release)