{"id":"notif-two-phase-rate-limit","text":"Rate limits are checked both at `send()` time (fast rejection before queuing) and again at `process_queue()` time (because budget may have been consumed between enqueue and delivery)","truth_value":"IN","source":"entries/2026/06/05/notification-system-notification_system.md","source_url":"","source_hash":"","justifications":[],"dependents":["notification-defensive-double-rate-check"],"metadata":{},"created_at":"","updated_at":"","reviewed_at":"","verified_at":"","retracted_at":"","explanation":{"steps":[{"node":"notif-two-phase-rate-limit","truth_value":"IN","reason":"premise"}]}}