Skip to content

add stale workflow#24681

Draft
craig-osterhout wants to merge 4 commits intodocker:mainfrom
craig-osterhout:engdocs-3228
Draft

add stale workflow#24681
craig-osterhout wants to merge 4 commits intodocker:mainfrom
craig-osterhout:engdocs-3228

Conversation

@craig-osterhout
Copy link
Copy Markdown
Contributor

@craig-osterhout craig-osterhout commented Apr 9, 2026

Description

This PR adds a GitHub Actions workflow to automatically mark and close stale issues and PRs, helping maintainers focus on active items. The old app/bot stopped working around mid 2025 and was disabled. This reimplements it using a GitHub Action with additional slash command functionality.

Timeframes

  • Mark as stale: After 180 days (6 months) of inactivity
  • Close stale issues: After 14 additional days of no activity
  • Close stale PRs: After 30 additional days of no activity

Exempt Labels

Issues and PRs with any of these labels will never be marked as stale:

  • kind/help wanted
  • status/need-more-info
  • status/needs-analysis
  • lifecycle/frozen

How to Keep Issues/PRs Active

To prevent an issue or PR from being marked as stale or closed:

Anyone can:

  1. Add a comment - any comment resets the inactivity timer
  2. Use /lifecycle active - removes the stale label via slash command

Maintainers can also:
3. Use /lifecycle frozen - prevents the issue/PR from ever being marked stale
4. Add exempt labels - manually apply one of the labels listed above
5. Make any update - editing the description, adding labels, or any activity resets the timer

Slash Commands

The workflow supports these lifecycle commands (comment them on any issue/PR):

Command Access Description
/lifecycle active Anyone Removes the stale label
/lifecycle frozen Write access required Prevents stale marking
/lifecycle stale Write access required Manually marks as stale
/remove-lifecycle frozen Write access required Removes frozen label
/remove-lifecycle stale Anyone Removes stale label

Commands respond with a 👍 reaction when successful, 👎 when permission is denied.

Messages

When marked as stale, issues and PRs receive a friendly comment explaining:

  • The situation and timeline for closure (14-30 days)
  • How to remove the stale label using /lifecycle active
  • How maintainers can freeze with /lifecycle frozen

Debug Mode

The workflow is currently set to debug mode for both components:

Stale action (debug-only: true):

  • ✅ Runs and logs what actions it would take
  • ❌ No actual changes will be made (no labels, comments, or closures)

Lifecycle commands (DEBUG_ONLY: 'true'):

  • ✅ Logs what would happen when slash commands are used
  • ❌ No labels added, removed, or permission checks enforced

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
@netlify
Copy link
Copy Markdown

netlify bot commented Apr 9, 2026

Deploy Preview for docsdocker ready!

Name Link
🔨 Latest commit fc2717a
🔍 Latest deploy log https://app.netlify.com/projects/docsdocker/deploys/69d91f647708360008d47379
😎 Deploy Preview https://deploy-preview-24681--docsdocker.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@craig-osterhout
Copy link
Copy Markdown
Contributor Author

/review

Copy link
Copy Markdown
Contributor

@docker-agent docker-agent bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assessment: 🟢 APPROVE

This workflow configuration looks good. The debug mode is intentionally enabled as documented in the PR description, which is a safe approach for initial deployment.

One minor consideration for future optimization: the operations-per-run: 30 limit processes up to 30 items per day. If the repository accumulates many stale issues/PRs, you may want to increase this value (e.g., 100-300) to ensure timely processing. The current value is the recommended default and should work fine for most cases.

Copy link
Copy Markdown
Contributor

@docker-agent docker-agent bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assessment: 🟡 NEEDS ATTENTION

Found 1 issue that should be addressed to improve maintainability.

Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
@craig-osterhout craig-osterhout added the github_actions Pull requests that update GitHub Actions code label Apr 9, 2026
Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
Signed-off-by: Craig Osterhout <craig.osterhout@docker.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant