-
-
Notifications
You must be signed in to change notification settings - Fork 102
56 lines (50 loc) · 1.89 KB
/
Copy pathfider-stale.yml
File metadata and controls
56 lines (50 loc) · 1.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
name: Fider - Stale sweep
# Two-phase cleanup of long-stale Fider posts. Mirrors the spirit of the
# GitHub stale-issues workflow but tuned for a slower-moving feature board:
# only acts on posts older than 1.5 years with fewer than 3 votes.
#
# Phase 1: tag with 'stale' and post a "still relevant?" comment with a
# 30-day grace window. The user/maintainer can keep the post open
# by adding any comment, voting, or applying the 'never-stale' tag.
# Phase 2: 30 days after phase 1, if no engagement has happened (no comments
# newer than the bot's warn comment), set status=declined with a
# short explanation.
#
# Posts carrying any exempt tag (never-stale, planned, started, bug,
# enhancement, possibly-completed) are skipped entirely.
on:
schedule:
- cron: "0 6 * * 0"
workflow_dispatch:
inputs:
dry_run:
description: "Log decisions without tagging, commenting, or declining"
type: boolean
default: true
jobs:
guard_manual_run:
uses: ./.github/workflows/guard-manual.yml
permissions:
contents: read
with:
enabled: ${{ github.event_name == 'workflow_dispatch' }}
actor: ${{ github.actor }}
source: manual workflow run
sweep:
needs: guard_manual_run
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v7
- uses: actions/setup-node@v6
with:
node-version: 22
- name: Run Fider stale sweep
env:
FIDER_HOST: ${{ vars.FIDER_HOST || 'https://features.maintainerr.info' }}
FIDER_API_KEY: ${{ secrets.FIDER_API_KEY }}
DRY_RUN: ${{ github.event_name == 'workflow_dispatch' && inputs.dry_run || 'false' }}
DISCORD_FIDER_BOT_WEBHOOK: ${{ secrets.DISCORD_FIDER_BOT_WEBHOOK }}
DISCORD_PING_ROLE_ID: ${{ secrets.DISCORD_PING_ROLE_ID }}
run: node tools/fider-stale.mjs