Help create a well-formatted git commit message following Canvas LMS conventions
Help create a well-formatted git commit message following Canvas LMS conventions.
Title line (required):
Body (required for non-trivial changes):
Ticket reference (required):
refs TICKET-ID for general workFixes TICKET-ID for bug fixescloses TICKET-ID for completing featuresFeature flag (required):
flag=flag_name if a feature flag is involvedflag=none if no flag is neededTest plan (required):
⚠️ CRITICAL: NEVER AUTOMATICALLY COMMIT ⚠️
git commit or any commit commandsWhen the user invokes this command:
Gather information:
git diff --stagedgit statusgit diff without
--staged) — only staged content is being committedGenerate commit message:
Format:
Short title (max 50 chars)
Body paragraph explaining the change. Each line max
65 chars. Explain why this change was needed and what
it fixes or improves.
Additional context about the implementation if needed.
Break into multiple paragraphs for readability.
Changes:
- Bullet point summary of key changes (optional)
- Keep bullets concise but informative
- Focus on what, not how
refs TICKET-1234
flag=feature_flag_name
Test plan:
Setup:
- Setup step 1
- Setup step 2
Testing:
- Test step 1 with expected result
- Test step 2 with expected result
- Verify edge case X
- Verify edge case Y
Expected Results:
- Clear description of what should happen
Display message and get approval:
git commit -m "$(cat <<'EOF'
Title here
Body here
EOF
)"
--no-verify to skip hooksAdd validation for email input field
Email addresses were not being validated before submission,
allowing invalid formats to be saved to the database. This
caused downstream errors in notification systems.
Added client-side validation using regex pattern and
server-side validation in the controller. Invalid emails
now show an error message and prevent form submission.
Changes:
- Add email format validation to user form
- Add server-side validation in UsersController
- Display error message for invalid email format
- Add validation tests for edge cases
refs COURSE-1234
flag=none
Test plan:
Setup:
- Navigate to user profile edit page as any user role
Testing:
- Enter valid email ([email protected]) and verify it saves
- Enter invalid email (notanemail) and verify error appears
- Enter email without @ symbol and verify error appears
- Enter email without domain and verify error appears
- Try submitting form with invalid email via console
- Verify server rejects invalid email with proper error
- Test with very long email address (255+ chars)
- Verify email validation works for new user creation
Expected Results:
- Valid emails save successfully without errors
- Invalid emails show clear error message and block save
- Server validation prevents bypassing client validation
- Error messages are clear and actionable
/create_commit_msggit diff --staged)Important: Steps 1-6 MUST complete before any git commit command is executed. The user must explicitly approve.