v25.0
Notifuse/notifusev25.0Jan 10, 2026by pierre-b
AI Summary
v25.0 is a bug fix release that resolves an issue where automations with `contact.created` trigger were failing to enroll contacts when a `list_id` was configured. The root cause was incorrect logic that checked if contacts were subscribed to a list before enrollment, which would always fail for new contacts. The fix removes the `p_list_id` parameter from the `automation_enroll_contact` function and includes an automatic migration.
Key Highlights
- Fixed bug where `contact.created` automation triggers failed when `list_id` was configured on the automation
- Root cause: incorrectly checked if contact was subscribed to `list_id` before enrollment, which always fails for new contacts
- Removed `p_list_id` parameter from `automation_enroll_contact` function (now 4 params instead of 5)
- Migration v25 automatically regenerates all active automation trigger functions on startup
- No manual upgrade action required - migration runs automatically
Breaking Changes
- The `automation_enroll_contact` function signature changed from 5 parameters to 4 parameters (removed `p_list_id` parameter). However, this is handled automatically by the migration system.
Full Release Notes
# v25.0 Release Notes ## Bug Fix: Contact.Created Automation Trigger Not Working Fixed a bug where automations with `contact.created` trigger would fail to enroll contacts when a `list_id` was configured on the automation. GitHub Issue: #191 ### Root Cause The `automation_enroll_contact` function incorrectly checked if the contact was subscribed to `automation.list_id` before enrolling. However, `list_id` is only meant for generating unsubscribe URLs in email templates, not for filtering enrollment. A newly created contact can never be subscribed to a list yet, so `contact.created` triggers with `list_id` set would silently fail. ### Fix - Removed the `p_list_id` parameter from `automation_enroll_contact` function (now 4 params instead of 5) - Migration v25 regenerates all active automation trigger functions to use the new signature ### Upgrade No manual action required. The migration runs automatically on startup and regenerates triggers for all live automations.