Daily Log - 2026-05-19
Dynaform Submission Email Alert Stabilization
Achievements
- End-to-End Flow: Implemented and stabilized a new email alert flow (
field.emailAlert.dynaform.submitted) triggered only on final form submit. - Core Integrations: Added DTO mapping paths and expression variable availability in core service. Updated
api-dynaformsmigrations to register the alert, default templates, and TO expressions. - Runtime Fixes: Resolved bugs causing
templateNamenull pointer, core scheduler entity failure, and AES decryption crashes on plain-text submitter emails.
Decisions
- Trigger Phase: Restricted the alert trigger strictly to final submit status, avoiding noisy emails on draft or edit saves.
- Optional Auth: Used
@OptionalAuth()metadata on public endpoints to supply authentication context if headers are present without failing anonymous public flows.
Technical Details
- Modified:
FormTemplatesDataService.createOrUpdateto hook email request creation. - Fixed: Expanded
UserEmailResolverService.decryptEmailcatch block to handleIllegalArgumentExceptionfrom plain email inputs, correctly triggering the plain-email fallback.