Add server-aware moderation, automation, Apple, games, and music suites - #216
Add server-aware moderation, automation, Apple, games, and music suites#216sahmoee wants to merge 44 commits into
Conversation
|
Refreshed against the latest |
There was a problem hiding this comment.
i am not a maintainer of GIR, but here's my review of it
i am also curious on why lastfm support is being integrated directly into GIR, since there aren't really any upsides, because the lastfm bot provides a shit ton on functionality, like scoreboards and stuff, additionally, it requires everything to be re connected which can be annoying
also what's #215? is it a duplicate of this but in one commit? if you're making a pr for one thing then just keep it on one pr, when being merged it can get combined into one commit if chosen
|
Addressed all review comments in 1374634: restored /roblox, fixed staff-ban approver attribution, removed macOS-only paths, raised starboard defaults, narrowed scam signals, restored one-hour caches, removed redundant Apple/TSS and Last.fm account commands, and kept unexpected errors to one private log entry. PR #215 has been closed as superseded. The 9 focused tests, compilation checks, and diff validation pass. |
Problem and resulting behavior
GIRRewrite is closely coupled to one server's static channels, roles, workflows, and manual command-sync process. This PR adds a configurable community layer while preserving GIR's database, permission model, moderation commands, and Discord.py extension layout.
Current
maincompared with this PRmain!sync/music link,/music search, and optional channel link conversionReview changes
/robloxand its registry coverage.GIR_DATA_DIR, defaulting to~/.gir/dataon all platforms. Individual file overrides remain available.discord,apple,airdrop,password, andqr code; added false-positive tests for normal Apple-server discussion./tssand/applegroups. The existing AppleDB-backed/firmwareimplementation remains the source for firmware information.Major additions
Configuration
Existing required values remain unchanged:
GIR_TOKEN,MAIN_GUILD_ID,OWNER_ID, and MongoDB settings.Optional additions:
GIR_DATA_DIR: directory for runtime dashboard data; defaults to~/.gir/data.GIR_COMMUNITY_FILE: exact community settings file.GIR_FEATURE_FILE: exact enabled-extension file.GIR_SYNC_COMMANDS=False: disables automatic guild command sync.GIR_LEGACY_JAILBREAK_FEATURES=True: enables server-specific legacy monitors.Feature and community files fall back safely when absent. Server Members and Message Content privileged intents must be enabled, and GIR's role must sit above roles it moderates.
Validation
PYTHONPATH=. python3 -m unittest discover -s tests -v— 9 tests passed.cogs,community_rules.py,data,extensions.py,main.py, andutils.git diff --checkpassed.