Fine for me to start this way :)

On Mon, Feb 13, 2023 at 10:56 AM Elad Kalif <elad...@gmail.com> wrote:
>
> 1) The committer/PMC/Triage member will remove the needs-triage label. This 
> is not really an additional step.
> We are already relabeling when we triage an issue. The removal of the label 
> doesn't have to happen on the first touchdown.
> Sometimes the triager doesn't have the full knowledge so tagging another 
> member of the community or needs to ask followup questions.
> In my perspective triage is done once issue is understood, reproducible and 
> just waiting for someone to pick it up (usually this is also the stage where 
> we add the good first issue / area labels)
>
> 2) Procedures take time to be fully adopted. From past experience eventually 
> everyone is aligned with new policies.
> Even if we get it wrong in specific places it's very easy to correct it. 
> Dashboard can be really nice.
>
> 3) There is not much we can do. The next step after triage is to open PR. 
> This depends on someone who will pick up the issue.
> We can measure time since creation/last action but also break by reported 
> version.
>
>
> On Mon, Feb 13, 2023 at 11:38 AM Jarek Potiuk <ja...@potiuk.com> wrote:
>>
>> Yes. I agree it is a good first step. Let's just not stop on that.
>> Once we have it, I think starting measuring "responsiveness" is
>> crucial.
>>
>> Also - even if it is the first, step, it has to be well defined.
>> Adding such labels should be accompanied with some way of explaining
>> and educating those who would use it how to deal with it. Because
>> setting it is one thing and important is what happens next. Few
>> questions:
>>
>> 1) Who and when should I remove it ? I believe it adds extra
>> responsibility on those who look at the issue and respond to the user,
>> to remove it when the issue has been "triaged" already - is that the
>> idea - to do it always as an extra manual step when we respond to such
>> issue (sounds like extra small but regular burden). Maybe the bot
>> could automatically remove the label when a maintainer responded to
>> the issue? We could do this later, but I am curious what you think
>> there.
>>
>> 2) Do you think we should have some "dashboard" showing the issues to
>> be triaged? Or you think just "label needs-triage" will be enough and
>> every one of the maintainers will know and should simply look at those
>> issues that "needs triage"?
>>
>> 3) what should we do about issues that have been triaged and the user
>> "responded" (and no-one will follow up - this happens). Are we going
>> to track them too or is it something to tackle next ?
>>
>> J.
>>
>>
>>
>> On Mon, Feb 13, 2023 at 10:02 AM Elad Kalif <elad...@apache.org> wrote:
>> >
>> > > Setting the label does not mean that someone will have eyes on it.
>> >
>> > True. but that is just about creating a work queue so when someone does 
>> > spend time on triage the issues can be found easily.
>> > This will also address your other points of needing data. By having the 
>> > label can measure several metrics regarding waiting for triage time 
>> > (script that checks open issues with the labels (daily?) and possibly push 
>> > notification to the issue-triage channel in slack or some other channel?)
>> >
>> > There are many further improvements we can do. For example setup 
>> > https://github.com/google/triage-party tool
>> >
>> > On Sun, Feb 12, 2023 at 10:29 PM Jarek Potiuk <ja...@potiuk.com> wrote:
>> >>
>> >> Maybe I am not getting the full extent of the proposal and maybe I
>> >> "hijacked" it a bit, but my comment was really related to (4) - new
>> >> issues. My mistake. Let me comment on those.
>> >>
>> >> 1) 2) 3)  -> This is good as a cleanup. We can do this as a manually
>> >> run bulk process to add such comments now for all such old issues and
>> >> run them periodically (every few months) if needed. That will be
>> >> simpler. I am fine with that. We can even initially run it manually
>> >> and if we find it useful we can turn it into a bot. But I think we
>> >> should not have to do it again and this is what I mostly commented on.
>> >>
>> >> > In item (4) I suggested adding a needs-triage label to make sure that 
>> >> > any issue we get will have at least 1 committer/PMC/Triage member eyes 
>> >> > on it.
>> >>
>> >> Setting the label does not mean that someone will have eyes on it.
>> >> It's a good starting point though. I think measuring and incentivising
>> >> responsiveness for new issues is a key. And if we make sure that we
>> >> respond to issues in a timely manner, the current stale-bot is enough.
>> >> It will be closing only issues/PRs which are "pending response". All
>> >> the other issues will be either acknowledged by a maintainer and at
>> >> least vaguely planned to work on, or converted to a discussion, or
>> >> fixed or marked as "good first issue" for anyone to pick up.
>> >>
>> >> J.
>> >>
>> >>
>> >>
>> >> On Sun, Feb 12, 2023 at 8:37 PM Elad Kalif <elad...@apache.org> wrote:
>> >> >
>> >> > I'm not sure if the scenario you are worried about can happen?
>> >> >
>> >> > In item (4) I suggested adding a needs-triage label to make sure that 
>> >> > any issue we get will have at least 1 committer/PMC/Triage member eyes 
>> >> > on it.
>> >> > In this step the issue can be accepted and then this label is replaced 
>> >> > by (reported_version) or rejected and be closed/converted to discussion.
>> >> > If a year passed and no one did anything with the issue the automation 
>> >> > will simply ask the user to let us know if the issue is still happening 
>> >> > on newer Airflow version.
>> >> > The issue may have already been solved and we just didn't notice. 
>> >> > Assuming the user won't comment in a defined time frame then it will 
>> >> > close the issue (if someone in the future will say we did wrong we can 
>> >> > always reopen)
>> >> > This is basically what happens today just by manually process.
>> >> >
>> >> > - What happens if the user replies that it's reproducible?
>> >> > We will replace the previous reported_version with a new one (for 
>> >> > example: reported_version:2.0 -> reported_version:2.5) this will bump 
>> >> > the issue to the latest bug lists.
>> >> >
>> >> >
>> >> > On Sun, Feb 12, 2023 at 5:48 PM Jarek Potiuk <ja...@potiuk.com> wrote:
>> >> >>
>> >> >> TL;DR; I think we should first solve the issue of improving our
>> >> >> "responsiveness" as committers first. I believe once we solve it, the
>> >> >> stale bot closing issue will be a useful and non-offensive tool.
>> >> >>
>> >> >> (Sorry for a loong email,  but I have been thinking a lot about it and
>> >> >> I had many observations that came from responding and triaging our
>> >> >> issues and PRs and discussions - this took likely 30%/40% of my time
>> >> >> over the last few months).
>> >> >>
>> >> >> Yes. I also have some serious doubts about closing issues "blindly" by
>> >> >> one criteria only by time of inactivity. I think this is just wrong
>> >> >> and we should not do it.
>> >> >>
>> >> >> I agree with Ash that this is really infuriating, when I opened an
>> >> >> issue, then 3 months have passed and it has been closed due to
>> >> >> inactivity. This is simply offensive - no matter if it's a bug or
>> >> >> issue or PR. But I think this is not a problem that we have to deal
>> >> >> better with the issues as maintainers, not that the stale bot is a
>> >> >> problem.
>> >> >>
>> >> >> But this is only one side of the story - If you have a stale issue
>> >> >> first and closed, when the issue is "pending response" from the user -
>> >> >> I have absolutely no problem with that. If the user who opened it is
>> >> >> asked for extra information and has not found a time to provide it -
>> >> >> there is absolutely no reason it should take the mental space of the
>> >> >> maintainers and we should close it automatically. We can always
>> >> >> re-open it if the user comes back with more information.
>> >> >>
>> >> >>
>> >> >> But coming back to closing issues without reaction from anyone. If
>> >> >> this kind of closing happens that we should be ashamed of that means
>> >> >> something else. That means that we as maintainers have done a bad job
>> >> >> in triaging this issue. This is really an indication that no-one -
>> >> >> neither regular contributors (which happens) nor maintainers (which
>> >> >> should look at it if no contributor does) found a time to read,
>> >> >> analyse and respond to an issue. No matter what response it will be.
>> >> >> ANY response from a maintainer (won'tfix, asking for more information,
>> >> >> asking others to provide more community to provide more evidence if
>> >> >> the issue is impossible to diagnose, convert to a discussion) is
>> >> >> better than silence. Way, way better.
>> >> >>
>> >> >> From my point of view, I think the real problem we have is that we
>> >> >> often have issues open for weeks or monhts without ANY interaction -
>> >> >> or there is no interaction after the user provided some kind of
>> >> >> response, additional information etc. Every now and then I do a
>> >> >> "streak" where I try to provide A response to EVERY issue and PRs
>> >> >> opened and not responded to for the last few weeks. And there are a
>> >> >> number of those for issues or PRs that are even 3-4 weeks without any
>> >> >> answer.
>> >> >>
>> >> >> And I am as guilty as everyone else here, but I have a feeling that if
>> >> >> we collectively as maintainers spend quite a good chunk of our time
>> >> >> triaging and responding to issues in due time. I think if we end up
>> >> >> with a situation where a user raises an issue or PR or provides a
>> >> >> feedback/new iteration etc. and there is absolutely no response for
>> >> >> more than a week - this is an indication we have a huge problem. And
>> >> >> the worst types of thoe are where someone "requests changes", those
>> >> >> changes are applied and the user pings the reviewer and there are
>> >> >> weeks of no response (even to multiple pings). Those happen rarely in
>> >> >> our and I think they are a bit even disrespectful to the users who had
>> >> >> "done their part".
>> >> >>
>> >> >> And I believe (I have no stats, just gut feeling) that we have that to
>> >> >> some extent - for features, bugs, PRs, discussions.
>> >> >>
>> >> >> If this happens a lot, then this is I think even equally offensive (or
>> >> >> even more) as closing stale issues. I think out of many stats,
>> >> >> "average response time" to an issue is absolutely most important to
>> >> >> see how good the community is in handling issues and PRs. This should
>> >> >> be to both - new issues and PRs. but also to issues that have been
>> >> >> opened and not responded after the user provided a response back.
>> >> >>
>> >> >> Now - many of those are not "intentional" and absolutely no "bad will"
>> >> >> - and it is mostly because we do not realise that we have a problem.
>> >> >>
>> >> >> We are all humans and have our daily issues and jobs and a lot of what
>> >> >> we do for our issues is done in our free time. But maybe we can
>> >> >> automate and improve that part - which in turn will make our stale bot
>> >> >> far "nicer" as it will only have to deal with the case where the
>> >> >> "user" has not provided necessary input and the maintainers looked and
>> >> >> responded to it.
>> >> >>
>> >> >> I do not have a very concrete proposal, but some vague ideas how this
>> >> >> could be improved:
>> >> >>
>> >> >> * Maybe we should start with building some simple stats and seeing our
>> >> >> responsiveness and find out if we really have a problem there. I am
>> >> >> sure there must be some tools for that and we might write ours if
>> >> >> needed - I remember we discussed similar issues in the past
>> >> >>
>> >> >> * Then maybe we can figure out a way to share the burden of reviews
>> >> >> between more committers somehow. For example identify issues and PRs
>> >> >> that have not been responded or followed up for some time and make
>> >> >> some way to incentivise and involve committers to provide feedback to
>> >> >> those
>> >> >>
>> >> >> * The stats could help us to understand if we are falling behind and
>> >> >> maybe we could have some weekly summary of stats that would help us
>> >> >> with understanding if we should do something and up-end our efforts in
>> >> >> triaging
>> >> >>
>> >> >> I think - if we do that then the only thing that Stale bot will be
>> >> >> doing is closing issues and PRs which had not received an input from
>> >> >> the user. Which is perfectly fine IMHO.
>> >> >>
>> >> >> On Sun, Feb 12, 2023 at 10:56 AM Ash Berlin-Taylor <a...@apache.org> 
>> >> >> wrote:
>> >> >> >
>> >> >> > Got it, yes that makes sense to me!
>> >> >> >
>> >> >> > On 12 February 2023 09:36:44 GMT, Elad Kalif <elad...@apache.org> 
>> >> >> > wrote:
>> >> >> >>
>> >> >> >> Thanks for the comments my replies are in blue for all points 
>> >> >> >> raised.
>> >> >> >>
>> >> >> >> > We have currently more than 700 issues and many of them have had 
>> >> >> >> > no activity since a year. What will we do with those issues?
>> >> >> >>
>> >> >> >> Half of the open issues are feature requests thus will not be 
>> >> >> >> impacted. The thing I'm trying to resolve here is to know if the 
>> >> >> >> old issue is still reproducible on main/latest version. If so the 
>> >> >> >> issue will be tagged appropriately and will be kept open if the 
>> >> >> >> author does not respond. We can assume the issue is no longer 
>> >> >> >> relevant and close it.
>> >> >> >>
>> >> >> >> > Why close only stale issues not stale PR's?
>> >> >> >>
>> >> >> >> We already have that. Stale bot works for PR (excluding ones with 
>> >> >> >> pinned label)
>> >> >> >>
>> >> >> >> > There is nothing I find more infuriating and demoralising when 
>> >> >> >> > dealing with an open source project (and big ones like Kubernetes 
>> >> >> >> > are the worst offenders at this) where I find a bug or feature 
>> >> >> >> > request is closed simply due to lack of traction.
>> >> >> >>
>> >> >> >> I understand and share your concerns. First, this suggestion is 
>> >> >> >> just about bugs not about features. The automation calls for action 
>> >> >> >> from the author to recheck the issue.
>> >> >> >> This is something I'm doing today manually by going issue by issue 
>> >> >> >> and commenting the exact same thing "Is this issue happens in 
>> >> >> >> latest airflow version?" The auto close part is something that 
>> >> >> >> happens today when we add the pending-response label. My goal is to 
>> >> >> >> make sure that the list of open bugs we have is relevant. I'm not 
>> >> >> >> against larger intervals should we decide for it. To clarify I'm 
>> >> >> >> not suggesting to close bug reports because lack of attraction I'm 
>> >> >> >> suggesting to close reports that are not on recent versions of 
>> >> >> >> Airflow. In practice I don't see people trying to reproduce bugs 
>> >> >> >> reported on 2.0 in latest main - this simply doesn't happen so by 
>> >> >> >> having this process we are asking the author to recheck his report. 
>> >> >> >> If the issue is still reproducible then by letting us know that and 
>> >> >> >> by having the proper labels it might get more attraction to it.
>> >> >> >>
>> >> >> >>
>> >> >> >> On Sun, Feb 12, 2023 at 10:15 AM Ash Berlin-Taylor 
>> >> >> >> <a...@apache.org> wrote:
>> >> >> >>>
>> >> >> >>> I feel very strongly against automated closing of _issues_.
>> >> >> >>>
>> >> >> >>> There is nothing I find more infuriating and demoralising when 
>> >> >> >>> dealing with an open source project (and big ones like Kubernetes 
>> >> >> >>> are the worst offenders at this) where I find a bug or feature 
>> >> >> >>> request is closed simply due to lack of traction.
>> >> >> >>>
>> >> >> >>> I might be okay with a very long time (such as stale after 1 year 
>> >> >> >>> and close another year after that.)
>> >> >> >>>
>> >> >> >>> Ash
>> >> >> >>>
>> >> >> >>> On 12 February 2023 02:00:00 GMT, Pankaj Singh 
>> >> >> >>> <ags.pankaj1...@gmail.com> wrote:
>> >> >> >>>>
>> >> >> >>>> Hi Elad,
>> >> >> >>>>
>> >> >> >>>> Thanks for bringing this topic.
>> >> >> >>>>
>> >> >> >>>> I also feel we should have some automation to close the stale 
>> >> >> >>>> issue.
>> >> >> >>>>
>> >> >> >>>> Few questions I have
>> >> >> >>>> - We have currently more than 700 issues and many of them have 
>> >> >> >>>> had no activity since a year. What will we do with those issues?
>> >> >> >>>> - Why close only stale issues not stale PR's?
>> >> >> >>>>
>> >> >> >>>>
>> >> >> >>>> On Sun, Feb 12, 2023 at 1:23 AM Elad Kalif <elad...@apache.org> 
>> >> >> >>>> wrote:
>> >> >> >>>>>
>> >> >> >>>>> Hi everyone,
>> >> >> >>>>>
>> >> >> >>>>> It's been a while since we talked about the issue triage 
>> >> >> >>>>> process. Currently our process involves a lot of manual work of 
>> >> >> >>>>> pinging issue authors and I'm looking to automate some of it.
>> >> >> >>>>>
>> >> >> >>>>> Here are my suggestions:
>> >> >> >>>>>
>> >> >> >>>>> 1. add a new bot automation to detect core bug issues (kind:bug, 
>> >> >> >>>>> area:code) that are over 1 year old without any activity. The 
>> >> >> >>>>> bot will add a comment asking the user to check the issue 
>> >> >> >>>>> against the latest Airflow version and assign a 
>> >> >> >>>>> "pending-response" label. If the user will not respond the issue 
>> >> >> >>>>> will be marked stale and will be closed by our current stale bot 
>> >> >> >>>>> automation. I suggest 1 year here because in 1 year we usually 
>> >> >> >>>>> have 3 feature releases + many bug fixes which contain a lot of 
>> >> >> >>>>> fixes. We don't normally go back to check bugs on older versions 
>> >> >> >>>>> unless reporting as reproducible on the latest version. There 
>> >> >> >>>>> can be 2 outcomes of this:
>> >> >> >>>>>
>> >> >> >>>>> The author will comment and say it is reproducible in that case 
>> >> >> >>>>> we will assign the updated affected_version label and the issue 
>> >> >> >>>>> will be bumped up.
>> >> >> >>>>> The author will not comment. In that case we can assume the 
>> >> >> >>>>> problem is fixed/not relevant and the issue will be closed.
>> >> >> >>>>>
>> >> >> >>>>> 2. similar to (1) for providers with labels (kind:bug, 
>> >> >> >>>>> area:provider) and with a shortened time period of 6 months as 
>> >> >> >>>>> providers release frequently.
>> >> >> >>>>>
>> >> >> >>>>> 3. similar to (1) for airflow-client-python and 
>> >> >> >>>>> airflow-client-go with no labels and period of 6 months as well.
>> >> >> >>>>>
>> >> >> >>>>> 4. On another front, we sometimes miss the triage of new issues. 
>> >> >> >>>>> My suggestion is that any new issue opened will automatically 
>> >> >> >>>>> have a needs-triage label (this is practice several other 
>> >> >> >>>>> projects use) That way we can easily filter the list of issues 
>> >> >> >>>>> that need first review. When triaging the issue we will remove 
>> >> >> >>>>> the label and assign proper ones (good first issue, area, kind, 
>> >> >> >>>>> etc..)
>> >> >> >>>>>
>> >> >> >>>>> What do others think?
>> >> >> >>>>>
>> >> >> >>>>> Elad
>> >> >> >>>>>
>> >> >> >>>>>

Reply via email to