Repository navigation
fix(inactivity): remove exempt members from the sweep protections - #512
Merged
Merged
Conversation
An exemption is about billing, not use. Most members who join with an invite are exempt, so the rule protected almost everyone from the sweep. Members who must stay can be excluded on their page.
|
Claude finished @mchestr's task in 17s —— View job Review of #512: remove exempt members from the sweep protectionsThe change does what the description says, and I found nothing that blocks a merge. I read the diff and grepped for leftover What I checked
Test coverage
Minor notes (non-blocking)
Safety I'd approve this once CI is green. |
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.
Summary
The inactivity sweep skipped every member with
isExemptset. An exemption is about billing, not use, and a member who joins with an invite is made exempt. So the rule protected most members, and the run found 0 members while the users page showed 4 members not seen in 180 days.This change removes the
exemptskip from the rules, the member query, the preview counts and the docs. Admins, the server owner, role holders, paying members, excluded members and members not found in Tautulli stay protected. To keep an exempt member, exclude the member on their page.The change does not touch the Stripe revoke guard (
evaluateRevokeGuard). That guard still protects exempt members.WARNING: If automatic removal is on, the first run after this release can remove inactive exempt members. Read the list under Admin > Inactive members before the release. The changelog fragment has an upgrade note.
Tests:
npx jest lib/inactivity lib/data/__tests__/inactivity app/admin/inactivity components/admin/inactivitypasses (18 suites, 242 tests).tscandeslint lib/inactivityreport no errors.Checklist
/dev/ui); visual diff attached (no visual change except one less preview count)npm run design:checkpasses; any new allowlist entry inscripts/design-system/allowlist.mjssays why (not run)data-testid(none).claude/skills/**or.mcp.json:/security-reviewrun (no)