feat(ai): finalize AI magic edits epic rollout and operations
This commit is contained in:
@@ -176,10 +176,12 @@ class AppServiceProvider extends ServiceProvider
|
||||
$deviceId = trim((string) $request->header('X-Device-Id', ''));
|
||||
$scope = $deviceId !== '' ? 'device:'.$deviceId : 'ip:'.($request->ip() ?? 'unknown');
|
||||
$key = 'ai-edit-guest-submit:'.$token.':'.$scope;
|
||||
$eventKey = 'ai-edit-guest-submit:event:'.$token;
|
||||
|
||||
return [
|
||||
Limit::perMinute(max(1, (int) config('ai-editing.abuse.guest_submit_per_minute', 8)))->by($key),
|
||||
Limit::perHour(max(1, (int) config('ai-editing.abuse.guest_submit_per_hour', 40)))->by($key),
|
||||
Limit::perMinute(max(1, (int) config('ai-editing.abuse.guest_submit_per_event_per_minute', 40)))->by($eventKey),
|
||||
];
|
||||
});
|
||||
|
||||
@@ -195,11 +197,14 @@ class AppServiceProvider extends ServiceProvider
|
||||
RateLimiter::for('ai-edit-tenant-submit', function (Request $request) {
|
||||
$tenantId = (string) ($request->attributes->get('tenant_id') ?? 'tenant');
|
||||
$userId = (string) ($request->user()?->id ?? 'guest');
|
||||
$eventSlug = (string) ($request->route('eventSlug') ?? 'event');
|
||||
$key = 'ai-edit-tenant-submit:'.$tenantId.':'.$userId;
|
||||
$eventKey = 'ai-edit-tenant-submit:event:'.$tenantId.':'.$eventSlug;
|
||||
|
||||
return [
|
||||
Limit::perMinute(max(1, (int) config('ai-editing.abuse.tenant_submit_per_minute', 30)))->by($key),
|
||||
Limit::perHour(max(1, (int) config('ai-editing.abuse.tenant_submit_per_hour', 240)))->by($key),
|
||||
Limit::perMinute(max(1, (int) config('ai-editing.abuse.tenant_submit_per_event_per_minute', 120)))->by($eventKey),
|
||||
];
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user