open-digger icon indicating copy to clipboard operation
open-digger copied to clipboard

[Metrics] Issue Response Time

Open xiaoya-yaya opened this issue 3 years ago • 1 comments

Description

  • This metric is an indication of how much time passes between the opening of an issue and a response from other contributors.
  • This metric is a specific case of the Time to First Response metric in the Common working group.

Filters

  • response from role in project (e.g., first maintainer response)
  • bot versus human (e.g., filter out automated “welcome first contributor messages”)
  • opened by role in project (e.g., responsiveness to new contributors versus long-timers)
  • date issue was opened
  • status of issue (e.g., only look at currently open issues)

Implementation

  • Average. Average response time in days.
  • Median. Median response time in days. image

Resource CHAOSS: Evolution -> Issue Resolution https://chaoss.community/metric-issue-response-time/

xiaoya-yaya avatar Jun 02 '21 05:06 xiaoya-yaya

This issue has not been replied for 24 hours, please pay attention to this issue: @sunshinemingo @wengzhenjie

open-digger-bot[bot] avatar Jun 04 '21 01:06 open-digger-bot[bot]

Hi, @frank-zsy . Here is the logic to implement this metric.

1670219534783

we use issue_comments = 0 to avoid computing those transferred issues that already have comments. Is there anything that needs to be modified in this logic?

longyanz avatar Dec 05 '22 06:12 longyanz

issue_comments = 0 this can be interpreted as follows:

  • If a issue create with issue_comments field not NULL, this issue must be a transferred issue otherwise it should be 0(If reopened, it should be reopened action)
  • And if a Issue transferred from other repo and it has IssueComment already. We don't need to calculate this issue again because it has been responsed.
  • If a Issue transferred from other repo and IssueComments==0. It means this Issue has not been response now so we calculate in current repo.

xgdyp avatar Dec 05 '22 07:12 xgdyp

@longyanz There are several things I would like to know:

  • When an issue is transferred from a repository to another, will there be a new opened action in event log?
  • There is an implementation detail can be discussed, when an issue transferred to a new repository, should we calculate the response time again for the new repository? Since a transferred issue is a new issue for the new repository, why should the response in old repository be counted?
  • For responsed_at, you use created action which is an action for comment related events, but I think closed is also a response right? Even label should be counted as a response but we have no label events in log.
  • And you use responsed_at != toDate('1970-1-1') to filter out the issues without any response, this do not make sense to me. To calculate the response time for an issue to a certain end time, I think the response time should be the time range from open to end time. In you implementation, issue without any response for a long time will have 0 response time, so response time for a dead repository will always be 0 which does not reflect the real state of the repository.

frank-zsy avatar Dec 06 '22 02:12 frank-zsy

Further more, I think you should open a pull request first and we can discuss the details on the pull request but not in this issue with an implementation screenshot.

frank-zsy avatar Dec 06 '22 02:12 frank-zsy