Skip to content

chore: Add automation for stale issues and PRs#1927

Merged
jaydeluca merged 5 commits intomainfrom
stale-automation
Mar 4, 2026
Merged

chore: Add automation for stale issues and PRs#1927
jaydeluca merged 5 commits intomainfrom
stale-automation

Conversation

@jaydeluca
Copy link
Collaborator

Based on the automation used in the otel java projects, but with longer thresholds

Signed-off-by: Jay DeLuca <jaydeluca4@gmail.com>
@jaydeluca jaydeluca requested review from Copilot and zeitlinger March 2, 2026 13:16
@jaydeluca jaydeluca changed the title Add automation for stale issues and PRs chore: Add automation for stale issues and PRs Mar 2, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a scheduled GitHub Actions workflow to automatically mark inactive PRs/issues as stale and close them after additional inactivity, using actions/stale with longer thresholds aligned to the referenced otel-java setup.

Changes:

  • Introduce an hourly scheduled workflow to stale/close PRs after 120 + 30 days of inactivity.
  • Introduce an hourly scheduled workflow to stale/close issues after 360 + 30 days of inactivity.
  • Configure required job-level permissions for actions/stale.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Signed-off-by: Jay DeLuca <jaydeluca4@gmail.com>
@jaydeluca
Copy link
Collaborator Author

I am once again unable to get linting to work locally to see what the issue is, and the CI output isnt helpful, i'll return to this later

when i run mise run format locally i am getting

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.542 s
[INFO] Finished at: 2026-03-02T08:51:43-05:00
[INFO] ------------------------------------------------------------------------
[ERROR] No plugin found for prefix 'spotless' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories [local (/Users/jay/.m2/repository), central (https://repo.maven.apache.org/maven2)] -> [Help 1]

zeitlinger added a commit that referenced this pull request Mar 3, 2026
Standalone example POMs don't inherit the spotless plugin from the
project parent, so `spotless:apply` fails when they're in the reactor
(JDK 25+ activates the examples-and-integration-tests profile).

Use the fully-qualified plugin goal with profile deactivation to
skip these modules. Add a `lint:example-poms` check to catch this
class of issue in the future.

Fixes #1927
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger
Copy link
Member

when i run mise run format locally i am getting

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.542 s
[INFO] Finished at: 2026-03-02T08:51:43-05:00
[INFO] ------------------------------------------------------------------------
[ERROR] No plugin found for prefix 'spotless' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories [local (/Users/jay/.m2/repository), central (https://repo.maven.apache.org/maven2)] -> [Help 1]

created #1931 for that

@zeitlinger
Copy link
Member

CI lint failure is a Prettier formatting issue on the workflow YAML.

Fix: mise run fix, then verify with mise run lint.

(I know the CI output doesn't make this obvious — filed flint#89 to add a hint to the failure output.)

zeitlinger added a commit that referenced this pull request Mar 4, 2026
## Summary
- `mise run format` (i.e. `spotless:apply`) fails on JDK 25+ because
  standalone example POMs don't inherit the spotless plugin from the
  project parent, but are pulled into the reactor via the
  `examples-and-integration-tests` profile
- Fix: use the fully-qualified plugin goal with profile deactivation
- Add `lint:example-poms` check to catch this class of issue

Relates
#1927 (comment)

## Test plan
- [x] `mise run format` succeeds
- [x] `lint:example-poms` passes with the fix
- [x] `lint:example-poms` fails when reverting the fix

---------

Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Copy link
Member

@zeitlinger zeitlinger left a comment

Choose a reason for hiding this comment

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

LGTM! Clean setup, good separation of PR vs issue timelines. One minor thought: hourly cron (23 * * * *) seems frequent for a stale bot — daily (e.g. 23 6 * * *) would work just as well and save CI minutes. But not a blocker.

Heads up: lint CI is failing — please fix before merge.

Signed-off-by: Jay DeLuca <jaydeluca4@gmail.com>
Signed-off-by: Jay DeLuca <jaydeluca4@gmail.com>
@jaydeluca jaydeluca merged commit 947f5d1 into main Mar 4, 2026
9 checks passed
@jaydeluca jaydeluca deleted the stale-automation branch March 4, 2026 11:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants