Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
@@ -525,13 +525,12 @@ def analyze_composite(msg1, date1, msg2, date2, msg3, date3, *answers_and_none):
|
|
525 |
escalation_score = None
|
526 |
risk_level = "unknown"
|
527 |
else:
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
"Moderate" if escalation_score >= 8 else
|
532 |
-
"Low"
|
533 |
-
)
|
534 |
|
|
|
|
|
535 |
messages = [msg1, msg2, msg3]
|
536 |
dates = [date1, date2, date3]
|
537 |
active = [(m, d) for m, d in zip(messages, dates) if m.strip()]
|
@@ -539,6 +538,19 @@ def analyze_composite(msg1, date1, msg2, date2, msg3, date3, *answers_and_none):
|
|
539 |
return "Please enter at least one message."
|
540 |
|
541 |
results = [(analyze_single_message(m, THRESHOLDS.copy()), d) for m, d in active]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
542 |
for result, date in results:
|
543 |
assert len(result) == 7, "Unexpected output from analyze_single_message"
|
544 |
abuse_scores = [r[0][0] for r in results]
|
|
|
525 |
escalation_score = None
|
526 |
risk_level = "unknown"
|
527 |
else:
|
528 |
+
escalation_score = sum(w for (_, w), a in zip(ESCALATION_QUESTIONS, answers_and_none[:-1]) if a)
|
529 |
+
escalation_bump = 0 # Will be computed later
|
530 |
+
hybrid_score = escalation_score # Start with raw
|
|
|
|
|
|
|
531 |
|
532 |
+
# We'll finalize `risk_level` after computing bump below
|
533 |
+
risk_level = "Low"
|
534 |
messages = [msg1, msg2, msg3]
|
535 |
dates = [date1, date2, date3]
|
536 |
active = [(m, d) for m, d in zip(messages, dates) if m.strip()]
|
|
|
538 |
return "Please enter at least one message."
|
539 |
|
540 |
results = [(analyze_single_message(m, THRESHOLDS.copy()), d) for m, d in active]
|
541 |
+
escalation_bump = 0
|
542 |
+
|
543 |
+
for result, _ in results:
|
544 |
+
abuse_score, threshold_labels, top_patterns, sentiment, stage, darvo_score, tone_tag = result
|
545 |
+
|
546 |
+
if darvo_score > 0.65:
|
547 |
+
escalation_bump += 3
|
548 |
+
if tone_tag in ["forced accountability flip", "emotional threat"]:
|
549 |
+
escalation_bump += 2
|
550 |
+
if abuse_score > 80:
|
551 |
+
escalation_bump += 2
|
552 |
+
if stage == 2:
|
553 |
+
escalation_bump += 3
|
554 |
for result, date in results:
|
555 |
assert len(result) == 7, "Unexpected output from analyze_single_message"
|
556 |
abuse_scores = [r[0][0] for r in results]
|