[WIP] Remind an assignee midweek when feedback stays unanswered
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 45/100
- Issue-Typ
- Feature
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- github-actions, javascript
- Bereich
- devops
Rechercherichtung
Read the inactivity helper from #128, scripts/constants.js, and the existing sweep and hasRecentBotComment helper to understand the shared trigger and exemptions. Follow the automation testing guide in docs/testing-automations.md and dispatch the workflow in test-actions. Done means the Thursday reminder links pending feedback, states the assignment end date, skips exempt or ineligible assignees, and passes the listed repeat and sweep checks.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Overview
The sweep unassigns a contributor with no warning. The first message they receive is the
unassignment itself. With the limit dropping to 14 days in #128, a contributor who misses one
week of feedback loses the issue.
Add a midweek reminder. It comments when feedback stays unanswered, and it names what it waits
for and the date the assignment ends.
Context
#128 defines inactivity as feedback that the assignee left unanswered. That gives the reminder a
clean trigger, because the same helper returns the pending feedback and its age.
The reminder posts a bot comment. Under #128 a bot comment starts no clock and answers nothing,
so the reminder never extends the assignment it warns about. Today it would, because the sweep
reads issue.updated_at.
The Change
Add an inactivity-reminder automation. A new script, a new leaf, and a registry entry on a
Thursday cron, 1 0 * * 4. The sweep stays on Monday.
Comment when feedback stays unanswered for INACTIVITY_WARNING_DAYS, set to 7 in
scripts/constants.js. The reminder reads the pending feedback helper that #128 exports, so the
sweep and the reminder agree on the number.
Name the feedback and the deadline. The comment links the comment or review that waits for an
answer, and it states the date the assignment ends. It asks for a commit or a pull request, not
for a confirmation of interest, because under #128 a comment only delays the removal by
COMMENT_GRACE_DAYS and never answers the feedback.
Post at most once a week per issue. The comment carries an INACTIVITY_REMINDER marker, and
the script uses the existing hasRecentBotComment helper to skip an issue it already warned.
Use the same exemptions as the sweep. Organization members and site admins are skipped.
Cadence
Removal runs Monday at 14 days, and the reminder runs Thursday at 7 days:
| Range | |
|---|---|
| Notice before removal | 4 to 11 days |
| Unanswered feedback to removal | 14 to 20 days |
A comment from the assignee adds the COMMENT_GRACE_DAYS window from #128, so the upper figure
becomes 27 days in that case.
The spread comes from the weekly crons. Feedback that lands on a Tuesday waits until day 20,
because day 13 is a Monday and the limit is not met yet. Running both daily makes it exactly 7
days of notice and removal at 14. The sweep job took 14 seconds on kolibri on 2026-10-26, so
cost is not the obstacle.
Out of Scope
- Changing
INACTIVITY_DAYSor what counts as an answer. Both belong to #128. - Reminding anyone other than the assignee.
- Any reminder on a pull request that carries no linked issue.
Acceptance Criteria
- An assignee with feedback unanswered for 7 days receives a comment.
- The comment links the feedback it waits for and states the date the assignment ends.
- An assignee with no feedback pending receives nothing.
- An assignee waiting on review receives nothing.
- The reminder posts at most once a week on one issue.
- The reminder does not reset the inactivity clock.
- Organization members and site admins receive nothing.
- An assignee who answers after a reminder is not unassigned.
Testing
Test in test-actions. See
testing the automations.
Dispatch the workflow by hand rather than waiting for the cron.
- Assign a contributor account, comment from the maintainer account, then dispatch the reminder.
Expect no comment, because the feedback is recent. - Backdate the feedback past 7 days and dispatch the reminder. Expect one comment that links the
feedback and names the end date. - Dispatch the reminder again. Expect no second comment.
- Dispatch the sweep. Expect no unassignment, because the limit is 14 days.
- Answer the feedback from the contributor account, then dispatch both. Expect no comment and no
unassignment.
References
#128 defines the measure this reminder reads, and it must land first. #127 covers the cooldown
after a removal.
AI usage
I used Claude Code to confirm the cron and runtime of the current sweep, to check that
hasRecentBotComment already supports a marker and a window, and to work out the notice range
that two weekly crons produce. I decided the Thursday cadence and the 7-day warning point.
- Vorherrschende Sprache
- JavaScript
- Sterne
- 1
- Forks
- 7
- Ø Merge
- 2 T. 8 Std.
- Gemergte PRs (30 T.)
- 10
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus learningequality/.github
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
learningequality/.github#112 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 42/100
learningequality/.github#130 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 24/100
learningequality/.github#128 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 58/100
learningequality/.github#127 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Migrate generate-automation.js to js-yaml 5Evtl. vergeben @rtibblesbot hat das vor 2 Tagen übernommen. Offencommunity-contribution-in-progress dependencies javascript
learningequality/.github#122 · 1 Kommentar · 1 Reaktion · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in learningequality/.github
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 12 Tagen
-
[Bug]: Payment providers removed from config are never disabled in payment_providerEvtl. vergeben @medusa-os-bot hat das heute übernommen. Offentype: bug
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 82/100
medusajs/medusa#17544 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:cli good first issue priority:medium type:feature
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
PicadoLabs/build-with-ai#199 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Cookies with valid Max-Age are omitted when Expires is in the pastEvtl. vergeben @Max-Reisinger hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
sagemathinc/sagebrush#252 ·
Maintainer antworten meist innerhalb von 1 Tag