You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: public/uploads/rules/resolving-code-review-comments/rule.mdx
+33-41Lines changed: 33 additions & 41 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -30,51 +30,20 @@ archivedreason: null
30
30
When someone leaves a comment or GitHub Copilot creates a comment on your pull request, it's tempting to simply mark it as resolved and move on.
31
31
However, this creates confusion for other reviewers who can't tell if the suggestion was implemented, why it wasn't implemented, or what the outcome was.
32
32
33
-
Just like the "Reply Done" principle for emails, you should always provide a clear response to code review comments before resolving them.
33
+
Just like the ["Reply Done"](https://www.ssw.com.au/rules/reply-done) principle for emails, you should always provide a clear response to code review comments before resolving them.
34
34
This helps maintain transparency and ensures all reviewers understand the resolution.
35
35
36
36
<endIntro_hidden="" />
37
37
38
-
## Always respond before resolving
38
+
## How to respond to different types of comments
39
39
40
-
When you address a comment in your pull request, you should:
41
-
42
-
1.**For change requests**: Implement the change and reply "Done" or explain why it will not be implemented
43
-
2.**For questions**: Reply without resolving to allow conversation continuation
44
-
45
-
## Bad examples
46
-
47
-
<imageEmbedalt="Image"size="small"showBorder={false}figurePrefix="bad"figure="AI Suggestion marked as resolved with no response"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20115911.png" />
48
-
49
-
<imageEmbedalt="Bad Example - Comment simply marked as resolved with no response"size="small"showBorder={false}figurePrefix="bad"figure="Comment simply marked as resolved with no response"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20165155.png" />
50
-
51
-
## Good examples
52
-
53
-
<imageEmbedalt="Image"size="small"showBorder={false}figurePrefix="good"figure="Clear confirmation that the change was implemented"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20172623.png" />
54
-
55
-
<imageEmbedalt="Image"size="small"showBorder={false}figurePrefix="good"figure="Explained that the change will be addressed in a separate PBI"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20175826.png" />
56
-
57
-
## Why this matters
58
-
59
-
### For other reviewers
60
-
61
-
***Clarity**: They can quickly see which suggestions were implemented and why others weren't
62
-
***Efficiency**: No need to manually compare code to understand what changed
63
-
***Learning**: Understanding why certain suggestions were rejected provides valuable context
64
-
65
-
### For the PR author
66
-
67
-
***Documentation**: Creates a clear record of decisions made during the review
68
-
***Accountability**: Shows you've carefully considered all feedback
69
-
***Communication**: Demonstrates respect for the reviewer's time and input
70
-
71
-
## Handling different types of comments
40
+
When you address a comment in your pull request, the response depends on the type of comment:
72
41
73
42
### For **"Change"** comments
74
43
75
44
These are typically blocking requests that must be addressed. Always respond with:
76
45
77
-
* "**✅ Done**"
46
+
* "**✅ Done**" - after implementing the change
78
47
* "**❌ Won't do** - reason why the change isn't being made"
79
48
80
49
### For **"Question"** comments
@@ -85,19 +54,42 @@ Reply without resolving so the author can read it and continue the conversation:
85
54
* "Yes, that's handled in the validation layer"
86
55
* "Good point - let me clarify..."
87
56
88
-
If there’s a disagreement, it’s generally best to discuss it in person (or offline) rather than through comments, when possible. Once aligned, summarize the outcome in the thread for visibility, e.g.:
57
+
If there's a disagreement, it's generally best to discuss it in person (or offline) rather than through comments, when possible. Once aligned, summarize the outcome in the thread for visibility, e.g.:
89
58
90
59
* "As per my conversation with @person, we agreed that …"
91
60
92
61
Only mark questions as resolved after the conversation is complete and both parties agree.
93
62
63
+
<imageEmbedalt="Image"size="small"showBorder={false}figurePrefix="bad"figure="AI Suggestion marked as resolved with no response"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20115911.png" />
64
+
65
+
<imageEmbedalt="Bad Example - Comment simply marked as resolved with no response"size="small"showBorder={false}figurePrefix="bad"figure="Comment simply marked as resolved with no response"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20165155.png" />
66
+
67
+
<imageEmbedalt="Image"size="small"showBorder={false}figurePrefix="good"figure="Clear confirmation that the change was implemented"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20172623.png" />
68
+
69
+
<imageEmbedalt="Image"size="small"showBorder={false}figurePrefix="good"figure="Explained that the change will be addressed in a separate PBI"src="/uploads/rules/do-you-properly-resolve-code-review-comments/Screenshot%202026-01-22%20175826.png" />
70
+
71
+
## Why this matters
72
+
73
+
### For other reviewers
74
+
75
+
***Clarity** - They can quickly see which suggestions were implemented and why others weren't
76
+
***Efficiency** - No need to manually compare code to understand what changed
77
+
***Learning** - Understanding why certain suggestions were rejected provides valuable context
78
+
79
+
### For the PR author
80
+
81
+
***Documentation** - Creates a clear record of decisions made during the review
82
+
***Accountability** - Shows you've carefully considered all feedback
83
+
***Communication** - Demonstrates respect for the reviewer's time and input
84
+
85
+
94
86
## Best practices
95
87
96
-
1.**Be specific**: Reference exactly what you did in response to the comment
97
-
2.**Include context**: Provide brief reasoning for your decisions
98
-
3.**Use consistent formatting**: Start with the status (Done, Won't do, etc.)
99
-
4.**Address all comments**: Don't leave any comment unresolved without a response
100
-
5.**Keep it concise**: Provide enough detail without being overly verbose
88
+
***Be specific** - Reference exactly what you did in response to the comment
89
+
***Include context** - Provide brief reasoning for your decisions
90
+
***Use consistent formatting** - Start with the status (Done, Won't do, etc.)
91
+
***Address all comments** - Don't leave any comment unresolved without a response
92
+
***Keep it concise** - Provide enough detail without being overly verbose
101
93
102
94
By following these practices, you create a more transparent and efficient code review process that benefits everyone involved.
103
95
The small extra effort of writing clear responses saves significant time and confusion for the entire team.
0 commit comments