( type: 'five_hour' | 'seven_day' | 'seven_day_opus' | 'seven_day_sonnet', hoursFromNow: number, )
| 248 | |
| 249 | // Add function to add exceeded limit with custom reset time |
| 250 | export function addExceededLimit( |
| 251 | type: 'five_hour' | 'seven_day' | 'seven_day_opus' | 'seven_day_sonnet', |
| 252 | hoursFromNow: number, |
| 253 | ): void { |
| 254 | if ((process.env.NCODE_BUILD_MODE !== 'noumena' && process.env.USER_TYPE !== 'ant')) { |
| 255 | return |
| 256 | } |
| 257 | |
| 258 | mockEnabled = true |
| 259 | const resetsAt = Math.floor(Date.now() / 1000) + hoursFromNow * 3600 |
| 260 | |
| 261 | // Remove existing limit of same type |
| 262 | exceededLimits = exceededLimits.filter(l => l.type !== type) |
| 263 | exceededLimits.push({ type, resetsAt }) |
| 264 | |
| 265 | // Update status to rejected if we have exceeded limits |
| 266 | if (exceededLimits.length > 0) { |
| 267 | mockHeaders['anthropic-ratelimit-unified-status'] = 'rejected' |
| 268 | } |
| 269 | |
| 270 | updateRepresentativeClaim() |
| 271 | } |
| 272 | |
| 273 | // Set mock early warning utilization for time-relative thresholds |
| 274 | // claimAbbrev: '5h' or '7d' |
no test coverage detected