File size: 988 Bytes
877add7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
from app.env.reward_router import compute_primary_reward_channels


def test_primary_reward_channel_mapping_in_range() -> None:
    channels = compute_primary_reward_channels(
        {
            "format_compliance_score": 0.9,
            "candidate_alignment_score": 0.95,
            "legality_score": 0.9,
            "safety_delta_score": 0.7,
            "burden_improvement_score": 0.6,
            "disease_stability_score": 0.8,
            "dosing_quality_score": 0.75,
            "abstention_quality_score": 0.5,
            "efficiency_score": 0.65,
            "process_fidelity_score": 0.88,
            "explanation_grounding_score": 0.7,
            "anti_cheat_score": 0.99,
            "uncertainty_calibration_score": 0.7,
        }
    )
    assert set(channels.keys()) == {
        "safety_legality",
        "clinical_improvement",
        "dosing_quality",
        "process_integrity",
    }
    assert all(0.001 <= float(v) <= 0.999 for v in channels.values())