# Semi-Automatic Reddit Moderation System

## Core Components

### 1. Backend API Endpoints

#### Subreddit Management
- `GET /api/subreddits/moderated` - Get user's moderated subreddits
- `GET /api/subreddits/{name}/rules` - Fetch subreddit rules
- `GET /api/subreddits/{name}/modqueue` - Get moderation queue items
- `POST /api/moderation/analyze` - Analyze queue item with AI
- `POST /api/moderation/action` - Take moderation action

#### AI Analysis
- `POST /api/ai/analyze-rules` - Parse and understand subreddit rules
- `POST /api/ai/suggest-action` - Get AI moderation suggestions

### 2. Frontend Components

#### Main Moderation Dashboard
- Subreddit selector dropdown
- Rules summary panel
- Moderation queue list
- Item detail view with AI suggestions

#### Individual Queue Item Component
- Full content display (title, body, comments, media)
- Rule violation analysis
- Suggested actions with confidence scores
- Manual action buttons

## Technical Implementation

### Reddit API Integration

#### Required Endpoints
1. **Get Moderated Subreddits**: `/r/{subreddit}/about/moderators`
2. **Get Subreddit Rules**: `/r/{subreddit}/about/rules`
3. **Get Mod Queue**: `/r/{subreddit}/about/modqueue`
4. **Moderation Actions**: `/api/approve`, `/api/remove`, `/api/spam`

#### Authentication Requirements
- OAuth 2.0 with `modposts`, `modflair`, `modcontributors` scopes
- Moderator-level permissions verification

### AI Integration with Claude Sonnet 4

#### Rules Analysis Prompt Template
```
Analyze the following subreddit rules and create a structured understanding:

SUBREDDIT: r/{subreddit_name}
RULES:
{rules_text}

Please provide:
1. Categorized rule violations (content, behavior, formatting)
2. Severity levels (minor, moderate, severe)
3. Detection patterns and keywords
4. Suggested moderation actions for each rule type
```

#### Content Analysis Prompt Template
```
As a Reddit moderator assistant, analyze this post/comment for rule violations:

SUBREDDIT RULES:
{parsed_rules}

CONTENT TO ANALYZE:
Type: {post/comment}
Title: {title}
Body: {body}
Author: {author}
Subreddit: r/{subreddit}

Provide:
1. Rule violations found (if any)
2. Confidence score (1-10)
3. Suggested action (approve/remove/spam/manual_review)
4. Reasoning for suggestion
5. Recommended moderator message (if removal)
```

### Database Schema

#### Tables Needed
```sql
-- Moderated subreddits cache
CREATE TABLE user_moderated_subreddits (
  id SERIAL PRIMARY KEY,
  user_id VARCHAR(50),
  subreddit_name VARCHAR(100),
  permissions TEXT[],
  last_updated TIMESTAMP
);

-- Subreddit rules cache
CREATE TABLE subreddit_rules (
  id SERIAL PRIMARY KEY,
  subreddit_name VARCHAR(100),
  rules_json JSON,
  ai_analysis JSON,
  last_updated TIMESTAMP
);

-- Moderation queue cache
CREATE TABLE modqueue_items (
  id SERIAL PRIMARY KEY,
  subreddit_name VARCHAR(100),
  reddit_id VARCHAR(50),
  item_type VARCHAR(20), -- post, comment
  content JSON,
  ai_analysis JSON,
  status VARCHAR(20), -- pending, approved, removed
  created_at TIMESTAMP
);

-- AI analysis logs
CREATE TABLE ai_analysis_logs (
  id SERIAL PRIMARY KEY,
  reddit_id VARCHAR(50),
  analysis_type VARCHAR(50),
  prompt_used TEXT,
  ai_response JSON,
  confidence_score DECIMAL(3,2),
  created_at TIMESTAMP
);
```

## Implementation Steps

### Phase 1: Basic Infrastructure
1. Set up Reddit OAuth with moderation scopes
2. Create backend endpoints for fetching moderated subreddits
3. Implement subreddit rules fetching and caching
4. Basic frontend layout with subreddit selector

### Phase 2: Moderation Queue
1. Implement modqueue fetching with pagination
2. Create queue item display components
3. Add content parsing (handle different post types)
4. Implement basic filtering and sorting

### Phase 3: AI Integration
1. Set up Claude Sonnet 4 API integration
2. Implement rules analysis system
3. Create content analysis pipeline
4. Add confidence scoring and suggestion display

### Phase 4: Actions & Workflow
1. Implement moderation actions (approve/remove/spam)
2. Add batch operations
3. Create moderation history tracking
4. Add performance analytics

### Phase 5: Advanced Features
1. Custom rule templates
2. Learning from moderator actions
3. Automated actions for high-confidence cases
4. Integration with existing mod tools

## Security Considerations

### Reddit API Security
- Secure token storage and refresh
- Rate limiting compliance
- Audit trail for all actions
- Permission verification per action

### AI Security
- Input sanitization for Claude prompts
- Response validation and filtering
- Cost monitoring and limits
- Fallback for AI service outages

### Data Privacy
- Minimal data retention
- Encrypted storage for sensitive content
- User consent for AI analysis
- GDPR compliance for EU users

## Performance Optimization

### Caching Strategy
- Subreddit rules: 24-hour cache
- Modqueue items: 5-minute cache
- AI analyses: Permanent cache with versioning
- User permissions: 1-hour cache

### Background Processing
- Async AI analysis queue
- Batch processing for multiple items
- Webhook notifications for urgent items
- Scheduled rule updates

## Monitoring & Analytics

### Key Metrics
- AI suggestion accuracy
- Time saved per moderation action
- Rule violation detection rates
- False positive/negative rates

### Dashboards
- Real-time modqueue status
- AI performance metrics
- Moderator productivity stats
- Cost tracking for AI usage