Skip to content

Quick notes on how to wait 24-48 hours before assigning (copied from my Slack message) #11

@DilumAluthge

Description

@DilumAluthge

Quick notes while I'm brainstorming.

  1. Use GitHub api to pull all PRs on JuliaLang/julia that are LESS than M days old for some value of M. E.g. M=30. If we are smart about our query parameters, we can make it so the number of GitHub api calls we need is low, and the number of results is also low.
  2. Exclude PRs where the PR author is a committer.
  3. For each PR:
    a. Check how old the PR is. If PR is less than N days old, we are done. Set e.g. N = 3 or 4 days. Or even N = 7 days. N must be less than our search/lookback period M.
    b. Check if PR has assignee. If PR does have assignee, and if assignee is committer, then we are done.
    c. Grab username of all people commenting on PR. If any of those people are a committer, we are done
    d. Grab username of all people that have left review on PR. If any of those people are a committer, we are done.
    e. If none of the above have been satisfied, then pick a random person from https://github.com/JuliaLang/pr-assignment and assign them. At this point, I think the bot should also post a comment that username-pings the assignee, so that they become more aware that they've been assigned.

Run this as a cron job, e.g. every 24 hours.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions