Internal
Public Access
Added validation for status, priority, and recurrence fields in web forms to prevent invalid database values. Changes: TaskUpdateView.post() (line 419): - Validate status against Task.STATUS_CHOICES before setting - Validate priority against Task.PRIORITY_CHOICES before setting - Validate recurrence against Task.RECURRENCE_CHOICES before setting - Only update fields if value is in allowed choices - Default to 'none' for invalid recurrence values TaskCreateView.post() (line 481): - Validate status, default to 'pending' if invalid - Validate priority, default to 'medium' if invalid - Validate recurrence, default to 'none' if invalid - Prevents creation with invalid choice values Allowed Choices: - Status: pending, in_progress, completed, cancelled - Priority: low, medium, high, urgent - Recurrence: none, daily, weekly, biweekly, monthly Security impact: - Prevents invalid database values from user input - Maintains data integrity - Blocks potential business logic bypasses - Prevents database constraint violations 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>