Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions apps/.claude/skills/pr/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,26 @@ gh pr create --title "Your PR Title" --body "$(cat /path/to/description.md)"

The template will be automatically loaded when using `gh pr create`.

### PR Title Format

**CRITICAL**: The PR title MUST include the affected app(s) in square brackets AFTER the ticket ID.

Format: `[TICKET-ID][AppName] Description`

Examples:
- `[MBL-19497][Student] Fix bookmark URL placeholders from notifications`
- `[MBL-12345][Teacher] Add assignment grading improvements`
- `[MBL-67890][Student][Teacher] Fix discussion loading for both apps`
- `[MBL-11111][All] Update login flow across all apps`

**Rules:**
- The ticket ID comes FIRST, then the app name(s)
- Always include the app name(s) based on the `affects:` field in the PR body
- If `affects: Student`, use `[Student]`
- If `affects: Student, Teacher`, use `[Student][Teacher]`
- If `affects: Student, Teacher, Parent`, use `[All]`
- The app tags come AFTER the ticket ID and BEFORE the description

## Template Requirements

The PR template includes the following sections that must be completed:
Expand Down Expand Up @@ -101,6 +121,8 @@ Complete the following items before marking PR as ready:

### Example PR for Student App Only

**Title:** `[MBL-19453][Student] Add dashboard widget customization`

```markdown
Test plan:
1. Navigate to Dashboard
Expand All @@ -114,6 +136,8 @@ release note: Students can now customize their dashboard with widgets

### Example PR for Multiple Apps

**Title:** `[MBL-12345][Student][Teacher] Improve discussion loading performance`

```markdown
Test plan:
1. Open any course
Expand All @@ -123,4 +147,19 @@ Test plan:
refs: MBL-12345
affects: Student, Teacher
release note: Improved discussion loading performance
```

### Example PR for All Apps

**Title:** `[MBL-67890][All] Update login flow`

```markdown
Test plan:
1. Launch any app
2. Log in with credentials
3. Verify successful authentication

refs: MBL-67890
affects: Student, Teacher, Parent
release note: Updated login experience for improved security
```
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,10 @@ class BookmarkCreationDialog : BaseCanvasAppCompatDialogFragment() {
bookmark.getQueryParamForBookmark)
}

// Strip any remaining placeholder segments (e.g., /:sliding_tab_type/:submission_id)
// that weren't replaced during URL generation
bookmarkUrl = bookmarkUrl?.replace(Regex("/:[^/?#]+"), "")

Analytics.trackBookmarkSelected(context, peakingFragment::class.java.simpleName + " " + topFragment::class.java.simpleName)

if(bookmarkUrl != null) {
Expand All @@ -178,6 +182,10 @@ class BookmarkCreationDialog : BaseCanvasAppCompatDialogFragment() {
bookmarkUrl = RouteMatcher.generateUrl(bookmark.canvasContext!!.type, topFragment::class.java, topFragment.bookmark.getParamForBookmark)
}

// Strip any remaining placeholder segments (e.g., /:sliding_tab_type/:submission_id)
// that weren't replaced during URL generation
bookmarkUrl = bookmarkUrl?.replace(Regex("/:[^/?#]+"), "")

Analytics.trackBookmarkSelected(context, topFragment::class.java.simpleName)

if(bookmarkUrl != null) {
Expand Down
Loading