Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Co-authored-by: gkorland <753206+gkorland@users.noreply.github.com>
Co-authored-by: gkorland <753206+gkorland@users.noreply.github.com>
Co-authored-by: gkorland <753206+gkorland@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add rate limiting
Add rate limiting for user queries
Aug 22, 2025
Contributor
|
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Join our Discord community for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
Dependency ReviewThe following issues were found:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR implements daily rate limiting for user queries to help manage resource usage and ensure fair access across all users.
Changes Made
Core Implementation
api/rate_limiter.py: New utility class that handles rate limiting logic using FalkorDB for persistent storageapi/routes/graphs.py: Integrated rate limiting into the main query endpoint (POST /graphs/{graph_id}).env.example: AddedDAILY_QUERY_LIMITconfiguration optionConfiguration
Users can now configure the daily query limit via environment variable:
How It Works
Database Schema
Query counts are stored as
QueryCountnodes in FalkorDB:Error Response
When rate limit is exceeded, users receive:
{ "detail": "Daily query limit exceeded. You can make 100 queries per day.", "error_code": "RATE_LIMIT_EXCEEDED", "daily_limit": 100, "reset_time": "UTC midnight" }Testing
Documentation
Updated README.md with complete configuration guide and usage examples.
Fixes #12.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.