stale: Stale label not being removed after new activity

Describe your issue

The stale label isn’t being removed from PRs when there’s new activity even though remove-stale-when-updated isn’t set.

Your stale action configuration

on:
  push:
    paths:
      - .github/workflows/triage-issues.yml
  schedule:
    # Once every day at midnight UTC
    - cron: "0 0 * * *"
  issue_comment:

jobs:
  stale:
    if: >
      startsWith(github.repository, 'Homebrew/') && (
        github.event_name != 'issue_comment' || (
          contains(github.event.issue.labels.*.name, 'stale') ||
          contains(github.event.pull_request.labels.*.name, 'stale')
        )
      )
    runs-on: ubuntu-latest
    steps:
      - name: Mark/Close Stale Issues and Pull Requests
        uses: actions/stale@v3
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
          days-before-stale: 21
          days-before-close: 7
          stale-issue-message: >
            This issue has been automatically marked as stale because it has not had
            recent activity. It will be closed if no further activity occurs.
          stale-pr-message: >
            This pull request has been automatically marked as stale because it has not had
            recent activity. It will be closed if no further activity occurs.
          exempt-issue-labels: "gsoc-outreachy,help wanted,in progress"
          exempt-pr-labels: "gsoc-outreachy,help wanted,in progress"

Further context

I made a comment on https://github.com/Homebrew/brew/pull/11140#issuecomment-835407365 that should have caused the action to remove the stale label. The action did run successfully (the logs are available here). Here are the relevant lines from the logs:

[#11140] Found this pull request last updated 2021-05-08T15:44:35Z
[#11140] The option "onlyLabels" was not specified. Continuing the process for this pull request
[#11140] Days before pull request stale: 21
[#11140] The pull request is not closed nor locked. Trying to remove the close label...
[#11140] There is no close label on this pull request. Skip
[#11140] This pull request has a stale label
[#11140] This pull request has no assignee
[#11140] Skip the assignees checks
[#11140] Found a stale pull request
[#11140] Checking for label on pull request
[#11140] Pull request marked stale on: 2021-05-08T15:44:35Z
[#11140] Checking for comments on pull request since 2021-05-08T15:44:35Z
[#11140] Comments not made by actor or another bot: 0
[#11140] Pull request has been commented on: false
[#11140] Days before pull request close: 7
[#11140] Pull request has been updated: true
[#11140] Stale pull request is not old enough to close yet (hasComments? false, hasUpdate? true)

The line that says Pull request marked stale on: 2021-05-08T15:44:35Z seems to be incorrect, as the stale label was added 16 hours ago before that time. I wonder if the action is using the time of the latest comment as the time that the stale label was added.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 2
  • Comments: 20 (13 by maintainers)

Commits related to this issue

Most upvoted comments

Thanks for working on this, @C0ZEN! ✨🎉

Did a quick test with this and it looks like it will fix our issue. Once this is released and we start using it I’ll follow up if things still aren’t working.

Thanks, @luketomlinson and @C0ZEN!

Did a quick test using the main branch and it seems to fix our problem! 🎉 (hopefully for real this time)

Are there any suggested workarounds for this? We were running into this as well (here is an issue where the comment is ignored: https://github.com/projen/projen/issues/723 and here is how the GitHub action was set up: https://github.com/projen/projen/blob/139d9e3fb66dffdcc976c5a6e873c98099258fcf/.github/workflows/stale.yml )

@luketomlinson could you reopen please?

@Rylan12 “I hope it’s working as expected.”… The only time I say this and bingo a bug is introduced…

Hi @C0ZEN I tested it on a testrepo for me but somehow it doesnt work as expected, I guess.

The issue was already old enough for being stale but the workflow didnt start yet. After a comment on issue https://github.com/MAGICCC/teststale/issues/3 the workflow triggered and added a comment on https://github.com/MAGICCC/teststale/issues/4 + https://github.com/MAGICCC/teststale/issues/5 and added stale label + removed it again.

[#5] Issue #5
  [#5] Found this issue last updated at: 2021-06-13T13:51:22Z
  [#5] The option only-labels (​https://github.com/actions/stale#only-labels​) was not specified
  [#5] └── Continuing the process for this issue
  [#5] Days before issue stale: 1
  [#5] The issue is not closed nor locked. Trying to remove the close label...
  [#5] ├── The close-issue-label (​https://github.com/actions/stale#close-issue-label​) option was not set
  [#5] └── Skipping the removal of the close label
  [#5] This issue hasn't a stale label
  [#5] The option any-of-labels (​https://github.com/actions/stale#any-of-labels​) was not specified
  [#5] └── Continuing the process for this issue
  [#5] This issue has no milestone
  [#5] └── Skip the milestones checks
  [#5] This issue has no assignee
  [#5] └── Skip the assignees checks
  [#5] This issue is not stale
  [#5] This issue should be stale based on the last update date the 13-06-2021 (2021-06-13T13:51:22Z)
  [#5] This issue should be marked as stale based on the option days-before-stale (​https://github.com/actions/stale#days-before-stale​) (1)
  [#5] Marking this issue as stale
  [#5] This issue is now stale
  [#5] This issue is already stale
  [#5] Checking for label on this issue
  [#5] Issue marked stale on: 2021-06-14T16:21:58Z
  [#5] Checking for comments on issue since: 2021-06-14T16:21:58Z
  [#5] Comments not made by actor or another bot: 0
  [#5] Issue has been commented on: false
  [#5] Days before issue close: 2
  [#5] Issue has been updated: true
  [#5] The option remove-stale-when-updated (​https://github.com/actions/stale#remove-stale-when-updated​) is: true
  [#5] The stale label should not be removed due to an update
  [#5] The option remove-stale-when-commented (​https://github.com/actions/stale#remove-stale-when-commented​) is: true
  [#5] The stale label should not be removed due to a comment
  [#5] Remove the stale label since the issue has an update and the workflow should remove the stale label when updated
  [#5] The issue is no longer stale. Removing the stale label...
  [#5] Removing the label "stale" from this issue...
  [#5] The label "stale" was removed
  [#5] Skipping the process since the issue is now un-stale
  [#5] 4 operations consumed for this issue

Maybe I did something wrong…

@Rylan12 sure, thanks for the feedbacks and I hope it’s working as expected.

I think, this PR can fix this problem with issue_comment https://github.com/actions/stale/pull/390