Skip to content

ICSParser VALARM export uses reminder.minutes instead of minutesBefore #108

@thedhanawada

Description

@thedhanawada

Bug Description

ICSParser.eventToICS() at line 235 exports VALARM triggers using reminder.minutes, but the canonical property set by Event._normalizeReminder() is reminder.minutesBefore (Event.js lines 162, 704, 904).

Impact

  • All exported ICS VALARM triggers use the fallback value of 15 minutes regardless of actual reminder setting
  • Round-trip import/export of ICS files loses reminder timing data
  • Silent data corruption — no error is thrown

Code Location

// ICSParser.js:235 (current — broken)
lines.push(`TRIGGER:-PT${reminder.minutes || 15}M`);

The Event class normalizes reminders to use minutesBefore:

// Event.js:162
minutesBefore: typeof r === 'number' ? r : (r.minutesBefore || r.minutes || 15)

Fix

// ICSParser.js:235 (fixed)
lines.push(`TRIGGER:-PT${reminder.minutesBefore || 15}M`);

Files

  • core/ics/ICSParser.js:235 (bug)
  • core/events/Event.js:162, 704, 904 (canonical property)

Metadata

Metadata

Assignees

No one assigned

    Labels

    phase:0-foundationImmediate fixes and test infrastructurepriority:criticalMust fix before any releasetype:bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions