@@ -132,12 +132,12 @@ async def rate_limiter_dependency(
132132 user_id = getattr (user, " id" , None ) or request.client.host or " anonymous"
133133
134134 # Determine user tier (default to "free" or anonymous)
135- if user and getattr (user, " tier_id" , None ):
135+ if user is True and getattr (user, " tier_id" , None ):
136136 tier = await crud_tiers.get(db = db, id = user.tier_id)
137137 else :
138138 tier = await crud_tiers.get(db = db, name = " free" )
139139
140- if not tier:
140+ if tier is None :
141141 raise RateLimitException(" Tier configuration not found" )
142142
143143 # Find specific rate limit rule for this path + tier
@@ -158,7 +158,7 @@ async def rate_limiter_dependency(
158158 period = period,
159159 )
160160
161- if is_limited:
161+ if is_limited is True :
162162 raise RateLimitException(
163163 f " Rate limit exceeded for path ' { path} '. Try again later. "
164164 )
@@ -411,7 +411,7 @@ async def cleanup_expired_rate_limits():
411411
412412``` python
413413# Rate limit by IP for unauthenticated users
414- if not user:
414+ if user is None :
415415 user_id = request.client.host if request.client else " unknown"
416416 limit, period = DEFAULT_LIMIT , DEFAULT_PERIOD
417417
@@ -422,7 +422,7 @@ if not user:
422422# Consider temporary bans for severe abuse
423423
424424# Log rate limit violations for security monitoring
425- if is_limited:
425+ if is_limited is True :
426426 logger.warning(
427427 f " Rate limit exceeded " ,
428428 extra = {
0 commit comments