-
-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Yet more virtual league detail #599
Conversation
While right now the docs section doesn't have a lot in it, I'm about to fix that.
This explains the concept in a bit more detail for rookie teams and folks new to SR alike.
Meta: it's fairly unusual to push commits (edit: including applying review suggestions) to a PR for which you are not the author without prior coordination of the author. |
This was due to GitHub not allowing me (as far as I'm aware) to add suggestions for changing the "providing logs" sentence as it was more than a few lines outside of the rest of the changes in this PR. |
Continuing the meta discussion for knowledge sharing. This comment is therefore deliberately detailed, aiming to share the full context of experience for educational purposes. The length of this comment is not proportional to the concern.
With regards to that UII agree it's unfortunate that GitHub doesn't make it easy to add comments outside the bounds of the diff. There's a trade-off here. On the one hand, encouraging review to focus on the things which have changed and not on generically improving the rest of the content is a good thing. Small focussed changes are generally better than bigger broader ones as they're easy to review. This applies just as much to prose as it does to code. On the other hand, it can easily be the case that an update in one place suggests or requires an update elsewhere to be made too. (I'm not sure if that's the case here, I haven't looked) The common response to such scenarios is to post on the part of the change which has been made something like "I think we should also change X in file Y on line Z". The author can then determine what changes, if any, need to be done. (I have encountered cases both as reviewer and as author where not changing the "other" place was correct) In case you're not aware, there is also a way to have comments associated with files and not with lines in that file. This is useful in various scenarios, including the one described above. It can also be used to suggest related general improvements, however I would caution about scope creep of changesets. With regards to the actionPerhaps I should clarify that by "pushing commits" I meant generically making changes to the content of the PR (which is naturally all expressed via commits). So this includes things like applying suggestions from other reviewers as well as writing commits manually and pushing them. It probably also includes rebasing someone else's PR or merging in the main branch. Even if well-meaning, all of these things are likely to surprise the author and create work for them to catch up on changes that have been made by someone else to something they were working on. It can be taken as disrespect for the author. (I can imagine that in some communities there are different norms, however what I'm describing here is the general norm on GitHub and, as far as I'm aware, one which SR follows too). It can also lead to duplication of effort -- for example if they had been working on alternative versions of the same fixes. While perhaps less likely for prose content, for source code it is likely that the author has additional context about the change which the reviewers might not have and which could suggest quite different changes. Even if well-meaning and conflicting duplication of effort is avoided, it is unlikely to reduce the workload of the author and is likely to increase it. This is because, unless the PR is fully handed over to whoever has pushed to the PR, the author is still the one responsible for merging it. In doing that they are still responsible for its content and thus must still read the review comments and evaluate the proper course of action to resolve them. Where changes have been made on top of their own work, they then need to review those changes1 to determine their appropriateness (and potentially make further fixes). In the ideal case, code review is a discussion between multiple parties all trying to produce the best outcome. (Along the way the reviewer(s), author or both hopefully also learn some things to improve their craft.) Trust is required in both directions. Authors are usually encouraged to defer to the judgement of reviewers in cases which are ambiguous, broadly equivalent or especially in matters relating to e.g: clarity. Reviewers in turn are expected to offer their suggestions for the consideration of the author, rather than to force a particular response. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All looks good to me
See also srobo/docs#661