# TaskNotes 3.18.0

## New Features

### Task Reminders System

A complete reminder system has been added to TaskNotes, providing iCalendar VALARM-compliant reminder functionality.

**Core Features:**

- Support for both relative reminders (e.g., "15 minutes before due date") and absolute reminders (specific date/time)
- Visual reminder indicators on task cards with clickable bell icons
- Integration with task creation and editing workflows

**User Interface:**

- **Reminder Modal**: Modal for managing task reminders with form validation and real-time preview
- **Reminder Context Menu**: Quick access to common reminder options (5min, 15min, 1hr, 1day before due/scheduled dates)
- Reminder management accessible from task creation modal, edit modal, and task cards

**Default Reminders:**

- Configure default reminders that automatically apply to new tasks
- Support for multiple default reminders per task type
- Applies to both manual task creation and instant conversion workflows

### Property-Based Task Identification

Tasks can now be identified using frontmatter properties instead of requiring tags.

- Configure property name and value for task identification (e.g., `categories: [[Tasks]]`)
- Full backward compatibility with existing tag-based workflows
- Addresses modern Obsidian property-based vault organization patterns

*Thanks to @mdbraber for the feature request (#340)*

### Enhanced Saved Views
- Clicking an active saved view now clears all filters, providing quick access to unfiltered task list
- Preserves sort and group settings while resetting filters

*Thanks to @oldjove for the suggestion (#351)*

### Parent Note as Project Option
- New setting to automatically use parent note as project during instant task conversion
- Useful for users who organize tasks within project-specific notes
- Merges with existing default projects to avoid duplicates

*Thanks to @FindingJohnny for the feature request (#348)*

## Bug Fixes

### ICS Calendar Integration

- **Fixed recurring event exceptions**: Properly handle EXDATE properties and RECURRENCE-ID for modified instances
- **Eliminated duplicate events**: Resolved issue where deleted or rescheduled recurring events from external calendars still appeared

*Thanks to @robmikulec for reporting the recurring events issue (#342)*

### Settings Persistence

- **Fixed settings reset during updates**: Prevent user configuration loss when plugin updates introduce new default settings
- Apply deep merge strategy to preserve customizations in nested configuration objects

## Improvements

### User Interface

- Reminder modal uses consistent design patterns with task creation/edit modals
- Fixed task card icon overlap issues with proper spacing for multiple indicators

### Code Quality

- Added unit test coverage for new reminder functionality
- Improved type safety with proper TypeScript interfaces for reminder data structures
- Improved error handling and user feedback across reminder operations

## Technical Details

### Data Model Changes

- Added optional `reminders` array field to TaskInfo interface
- Extended field mapping support for custom reminder property names
- Enhanced cache system to include reminder data in task extraction

