Implement escalation tie-breaker using severity ordering (#263)#273
Merged
Implement escalation tie-breaker using severity ordering (#263)#273
Conversation
- Add getMostSevereResolution helper to modResponse.ts - Update escalationResolver to use tiebreaker instead of defaulting to track - Add comprehensive unit tests for getMostSevereResolution - Add integration tests for tie scenarios in voting.test.ts Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Smoke Test Results
Tested commit: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #263
Summary
Successfully implemented escalation tie-breaker using severity ordering. When votes are tied in an escalation, the most severe resolution is now selected instead of defaulting to "track". This ensures that more serious moderation actions are prioritized in ambiguous situations.
Changes
getMostSevereResolutionhelper function toapp/helpers/modResponse.tsthat returns the most severe resolution from a set of options based on severity ordering (note > warn > timeout > ban > track)escalationResolver.tsto use the tie-breaker logic when votes are equal, instead of defaulting to "track"getMostSevereResolutioninapp/helpers/modResponse.test.ts(5 test cases)app/commands/escalate/voting.test.tsto verify correct behaviorAll 75 tests pass, TypeScript compilation succeeds, and ESLint passes.
This PR was created autonomously by the improve.sh pipeline. Human review is required before merging.