trpc-query-used-as-mutation-breaks-reminder-delivery
Using a tRPC query procedure to write side effects (e.g., a checkDueTomorrow query that inserts notification rows) violates the idempotency contract of queries and creates a silent operational failure: reminders only fire when a client manually calls the endpoint, not on a schedule. Any time-triggered notification must be driven by a server-side cron calling a mutation procedure — not a query. This pattern is easy to miss in code review because the naming looks read-like.
Related
- trpc-query-procedures-must-be-idempotent-reads-only
- trpc-query-must-not-write-side-effects
- trpc-query-writing-data-violates-idempotency-contract
- trpc-query-used-for-write-ops-breaks-reminder-delivery
- trpc-query-procedure-performing-writes-contract-violation
- trpc-query-that-writes-is-broken-notification-pattern
- chart-catalog-sso-validate-viz-config-pattern
- trpc-query-used-for-write-cron-notification-never-fires