19 lines
536 B
Python
19 lines
536 B
Python
"""Tone selector: pick gentle/firm/legal based on follow-up level + risk score."""
|
|
|
|
TONE_BY_LEVEL = {
|
|
1: 'gentle',
|
|
2: 'firm',
|
|
3: 'legal',
|
|
4: 'legal',
|
|
}
|
|
|
|
|
|
def select_tone(*, level_sequence: int, risk_score: int = 0) -> str:
|
|
"""Default tone follows level sequence; high risk can escalate."""
|
|
base_tone = TONE_BY_LEVEL.get(level_sequence, 'gentle')
|
|
if risk_score >= 80 and base_tone == 'gentle':
|
|
return 'firm'
|
|
if risk_score >= 90 and base_tone == 'firm':
|
|
return 'legal'
|
|
return base_tone
|