Skip to content

Commit 1fff107

Browse files
author
GitHub Workshop Bot
committed
docs: upgrade all chapter challenges to gold standard with GitHub Skills refs
1 parent 7ac24a9 commit 1fff107

17 files changed

Lines changed: 1231 additions & 1276 deletions

.github/docs/LEARNING_PATHS.md

Lines changed: 0 additions & 443 deletions
This file was deleted.

docs/04-working-with-issues.md

Lines changed: 52 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,12 @@ Chapter 4 is the first **issue-based challenge chapter** with short, confidence-
3131
### Chapter 4 Challenge Set
3232

3333
1. **Create your first issue** - file a new issue with a clear title and description.
34-
2. **Claim a challenge issue** - comment on an existing beginner issue to claim it.
35-
3. **Ask one clarifying question** - add a question comment on your claimed issue.
34+
2. **Comment and @mention** - leave a comment on a classmate's issue and tag them with an @mention.
35+
3. **Add a sub-issue** - break a larger issue into smaller, trackable pieces.
3636

3737
> **Branch guidance for Chapter 4:** Chapter 4 focuses on issue skills. You do NOT need to create a branch or edit any files for these challenges. All your work happens in GitHub issue threads. File editing and branches start in Chapter 5.
3838
>
39-
> **How completion works:** When you finish all three challenges, post a comment on your assigned Chapter 4 challenge issue with links to the issues you created, claimed, and commented on. The facilitator reviews your issue activity directly. No pull request is required for Chapter 4.
39+
> **How completion works:** When you finish all three challenges, post a comment on your assigned Chapter 4 challenge issue with links to the issues you created, commented on, and organized. The facilitator reviews your issue activity directly. No pull request is required for Chapter 4.
4040
4141
### Challenge 4.1 Step-by-Step: Create Your First Issue
4242

@@ -61,46 +61,45 @@ Chapter 4 is the first **issue-based challenge chapter** with short, confidence-
6161

6262
**You are done when:** Your new issue appears in the Issues list with your username as the author, a clear title, and a detailed description.
6363

64-
### Challenge 4.2 Step-by-Step: Claim a Challenge Issue
64+
### Challenge 4.2 Step-by-Step: Comment and @Mention
6565

66-
**Goal:** Find an existing beginner challenge issue and claim it by leaving a comment.
66+
**Goal:** Leave a comment on another student's issue and use an @mention to notify them.
6767

6868
**Where you are working:** the Issues tab of the `learning-room` repository on GitHub.com.
6969

70-
1. Open the Issues tab in the `learning-room` repository.
71-
2. Use the search filter to find beginner issues. Type in the filter bar:
72-
```text
73-
is:open label:"challenge: beginner"
74-
```
75-
3. Browse the results and pick one issue that interests you.
76-
4. Open the issue by activating its title link.
77-
5. Read the issue description to understand what needs to be done.
78-
6. Scroll to the comment box at the bottom of the issue.
79-
7. Type: `I'd like to try this!`
80-
8. Activate the **Comment** button (or press `Ctrl+Enter`).
81-
9. Note the issue number (for example, `#42`). This is the issue you will fix in Chapter 5.
82-
83-
**You are done when:** Your comment appears in the issue thread, and other participants can see you have claimed the work.
84-
85-
### Challenge 4.3 Step-by-Step: Ask One Clarifying Question
86-
87-
**Goal:** Practice asking a useful question before starting implementation work.
88-
89-
**Where you are working:** the issue you claimed in Challenge 4.2.
90-
91-
1. Open the issue you claimed in Challenge 4.2.
92-
2. Re-read the issue description carefully. Think about:
93-
- Is anything unclear about what needs to change?
94-
- Do you know which file to edit?
95-
- Do you understand the expected result?
96-
3. Scroll to the comment box.
97-
4. Write one specific question. Examples:
98-
- "Should I add the paragraph after the existing heading or create a new subsection?"
99-
- "The issue mentions a broken link. Is the correct URL documented somewhere else in the repo?"
100-
- "Should the shortcut table keep the same column order, or can I reorganize it?"
101-
5. Activate the **Comment** button.
102-
103-
**You are done when:** Your question comment appears in the issue thread. A facilitator or peer will respond.
70+
1. Open the **Issues** tab in the `learning-room` repository.
71+
2. Find an issue created by a classmate (look for issues from Challenge 4.1, or browse recent open issues).
72+
3. Open the issue by activating its title link.
73+
4. Read the issue description to understand what they reported.
74+
5. Scroll to the comment box at the bottom of the issue.
75+
6. Write a helpful comment that **@mentions the issue author by username**. Examples:
76+
- "@classmate I can confirm this - the link in setup-guide.md goes to a 404 page."
77+
- "@classmate Good catch! I think the correct shortcut is Insert+F7, not Insert+F5."
78+
- "@classmate I'd suggest adding the paragraph right after the 'Who Can Contribute' heading."
79+
7. Activate the **Comment** button (or press `Ctrl+Enter`).
80+
81+
**Why @mentions matter:** When you type `@username`, GitHub sends that person a notification. This is how real open source teams communicate - you signal who needs to see your message. It also bridges into Chapter 9 (Notifications) where you will configure how you receive these alerts.
82+
83+
**You are done when:** Your comment appears in the thread and includes an @mention (the username renders as a clickable link).
84+
85+
### Challenge 4.3 Step-by-Step: Add a Sub-Issue
86+
87+
**Goal:** Break a larger issue into smaller, trackable pieces using GitHub's sub-issue feature.
88+
89+
**Where you are working:** the issue you created in Challenge 4.1 (or any open issue you have permission to edit).
90+
91+
> **What are sub-issues?** Sub-issues let you decompose a big task into smaller steps, each tracked independently. The parent issue shows a progress bar as sub-issues are completed. This is how teams organize real work - a single "Fix accessibility in welcome.md" issue might have sub-issues for each specific fix.
92+
93+
1. Open the issue you created in Challenge 4.1.
94+
2. Look for the **Sub-issues** section in the issue sidebar (right side on desktop). If you do not see it, look for an **Add sub-issue** button or the **Create sub-issue** option below the issue description.
95+
3. Activate **Add sub-issue** and choose **Create new sub-issue**.
96+
4. Give the sub-issue a clear title that describes one specific piece of the parent issue. For example, if the parent is "Fix accessibility in welcome.md":
97+
- Sub-issue: "Add alt text to welcome banner image"
98+
- Sub-issue: "Fix heading hierarchy in Getting Started section"
99+
5. Add a short description and activate **Create**.
100+
6. The sub-issue now appears nested under the parent issue with a progress indicator.
101+
102+
**You are done when:** Your parent issue shows at least one sub-issue in the Sub-issues section.
104103

105104
### Completing Chapter 4: Submit Your Evidence
106105

@@ -109,35 +108,36 @@ When you have finished all three challenges, go to your **assigned Chapter 4 cha
109108
```text
110109
Chapter 4 completed:
111110
- Challenge 4.1: Created issue #[number]
112-
- Challenge 4.2: Claimed issue #[number] (commented)
113-
- Challenge 4.3: Asked question on issue #[number]
111+
- Challenge 4.2: Commented with @mention on issue #[number]
112+
- Challenge 4.3: Added sub-issue to issue #[number]
114113
```
115114

116-
Replace `[number]` with the actual issue numbers. The facilitator will review your issue activity and mark the challenge complete.
115+
Replace `[number]` with the actual issue numbers. Then close your Chapter 4 challenge issues. The facilitator will review your issue activity.
117116

118117
### Expected Outcomes
119118

120119
- Student can create an issue with a clear title and description.
121-
- Student can claim a challenge issue in a public thread.
122-
- Student can ask a useful question before starting implementation.
120+
- Student can communicate in issue threads using @mentions.
121+
- Student can organize work by breaking issues into sub-issues.
123122

124123
### If You Get Stuck
125124

126-
1. Re-open `learning-room/docs/CHALLENGES.md` and pick one beginner issue.
127-
2. Use the issue search filter: `is:open label:"challenge: beginner"`.
128-
3. If claim/comment fails, refresh and retry once.
129-
4. Ask facilitator for a direct issue link and continue.
125+
1. Can't find a classmate's issue? Filter the Issues tab by `is:open` and look for recent ones.
126+
2. @mention not working? Make sure you type `@` immediately followed by the username with no space.
127+
3. Sub-issue option not visible? Ask a facilitator - the feature may need to be enabled for the repository.
128+
4. Still stuck? Ask a facilitator for a direct issue link.
130129

131130
### Learning Moment
132131

133-
Issues are not just task lists. They are collaborative spaces where clear communication reduces confusion and prevents rework.
132+
Issues are collaborative spaces, not just task lists. An @mention tells someone "I need your attention here." Sub-issues turn vague tasks into clear checklists. Both skills are used daily in real open source projects.
134133

135134
### Learning Pattern Used in This Chapter
136135

137136
1. Start with a small, safe action (create an issue).
138-
2. Practice communication in public issue threads (claim and question).
139-
3. Leave clear evidence in the issue timeline.
140-
4. Build momentum for file editing and PR work in Chapter 5.
137+
2. Practice communication in public issue threads (@mention a peer).
138+
3. Organize work into smaller pieces (sub-issues).
139+
4. Leave clear evidence in the issue timeline.
140+
5. Build momentum for file editing and PR work in Chapter 5.
141141

142142

143143
## Local Git Alternative: Working from Your Clone

docs/05-working-with-pull-requests.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Chapter 5 is the first **PR-validated chapter** where students convert issue wor
3030

3131
### Chapter 5 Challenge Set
3232

33-
1. **Create one small branch change** - edit the file specified in your claimed issue.
33+
1. **Create one small branch change** - edit a practice file on a new branch.
3434
2. **Open a linked PR** - use the PR template and include `Closes #XX`.
3535
3. **Pass required checks** - respond to bot feedback until all required checks pass.
3636

@@ -43,11 +43,13 @@ Chapter 5 is the first **PR-validated chapter** where students convert issue wor
4343
4444
### Challenge 5.1 Step-by-Step: Create One Small Branch Change
4545

46-
**Goal:** Edit the file referenced in the issue you claimed in Chapter 4 (Challenge 4.2).
46+
**Goal:** Edit one of the practice files and save your change on a new branch.
4747

4848
**Where you are working:** the `learning-room` repository on GitHub.com, using the web editor.
4949

50-
**Before you start:** Open the issue you claimed in Chapter 4.2 and note which file needs editing. The issue description tells you the file path and what to fix. The practice files are:
50+
**Before you start:** Open your **assigned Chapter 5.1 challenge issue** (the one titled "Chapter 5.1: Create One Small Branch Change (@yourname)"). The issue description tells you which file to edit and what to fix.
51+
52+
The Learning Room has three practice files with intentional problems. Your assigned issue points you to one of them:
5153

5254
The following table summarizes the practice files in the learning-room, what each file contains, and the type of issues to look for.
5355

@@ -90,8 +92,7 @@ The following table summarizes the practice files in the learning-room, what eac
9092
- "Correct NVDA modifier key in keyboard-shortcuts.md"
9193
2. In the **Body** field, use the PR template if one is provided. Make sure to include:
9294
- A summary of what you changed and why (at least 50 characters).
93-
- The line `Closes #XX` where `XX` is the number of your **assigned Chapter 5 challenge issue** (not the issue you claimed in Chapter 4, unless they are the same).
94-
- If you are also closing the issue you claimed in Chapter 4, add that reference too: `Also addresses #YY`.
95+
- The line `Closes #XX` where `XX` is the number of your **assigned Chapter 5 challenge issue**.
9596
3. Verify the **base branch** is `main` and the **compare branch** is your `fix/yourname-issueXX` branch.
9697
4. Activate the **Create pull request** button.
9798

@@ -194,7 +195,7 @@ The GitHub CLI walks you through title, body, base branch, and reviewers.
194195

195196
**What happens next is identical:** the Learning Room bot validates your PR, posts feedback, and you request a human reviewer - the same as the web workflow.
196197

197-
> **Tip:** You can also use your `username-practice` branch instead of creating a feature branch. Switch to it with `git checkout username-practice` (replacing `username` with your GitHub username, all lowercase).
198+
> **Tip:** You can also create a named feature branch with `git checkout -b fix/yourname-issueXX` if you prefer that naming convention over the practice branch.
198199
199200
</details>
200201

docs/06-merge-conflicts.md

Lines changed: 60 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,39 +14,81 @@ Chapter 6 uses **one controlled practice challenge** so students can learn confl
1414
- **Challenge count:** 1
1515
- **Time:** under 10 minutes
1616
- **Evidence:** issue-linked PR and completion comment
17-
- **Pattern:** observe -> resolve -> verify
17+
- **Pattern:** observe, resolve, verify
1818

19-
### Chapter 6 Challenge: Resolve Conflict Markers
19+
### Chapter 6 Challenge Set
20+
21+
1. **Resolve conflict markers** - identify and clean up conflict markers in a practice file, then open a linked PR.
22+
23+
> **Branch guidance for Chapter 6:** Use a short-lived feature branch: `fix/yourname-issueXX` (for example, `fix/maria-issue48`). The same pattern you used in Chapter 5.
24+
25+
### Challenge 6.1 Step-by-Step: Resolve Conflict Markers
26+
27+
**Goal:** Identify the three types of conflict markers in a practice file, decide which content to keep, remove the markers, and submit a clean PR.
28+
29+
**Where you are working:** the `learning-room` repository on GitHub.com (web editor) or in VS Code if you cloned locally.
30+
31+
**Before you start:** Open your **assigned Chapter 6 challenge issue** (the one titled "Chapter 6.1: Resolve Conflict Markers (@yourname)"). The issue description tells you which practice file contains the conflict markers.
2032

2133
Practice sample: [`learning-room/docs/samples/chapter-6-conflict-practice-sample.md`](../learning-room/docs/samples/chapter-6-conflict-practice-sample.md)
2234

23-
1. Open the assigned merge-conflict practice issue.
24-
2. Edit only the designated practice file/section.
25-
3. Remove conflict markers (`<<<<<<<`, `=======`, `>>>>>>>`) and keep the intended final content.
26-
4. Open PR with `Closes #XX` and complete with a short issue comment summary.
35+
1. Open the practice file specified in your challenge issue.
36+
2. Search the file for `<<<<<<<`. This is the **start marker** - it shows where the conflict begins.
37+
3. Read the content between `<<<<<<<` and `=======`. This is **your version** (the current branch).
38+
4. Read the content between `=======` and `>>>>>>>`. This is **their version** (the incoming branch).
39+
5. Decide which content to keep:
40+
- Keep only your version, or
41+
- Keep only their version, or
42+
- Combine both versions into one clean paragraph.
43+
6. Delete all three marker lines:
44+
- The `<<<<<<< HEAD` line (or similar)
45+
- The `=======` separator line
46+
- The `>>>>>>> branch-name` line
47+
7. Review the file to confirm no marker lines remain. Search for `<<<<<<<` again - there should be zero results.
48+
8. Commit your changes on a branch named `fix/yourname-issueXX`.
49+
9. Open a pull request with:
50+
- Title: `fix: resolve conflict markers in [filename]`
51+
- Body: Include `Closes #XX` (your challenge issue number) and a 1-2 sentence description of which content you kept and why.
52+
53+
**Screen reader tip:** Use your screen reader's find command (`Ctrl+F` in browser, `Ctrl+H` in VS Code) to jump directly to `<<<<<<<`. The markers are plain text, so they are fully readable.
54+
55+
**You are done when:** Your PR passes bot validation checks and contains no remaining conflict markers.
56+
57+
### Completing Chapter 6: Submit Your Evidence
58+
59+
When your PR is open and passing checks, post a comment on your assigned Chapter 6 challenge issue:
60+
61+
```text
62+
Chapter 6 completed:
63+
- Challenge 6.1: Opened PR #[number] resolving conflict markers in [filename]
64+
- Content decision: kept [your version / their version / combined both] because [reason]
65+
```
2766

2867
### Expected Outcomes
2968

30-
- Student can identify conflict markers immediately.
31-
- Student can remove markers and keep intended content.
32-
- Student can submit a clean, issue-linked PR after resolution.
69+
- Student can identify the three conflict marker lines (`<<<<<<<`, `=======`, `>>>>>>>`) immediately.
70+
- Student can read both sides of a conflict and make an intentional content decision.
71+
- Student can remove all markers and submit a clean, issue-linked PR.
3372

3473
### If You Get Stuck
3574

36-
1. Pause and read marker blocks line by line before editing.
37-
2. Keep one side, or combine both sides when both lines are valid.
38-
3. Delete all marker lines (`<<<<<<<`, `=======`, `>>>>>>>`).
39-
4. Ask facilitator to sanity-check final content before opening PR.
75+
1. Can't find the markers? Use `Ctrl+F` and search for `<<<<<<<` - they are always in sets of three.
76+
2. Not sure which side to keep? Read both versions aloud. Pick the one that is clearer, or combine them.
77+
3. Accidentally deleted too much? Undo with `Ctrl+Z` and start the section over.
78+
4. PR bot says content is wrong? Double-check that zero marker lines remain - search for `<<<<<<<`, `=======`, and `>>>>>>>`.
79+
5. Ask facilitator to sanity-check your final content before opening the PR.
4080

4181
### Learning Moment
4282

43-
Merge conflicts are not failures. They are a normal collaboration checkpoint and a chance to make an intentional content decision.
83+
Merge conflicts are not failures. They are a normal collaboration checkpoint and a chance to make an intentional content decision. In real open source projects, conflicts happen whenever two people edit near the same lines. The skill is not avoiding them - it is resolving them calmly and clearly.
4484

45-
### Why this chapter is structured this way
85+
### Learning Pattern Used in This Chapter
4686

47-
- Real conflicts can be unpredictable for new contributors.
48-
- Controlled practice keeps the experience safe and repeatable.
49-
- Students still get real issue and PR workflow practice.
87+
1. Start with a controlled, safe conflict (practice file with known markers).
88+
2. Learn to read the conflict structure (your version vs. their version).
89+
3. Make a deliberate content decision (not just deleting randomly).
90+
4. Submit clean evidence through the PR workflow.
91+
5. Build confidence for real conflicts in future contributions.
5092

5193

5294
## Local Git Alternative: Resolving Conflicts from Your Terminal

0 commit comments

Comments
 (0)