diff options
| author | Fuwn <[email protected]> | 2025-09-17 20:10:19 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-09-17 20:10:19 -0700 |
| commit | 7a8ced6dcac74fcd598be3872f98e9f99a877e47 (patch) | |
| tree | 9f0bb6aeb3e26a9b13ec7775a4a36cac1776b417 | |
| parent | feat(intelligent_moderator): Reasoning levels (diff) | |
| download | umabot-7a8ced6dcac74fcd598be3872f98e9f99a877e47.tar.xz umabot-7a8ced6dcac74fcd598be3872f98e9f99a877e47.zip | |
feat(intelligent_moderator): Don't include reasoning in art re-flairs
| -rw-r--r-- | src/umabot/rules/intelligent_roleplay_moderator.py | 10 | ||||
| -rwxr-xr-x | test_moderator.py | 13 |
2 files changed, 16 insertions, 7 deletions
diff --git a/src/umabot/rules/intelligent_roleplay_moderator.py b/src/umabot/rules/intelligent_roleplay_moderator.py index ab6f61e..81fda8e 100644 --- a/src/umabot/rules/intelligent_roleplay_moderator.py +++ b/src/umabot/rules/intelligent_roleplay_moderator.py @@ -107,8 +107,8 @@ class IntelligentRoleplayModerator(Rule, IntelligentModeratorBase): username = submission.author.name subject = "Your post flair has been changed to Art" - # Format reasoning based on configuration - formatted_reasoning = self._format_reasoning(evaluation) + # Format reasoning based on configuration (never include for art flair changes) + formatted_reasoning = self._format_reasoning(evaluation, is_art_flair_change=True) message = f"""Hello u/{username}, @@ -169,8 +169,12 @@ Thank you for understanding!""" except Exception as e: self.logger.error(f"Error sending low effort notification for {submission.id}: {e}") - def _format_reasoning(self, evaluation: dict) -> str: + def _format_reasoning(self, evaluation: dict, is_art_flair_change: bool = False) -> str: """Format reasoning based on the configured reasoning level.""" + # Never include reasoning for art flair changes + if is_art_flair_change: + return "" + reasoning_level = self.config.reasoning_level original_reasoning = evaluation.get('reasoning', '') diff --git a/test_moderator.py b/test_moderator.py index 70b57f2..6764a9e 100755 --- a/test_moderator.py +++ b/test_moderator.py @@ -250,8 +250,12 @@ class TestIntelligentModerator(IntelligentModeratorBase): return results - def _format_reasoning(self, evaluation: dict) -> str: + def _format_reasoning(self, evaluation: dict, is_art_flair_change: bool = False) -> str: """Format reasoning based on the configured reasoning level.""" + # Never include reasoning for art flair changes + if is_art_flair_change: + return "" + original_reasoning = evaluation.get('reasoning', '') if self.reasoning_level == 0: @@ -384,13 +388,14 @@ def print_results(results: List[Dict[str, Any]], pause: bool = False, moderator: print(f" Subject: Your post flair has been changed to Art") print(f" Message: Your roleplay post has been automatically re-flaired as 'Art' because it appears to be primarily showcasing artwork or visual content rather than roleplay.") - # Format reasoning based on moderator's reasoning level + # Format reasoning based on moderator's reasoning level (never include for art flair changes) if moderator: - formatted_reasoning = moderator._format_reasoning(evaluation) + formatted_reasoning = moderator._format_reasoning(evaluation, is_art_flair_change=True) if formatted_reasoning: print(f" Reasoning: {formatted_reasoning}") else: - print(f" Reasoning: {evaluation['reasoning']}") + # For art flair changes, never show reasoning even without moderator + pass if "REMOVE_POST" in actions: print(f"\n📧 Mod Mail (Low Effort Removal):") |