name: graphstrike version: "1.0.0" description: > RL environment for detecting coordinated fake account rings in social networks. An AI detective agent must identify all 10 members of a coordinated fake account gang before they evade detection. Three difficulty levels with increasing network size, decoys, and real-time evasion events. author: OpenENV Hackathon tags: - social-network - fraud-detection - graph - rl - fake-account-detection # ── Server configuration ────────────────────────────────────────────────────── server: dockerfile: Dockerfile port: 7860 environment_variables: PORT: "7860" HOST: "0.0.0.0" WORKERS: "1" # ── Task definitions (each has a grader) ───────────────────────────────────── tasks: - name: easy description: "50 accounts, 10 fakes, no evasion, 30 steps" max_steps: 30 grader: endpoint: /grader score_range: [0.0, 1.0] win_threshold: 0.815 win_conditions: recall: 0.8 precision: 0.7 formula: > if recall >= 0.8 and precision >= 0.7: score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency else: score = 0.30*recall + 0.10*precision - name: medium description: "200 accounts, 10 fakes + 20 decoys, 1 evasion event, 50 steps" max_steps: 50 grader: endpoint: /grader score_range: [0.0, 1.0] win_threshold: 0.815 win_conditions: recall: 0.8 precision: 0.7 formula: > if recall >= 0.8 and precision >= 0.7: score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency else: score = 0.30*recall + 0.10*precision - name: hard description: "1000 accounts, 10 fakes + 50 decoys, 4 evasion events, 80 steps" max_steps: 80 grader: endpoint: /grader score_range: [0.0, 1.0] win_threshold: 0.868 win_conditions: recall: 0.9 precision: 0.8 formula: > if recall >= 0.9 and precision >= 0.8: score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency else: score = 0.30*recall + 0.10*precision # ── Action schema ───────────────────────────────────────────────────────────── action_schema: action_type: type: string enum: [inspect, investigate_network, flag, unflag, submit] account_id: type: string description: "Required for all actions except submit" # ── Score range ─────────────────────────────────────────────────────────────── score_range: [0.0, 1.0] grader_formula: > if recall >= win_recall and precision >= win_precision: score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency else: score = 0.30*recall + 0.10*precision