From 3997d3b4806baba93781e59797496dffe8f416b4 Mon Sep 17 00:00:00 2001 From: bestony <13283837+bestony@users.noreply.github.com> Date: Sat, 21 Feb 2026 07:01:56 +0000 Subject: [PATCH] feat(backlog): add scheduled-workflow-keepalive-for-inactivity requirement --- ...duled-workflow-keepalive-for-inactivity.md | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 backlog/20260221070156-scheduled-workflow-keepalive-for-inactivity.md diff --git a/backlog/20260221070156-scheduled-workflow-keepalive-for-inactivity.md b/backlog/20260221070156-scheduled-workflow-keepalive-for-inactivity.md new file mode 100644 index 0000000..c1ac8a1 --- /dev/null +++ b/backlog/20260221070156-scheduled-workflow-keepalive-for-inactivity.md @@ -0,0 +1,58 @@ +--- +source: backlog-discovery +dedupe_key: scheduled-workflow-keepalive +priority: P2 +generated_at: 2026-02-21T07:00:37Z +status: TODO +--- + + + +# Requirement: 为定时工作流提供仓库活跃度保活与自动恢复 + +## 1. Requirement Summary +- GitHub 会在仓库长期无提交时自动停用 scheduled workflows,导致 self 的定时自驱流程在无人感知的情况下停摆;仓库当前缺少自动保活或自动恢复机制。 + +## 2. Target Users +- 仓库维护者 +- 自动化平台负责人 + +## 3. Core Scenarios +- 仓库一段时间无提交导致定时工作流被自动停用,backlog/修复等流程不再运行 +- 需要在接近 60 天无活动时自动触发保活以维持定时任务持续运行 +- 发现 scheduled workflows 被停用后需要自动提示并一键恢复 + +## 4. User Problems +- GitHub 会在仓库长期无提交时自动停用 scheduled workflows,导致 self 的定时自驱流程在无人感知的情况下停摆;仓库当前缺少自动保活或自动恢复机制。 + +## 5. External Research Evidence +1. GitHub Docs - schedule event + - URL: https://docs.github.com/en/enterprise-server%403.15/actions/reference/workflows-and-actions/events-that-trigger-workflows + - 摘要: 官方文档指出公共仓库在 60 天无活动时会自动禁用 scheduled workflows。 +2. GitHub Docs - disable/enable workflow + - URL: https://docs.github.com/enterprise-cloud%40latest/actions/using-workflows/disabling-and-enabling-a-workflow + - 摘要: 官方文档提示定时工作流可能会被自动禁用,并支持通过 API/CLI/UI 重新启用。 +3. Keepalive Workflow Action + - URL: https://github.com/marketplace/actions/keepalive-workflow + - 摘要: Marketplace 中已有专门用于防止 cron 触发被停用的 keepalive Action,说明社区对保活机制有现实需求。 + +## 6. Proposed Solution Hypothesis +- 新增一个轻量保活 workflow,基于最近提交时间与阈值执行空提交或 API 更新,并在停用时自动发出恢复提醒。 + +## 7. Priority & Impact +- Priority: P2 +- Impact: 避免自驱系统因仓库不活跃而停摆,确保定时驱动的自治流程长期连续运行。 + +## 8. Acceptance Criteria +1. 新增保活任务,定期检查最近提交时间并在接近阈值时执行最小化保活操作(如空提交或 API 更新) +2. 当检测到 scheduled workflow 已被停用时,自动创建 issue/告警并提供恢复指引或自动恢复选项 +3. 保活行为应可配置(阈值天数、是否允许空提交、是否只提示不操作)并在摘要中记录 + +## 9. Metadata +- generated_at: 2026-02-21T07:00:37Z +- dedupe_key: scheduled-workflow-keepalive +- english_desc: scheduled-workflow-keepalive-for-inactivity +- source_workflow: Backlog Discovery +- source_repository: bestony/self +- source_run_id: 22252380279 +- source_run_attempt: 1