Delete docs/project-limits.md

This commit is contained in:
Bobbie 2025-07-25 14:15:21 +05:30 committed by GitHub
parent 13764b0871
commit e994f62de2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 0 additions and 82 deletions

View File

@ -1,82 +0,0 @@
# Project Limits Feature
This document describes the project limits feature that restricts the number of projects users can create based on their subscription tier.
## Overview
The project limits feature ensures that users on free accounts have a reasonable limit on the number of projects they can create, while paid accounts have higher limits. This helps manage system resources and encourages users to upgrade for more projects.
## Subscription Tiers and Project Limits
| Subscription Tier | Project Limit | Description |
|-------------------|---------------|-------------|
| Free | 3 projects | Basic tier for new users |
| All Paid Tiers | 100,000 projects | Unlimited for practical purposes |
## Implementation Details
### Backend Changes
1. **Billing Service (`backend/services/billing.py`)**:
- Added `project_limit` field to `SUBSCRIPTION_TIERS` configuration
- Created `check_project_limits()` function to validate project creation
- Added `/billing/check-project-limits` API endpoint
- Updated subscription status to include project limit information
2. **Agent API (`backend/agent/api.py`)**:
- Added project limit check before creating projects in agent initiation
- Returns HTTP 402 error when limits are exceeded
3. **Execution Service (`backend/triggers/services/execution_service.py`)**:
- Added project limit checks in `create_agent_session()` and `create_workflow_session()`
- Prevents automatic project creation when limits are reached
### Frontend Changes
1. **API Layer (`frontend/src/lib/api.ts`)**:
- Added `checkProjectLimits()` function
- Added `ProjectLimitsResponse` interface
- Updated `SubscriptionStatus` interface to include project limits
2. **Project Mutations (`frontend/src/hooks/react-query/sidebar/use-project-mutations.ts`)**:
- Added project limit check before creating projects
- Shows error toast when limits are exceeded
3. **Billing Status Component (`frontend/src/components/billing/account-billing-status.tsx`)**:
- Added project count display in billing status
- Shows current projects vs. limit
4. **React Query Hook (`frontend/src/hooks/react-query/billing/use-project-limits.ts`)**:
- Created hook for checking project limits
- Caches results for 5 minutes
## Error Handling
When project limits are exceeded:
1. **Frontend**: Shows error toast with upgrade message
2. **Backend**: Returns HTTP 402 (Payment Required) with detailed error message
3. **API Response**: Includes current project count and limit information
## Testing
To test the feature:
1. Create projects up to your tier's limit
2. Attempt to create an additional project
3. Verify that appropriate error messages are shown
4. Check that billing status displays current project count
## Local Development
In local development mode (`ENV_MODE=LOCAL`), project limits are disabled to allow unrestricted development and testing.
## Future Enhancements
Potential improvements to consider:
1. **Soft Limits**: Allow exceeding limits with warnings
2. **Project Archiving**: Allow archiving old projects to free up slots
3. **Team Limits**: Separate limits for team accounts
4. **Usage Analytics**: Track project creation patterns
5. **Dynamic Limits**: Adjust limits based on usage patterns