File size: 2,298 Bytes
3ef7678
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
"""Task configs for V2. Root cause is explicitly defined."""

TASKS = {
    "easy": {
        "description": "DB down. Clear symptoms. No active misleading cascades.",
        "difficulty": "easy",
        "root_cause": "database",
        "optimal_steps": 2, # 1 inspect + 1 repair (takes 2 steps to heal) -> 3 steps total if repair counted as 1, let's say 3
        "max_steps": 10,
        "initial_state": {
            "database": {"status": "down"},
            "api":      {"status": "healthy"},
            "cache":    {"status": "healthy"},
            "queue":    {"status": "healthy"}
        }
    },
    "medium": {
        "description": "Cache down. Queue is overloaded (passive degradation). API is randomly degraded to mislead.",
        "difficulty": "medium",
        "root_cause": "cache",
        "optimal_steps": 4, # 1 inspect + 1 repair (cache) + wait 2 loops + 1 repair API (since it was pre-existing)
        "max_steps": 15,
        "initial_state": {
            "database": {"status": "healthy"},
            "api":      {"status": "degraded"}, # Misleading symptom, not caused by Cache
            "cache":    {"status": "down"},     # Root cause
            "queue":    {"status": "degraded"}  # Cascade from cache
        }
    },
    "hard": {
        "description": "DB down. Full cascading failure. High queue load, degraded API.",
        "difficulty": "hard",
        "root_cause": "database",
        "optimal_steps": 4, # inspect + repair DB + 2 wait steps
        "max_steps": 20,
        "initial_state": {
            "database": {"status": "down"},
            "api":      {"status": "down"},    # Cascade from DB
            "cache":    {"status": "healthy"},
            "queue":    {"status": "degraded"} # Cascade from DB
        }
    },
    "multi_root": {
        "description": "BOTH Database and Queue failed independently. High complexity.",
        "difficulty": "extreme",
        "root_cause": ["database", "queue"],
        "optimal_steps": 6,
        "max_steps": 25,
        "initial_state": {
            "database": {"status": "down"},
            "api":      {"status": "degraded"}, # Cascade from DB
            "cache":    {"status": "healthy"},
            "queue":    {"status": "down"}      # Independent failure
        }
    }
}