trpc-query-that-writes-silent-reminder-anti-pattern

TaskFlow’s reminders.checkDueTomorrow was implemented as a tRPC query (GET) that writes notification rows as a side effect. Queries must be idempotent reads — writes belong in mutations. Additionally, using a query for reminder delivery means reminders only fire when a client manually hits the endpoint, not on a schedule. Cron-triggered mutations or background jobs are required for reliable time-based notifications.