- Updated `TODO.md` to mark several tasks as complete, including anomaly detection and sprint detail integration.
- Enhanced `VelocityChart` to support click events for sprint details, improving user interaction.
- Added `FilterBar` and `AnomalyDetectionPanel` components to `JiraDashboardPageClient` for advanced filtering capabilities.
- Implemented state management for selected sprints and modal display for detailed sprint information.
- Introduced new types for advanced filtering in `types.ts`, expanding the filtering options available in the analytics.
- Introduced `projectKey` and `ignoredProjects` fields in Jira configuration to enhance analytics capabilities.
- Implemented project validation logic in `JiraConfigClient` and integrated it into the `JiraConfigForm` for user input.
- Updated `IntegrationsSettingsPageClient` to display analytics dashboard link based on the configured project key.
- Enhanced API routes to handle project key in Jira sync and user preferences.
- Marked related tasks as complete in `TODO.md`.
- Updated `JiraConfigForm` to include an input for ignored projects, allowing users to specify projects to exclude from synchronization.
- Enhanced `JiraService` with a method to filter out tasks from ignored projects, improving task management.
- Modified user preferences to store ignored projects, ensuring persistence across sessions.
- Updated API routes to handle ignored projects in configuration, enhancing overall functionality.
- Marked the corresponding task as complete in TODO.md.
- Added a fallback mechanism in getPriorityValue to default to 'medium' when an unknown priority is encountered, improving robustness.
- Updated priority mapping in JiraService to change 'Highest' to 'urgent', aligning with new priority definitions.
- Updated JiraService to use `nextPageToken` for pagination instead of `startAt`, aligning with the latest API documentation.
- Enhanced logging for better visibility during ticket retrieval, including page number and pagination status.
- Implemented safety checks to prevent infinite loops and added a limit for ticket retrieval.
- Removed unnecessary checks for local updates, ensuring Jira data is always updated.
- Preserved local task title and priority during updates to maintain user modifications.
- Updated logging to reflect changes in task update behavior.
- Added `JiraSyncAction` interface to track individual task actions (created, updated, skipped, deleted) during synchronization.
- Updated `JiraSyncResult` to include actions for better visibility of sync outcomes.
- Implemented a modal to display detailed sync results, improving user feedback on synchronization processes.
- Enhanced task deletion logic to provide reasons and changes for each action, ensuring clarity in task management.
- Added `tasksDeleted` to `JiraSyncResult` to track deleted tasks.
- Implemented `cleanupUnassignedTasks` method to remove Jira tasks no longer assigned to the user, improving data accuracy and synchronization.
- Updated logging for better visibility during task cleanup process.
- Changed comments to singular form for clarity regarding Jira tag assignment.
- Removed unused assignProjectTag method to streamline the JiraService.
- Enhanced status mapping with additional French translations for better localization.
- Updated pagination logging to include total issues retrieved.
- Increased safety limit for pagination from 5000 to 10000 tickets to prevent infinite loops.
- Removed deprecated cleanupEpics method to streamline synchronization process.
- Added check for actual changes before updating tasks to avoid unnecessary database operations.