Issues, labels and milestones; linking PRs to issues
Turn a one-line request into issues the team can act on: bug reports with steps to reproduce, feature requests with acceptance criteria, templates, labels, assignees, sub-issues and a milestone with a due date. Plus how closing keywords and mentions link pull requests to issues, and what each issue state tells a PM.
Lesson 13 of 15~39 min of learningIncludes ~23 min for questions and tasks
Contents1 of 70 steps
Alex Tutor
You
Alex Tutor
Daniel
Alex Tutor
Loyalty#147
Opened by the CEO last week · no labels, no assignee
Test an orange checkout button#135
Label idea · opened by Daniel
Checkout button stays grey after editing cart#131
Bug report from support · closed by #134
Show prices in euros#138
Feature request · closed as not planned
You
Alex Tutor
Alex Tutor
Question 1
Match each situation with what it should become on GitHub.
Tap an answer, then tap the row it belongs to. You can also drag.
- A customer can't apply a promo code on a phone
- Sales asks for saved delivery addresses
- Update the courier phone number in the FAQ by Friday
- Daniel's branch with the code that fixes the promo code bug
Answers left to place
Alex Tutor
You
Daniel
Alex Tutor
loyalty-points on for staff only. Customers still see nothing.You
Alex Tutor
Alex Tutor
Question 2
Support files an issue titled "Points broken" with the description "customer says points are wrong, pls fix ASAP". What does Daniel need before he can start? Select all that apply.
You
Daniel
.github/ISSUE_TEMPLATE/ folder. Oscar approved it an hour ago, so they're live.Alex Tutor
New issue first asks which kind: "Bug report", "Feature request" or a blank issue, as of 2026. The bug template starts with the headings you just saw and adds the bug label by itself.Daniel
You
Alex Tutor
Alex Tutor
Question 3Short answer · AI-checked task
Emma writes in the team chat: "Ordered for 450 UAH on my phone yesterday, staff account, paying by card on delivery. Points still show 0 today. Screenshot attached." Fill in the "Bug report" template: a title, steps to reproduce, expected and actual result, and where. Mark anything you still need to ask.
Write your answer and get a score with feedback from our AI reviewer.
Log in to get AI feedbackAlex Tutor
Labels say what kind of work it is and which area: bug, content, and loyalty, the label Daniel made for the programme. Filter the list by label:loyalty and the whole programme is on one screen.You
Assignees? On #134 that was Daniel, the author.Alex Tutor
Daniel
Alex Tutor
Milestone and Development, get their own sections today. First, the whole sidebar at a glance.Alex Tutor
Question 4
Match each field in an issue's sidebar with the question it answers.
Tap an answer, then tap the row it belongs to. You can also drag.
AssigneesLabelsMilestoneDevelopment
Answers left to place
You
Alex Tutor
Daniel
Alex Tutor
- [ ] that show up as tick boxes. They work, but someone ticks them by hand.You
Alex Tutor
Question 5
A sub-issue is only a line of text inside the parent issue's description, so it has no state, labels or assignee of its own.
Alex Tutor
Daniel
You
Alex Tutor
Alex Tutor
Question 6Case · AI-checked task
Rewrite issue #147 as a parent issue and plan its sub-issues.
Issue #147 was opened by the CEO last week. Title: "Loyalty". Description: "Need this before Black Friday!!" No labels, no assignee.
What you know:
- The programme: customers earn 1 point for every 10 UAH of a paid order, see their balance in their account and spend points as a discount at checkout. Emma writes the page that explains it.
- Done: #155 "Add loyalty points behind a flag" and #156 "Earn points on paid orders" are merged, hidden behind the flag
loyalty-points(on for staff only). - Open: issue #159 "Points counted before promo discount" (bug, assigned to Daniel); Emma's pull request #157 "Write loyalty programme page" is a draft.
- Not started: showing the balance in the account; spending points at checkout.
- Launch means the flag is on for all customers. Black Friday is on 27 November; the team wants the launch at least two weeks earlier.
Write the new title and description of #147 (goal and context, acceptance criteria for the launch, what is out of scope), the sub-issues with an assignee and labels for each, the milestone (name and due date), and how pull requests should refer to the issues.
Write your answer and get a score with feedback from our AI reviewer.
Log in to get AI feedbackAlex Tutor
Daniel
Alex Tutor
Launch loyalty points before Black Friday#147
Parent · 0 of 4 sub-issues closed · Sofia
Add loyalty points behind a flag#155
Earn points on paid orders#156
Write loyalty programme page#157
Emma
Points counted before promo discount#159
bug, loyalty · Daniel
Show points balance in the account#162
loyalty · Daniel
Spend points at checkout#163
loyalty · Daniel
Switch on loyalty points for all customers#164
loyalty · Sofia
You
Alex Tutor
You
Alex Tutor
Question 7
What does the progress bar of this milestone show?
Add gift wrap option
Gift wrap price in the cart
Gift wrap for bundles
Gift wrap photo on product page
Gift wrap in three colours
Show gift wrap in past orders
Gift wrap copy for checkout
Gift wrap in order emails
Gift wrap on the invoice
Gift wrap for gift cards
Alex Tutor
Daniel
Development in #159 there's Create a branch. GitHub suggests a name from the issue's number and title; I changed it to our habit, fix/points-after-discount.Alex Tutor
e5f81a3Hide loyalty menu link when flag is off (#158)v1.4.1b2e6f10Earn points on paid orders (#156)6e0b4d8Add issue templates (#160)4f8c2e1Count points from the paid amountfix/points-after-discount7a1d9c3Count points after discounts (#165)main
Commit graph, oldest first: From issue #159 to main 1. commit e5f81a3 on main "Hide loyalty menu link when flag is off (#158)", tagged v1.4.1 2. commit b2e6f10 on main "Earn points on paid orders (#156)" 3. commit 6e0b4d8 on main "Add issue templates (#160)" 4. branch fix/points-after-discount starts from commit 6e0b4d8 5. commit 4f8c2e1 on fix/points-after-discount "Count points from the paid amount" 6. commit 7a1d9c3: fix/points-after-discount squash-merged into main "Count points after discounts (#165)" (highlighted)
Alex Tutor
You
Fixes #159 closes the bug when #165 is merged into main. And Part of #147 is only a mention?Alex Tutor
#147 creates a cross-reference: #147's timeline shows that #165 mentioned it, and nothing closes. Only close, fix or resolve in front of the number closes it, and only after a merge into the default branch.Daniel
Fixes #147 in a slice. The first merged piece would close the whole programme.Alex Tutor
Alex Tutor
Question 8
Daniel's next pull request, #166, says in its description: "Fixes #162. Related to #163 and #147." It is approved and squash-merged into main. Which issues does GitHub close?
You
Alex Tutor
Development keeps the link to #165, so anyone can see what closed it and when. If the fix turns out not to work, the issue can be reopened.Daniel
Alex Tutor
Alex Tutor
Question 9
Support asks: "A customer heard about loyalty points. Is the points bug fixed for customers now?" The flag loyalty-points is still on for staff only. What is the accurate answer?
Points counted before promo discount#159
Closed by #165
Count points after discounts#165
Merged into main · deploy (production) finished
You
Daniel
Alex Tutor
Alex Tutor
That’s the lesson. You answered every task — nicely done.