Major Domo v2 - Discord bot for Strat-o-Matic Baseball Association
Go to file
Cal Corum 0c001b6dab Fix @requires_team decorator API error handling
The @requires_team() decorator was incorrectly treating API errors as "no team"
because get_user_team() was catching all exceptions and returning None.

Changes:
1. get_user_team() now propagates exceptions instead of catching them
   - Allows callers to distinguish between "no team found" vs "API error"
   - Updated docstring to document the exception behavior

2. @requires_team() decorator now has try-except block
   - Returns specific error for "no team" (None result)
   - Returns helpful error for API/network issues (exception caught)
   - Logs exceptions for debugging

3. league_admin_only() decorator enhanced
   - Now supports both slash commands (Interaction) and prefix commands (Context)
   - Unified error handling for both command types

4. team_service.py and related updates
   - Team model field name corrected: team_abbrev -> abbrev

This fixes the regression where /cc-create was failing with "no team" error
when it should have been showing an API error message or working correctly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 09:31:14 -06:00
.gitlab CLAUDE: Add automated weekly transaction freeze/thaw system 2025-10-20 12:16:13 -05:00
.vscode VS Code Settings 2025-11-06 21:50:47 -06:00
api CLAUDE: Add automated weekly transaction freeze/thaw system 2025-10-20 12:16:13 -05:00
commands Fix @requires_team decorator API error handling 2025-11-14 09:31:14 -06:00
models CLAUDE: Fix draft list operations and improve add success display 2025-10-25 19:35:50 -05:00
scripts CLAUDE: Automate player roster updates in transaction freeze/thaw system 2025-10-27 14:25:00 -05:00
services Fix @requires_team decorator API error handling 2025-11-14 09:31:14 -06:00
tasks CLAUDE: Fix critical bug preventing Monday freeze/thaw from executing 2025-11-05 17:56:44 +00:00
tests CLAUDE: Refactor dice rolling into reusable utility module and add /d20 command 2025-10-29 01:15:11 -05:00
utils Fix @requires_team decorator API error handling 2025-11-14 09:31:14 -06:00
views CLAUDE: Fix injury roll validation to support playoff weeks 2025-10-29 00:56:39 -05:00
.dockerignore Add debug directory to .gitignore and .dockerignore 2025-10-24 00:06:34 -05:00
.gitignore Draft pick service and draft helpers 2025-10-24 10:24:14 -05:00
.gitlab-ci.yml CLAUDE: Add automated weekly transaction freeze/thaw system 2025-10-20 12:16:13 -05:00
.mcp.json CLAUDE: Add automated weekly transaction freeze/thaw system 2025-10-20 12:16:13 -05:00
bot.py CLAUDE: Integrate draft commands into bot.py 2025-10-24 22:17:09 -05:00
BUILD_AND_PUSH.md CLAUDE: Add comprehensive Docker deployment infrastructure 2025-10-16 00:54:56 -05:00
build-and-push.sh CLAUDE: Add comprehensive Docker deployment infrastructure 2025-10-16 00:54:56 -05:00
CLAUDE.md CLAUDE: Add comprehensive CLAUDE.md documentation files for AI agent guidance 2025-10-20 20:30:07 -05:00
COMMAND_LIST.md CLAUDE: Add comprehensive scorecard submission system 2025-10-16 00:21:32 -05:00
config.py CLAUDE: Add playoff configuration constants for injury roll validation 2025-10-29 01:20:13 -05:00
docker-compose.dev.yml CLAUDE: Add comprehensive Docker deployment infrastructure 2025-10-16 00:54:56 -05:00
docker-compose.yml Fix @requires_team decorator API error handling 2025-11-14 09:31:14 -06:00
DOCKER.md CLAUDE: Add comprehensive Docker deployment infrastructure 2025-10-16 00:54:56 -05:00
Dockerfile CLAUDE: Add comprehensive Docker deployment infrastructure 2025-10-16 00:54:56 -05:00
Dockerfile.versioned CLAUDE: Add automated weekly transaction freeze/thaw system 2025-10-20 12:16:13 -05:00
exceptions.py CLAUDE: Add comprehensive scorecard submission system 2025-10-16 00:21:32 -05:00
pyrightconfig.json CLAUDE: Convert constants to configurable environment variables 2025-10-16 10:40:22 -05:00
requirements.txt CLAUDE: Add comprehensive Docker deployment infrastructure 2025-10-16 00:54:56 -05:00
test_real_data.py CLAUDE: Refine injury roll display and cleanup imports 2025-10-16 22:20:13 -05:00