| name | referral-abuse-detection-v1 |
| description | Detects referral abuse violations by investigating accounts, analyzing traffic patterns, and scoring violation indicators to determine enforcement action. |
| required_tools | ["investigate_account","analyze_traffic_patterns","determine_enforcement_action"] |
| output_fields | ["enforcement_action"] |
Step 1: Investigate Account
Call investigate_account with account_id. Record all returned fields: address_validity, email_pattern_suspicious, website_verified, business_description, account_status, connected_accounts, and login_geographic_consistency.
Step 2: Analyze Traffic Patterns
Call analyze_traffic_patterns with account_id. Record all returned fields: revenue_amount, click_through_rate, page_views, device_distribution, referral_source_quality, payment_method_shared, and order_patterns_suspicious.
Step 3: Get Enforcement Guidelines
Call determine_enforcement_action with account_id to retrieve enforcement action guidelines.
Step 4: Calculate Violation Scores and Determine Enforcement Action
Using the data from Steps 1 and 2, calculate four violation scores by counting how many indicators are TRUE for each category:
Abusive Account Creation Score (threshold >= 3):
- address_validity is false (+1)
- email_pattern_suspicious is true (+1)
- website_verified is false (+1)
- connected_accounts >= 15 (+1)
- login_geographic_consistency is false (+1)
Misleading Ad Copy Score (threshold >= 3):
- website_verified is false (+1)
- referral_source_quality is "Low" or "Medium" (+1)
- order_patterns_suspicious is true (+1)
- click_through_rate > 0.4 (+1)
Personal Orders Score (threshold >= 3):
- payment_method_shared is true (+1)
- connected_accounts > 0 AND connected_accounts < 15 (+1)
- order_patterns_suspicious is true (+1)
- referral_source_quality is "High" (+1)
No Violation Score (threshold >= 4):
- address_validity is true (+1)
- email_pattern_suspicious is false (+1)
- website_verified is true (+1)
- login_geographic_consistency is true (+1)
- payment_method_shared is false (+1)
- order_patterns_suspicious is false (+1)
Determine the violation type based on the HIGHEST score that meets its threshold. If multiple scores meet their thresholds, choose the highest score. If tied, use priority: Abusive Account Creation > Misleading Ad Copy > Personal Orders. If no score meets any threshold, the result is INCONCLUSIVE.
Apply the enforcement action:
- Abusive Account Creation → "Account Closure"
- Misleading Ad Copy → "Account Closure"
- Personal Orders (Related) → "No Action"
- No Violation → "No Action"
- INCONCLUSIVE → "Inconclusive"