Bypass transcription throttles for paid chats #191

Merged
backmeupplz merged 1 commit from codex/voi-66-paid-chat-throttle-bypass into main 2026-05-15 21:44:22 +00:00
backmeupplz commented 2026-05-15 21:41:20 +00:00 (Migrated from github.com)

Summary

  • Skip Voicy transcription abuse-limit counters when the chat is marked paid/donated.
  • Preserve existing active/chat/user throttles for unpaid chats.
  • Add proof coverage for direct paid-chat bypass and handler-level paid-vs-unpaid behavior.

Behavior

Paid chats bypass the abuse-limit path entirely, including the active chat job cap, chat window limit, and user window limit, so they do not receive error_transcription_user_limited, error_transcription_chat_limited, or error_transcription_queue_full from this check. Donation wall and Golden Borodutch access checks still run after the bypass decision.

Testing

  • yarn build-ts
  • yarn test:transcription-abuse-limits
  • yarn test:donation-wall
  • yarn lint

Manual QA: use Telegram with a paid/donated chat and send enough voice/audio messages to exceed the old per-user window; expect jobs to enqueue with no “You are starting transcriptions too quickly” reply. Confirm an unpaid/free path still blocks when the abuse limit is exceeded.

## Summary - Skip Voicy transcription abuse-limit counters when the chat is marked paid/donated. - Preserve existing active/chat/user throttles for unpaid chats. - Add proof coverage for direct paid-chat bypass and handler-level paid-vs-unpaid behavior. ## Behavior Paid chats bypass the abuse-limit path entirely, including the active chat job cap, chat window limit, and user window limit, so they do not receive `error_transcription_user_limited`, `error_transcription_chat_limited`, or `error_transcription_queue_full` from this check. Donation wall and Golden Borodutch access checks still run after the bypass decision. ## Testing - `yarn build-ts` - `yarn test:transcription-abuse-limits` - `yarn test:donation-wall` - `yarn lint` Manual QA: use Telegram with a paid/donated chat and send enough voice/audio messages to exceed the old per-user window; expect jobs to enqueue with no “You are starting transcriptions too quickly” reply. Confirm an unpaid/free path still blocks when the abuse limit is exceeded.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
backmeupplz/voicy!191
No description provided.