diff --git a/app/src/pages/Conversations.tsx b/app/src/pages/Conversations.tsx index 219f8faba38..982babc2cc1 100644 --- a/app/src/pages/Conversations.tsx +++ b/app/src/pages/Conversations.tsx @@ -1151,7 +1151,8 @@ const Conversations = () => {
{teamUsage && (teamUsage.remainingUsd <= 0 || - (teamUsage.fiveHourCapUsd > 0 && + (!teamUsage.bypassRateLimit && + teamUsage.fiveHourCapUsd > 0 && teamUsage.fiveHourSpendUsd >= teamUsage.fiveHourCapUsd)) && (
@@ -1188,14 +1189,16 @@ const Conversations = () => {
{teamUsage ? (
- 0 - ? Math.min(1, teamUsage.fiveHourSpendUsd / teamUsage.fiveHourCapUsd) - : 0 - } - /> + {!teamUsage.bypassRateLimit && ( + 0 + ? Math.min(1, teamUsage.fiveHourSpendUsd / teamUsage.fiveHourCapUsd) + : 0 + } + /> + )} { {teamUsage && (
-
- 10-hour limit - - ${teamUsage.fiveHourSpendUsd.toFixed(2)} / $ - {teamUsage.fiveHourCapUsd.toFixed(2)} - {teamUsage.fiveHourResetsAt && ( - - — resets {formatResetTime(teamUsage.fiveHourResetsAt)} - - )} - -
+ {!teamUsage.bypassRateLimit && ( +
+ 5-hour limit + + ${teamUsage.fiveHourSpendUsd.toFixed(2)} / $ + {teamUsage.fiveHourCapUsd.toFixed(2)} + {teamUsage.fiveHourResetsAt && ( + + — resets {formatResetTime(teamUsage.fiveHourResetsAt)} + + )} + +
+ )}
Weekly limit diff --git a/app/src/services/api/creditsApi.ts b/app/src/services/api/creditsApi.ts index 898f13ce6e9..bdf8140e1d0 100644 --- a/app/src/services/api/creditsApi.ts +++ b/app/src/services/api/creditsApi.ts @@ -28,6 +28,8 @@ export interface TeamUsage { cycleStartDate: string; /** ISO timestamp when the current weekly cycle ends */ cycleEndsAt: string; + /** When true, the 10-hour rolling window rate limit is not enforced for this user (test/internal accounts) */ + bypassRateLimit?: boolean; } export interface TopUpResult {