fastmcp/.github/workflows/gate-digest.yml
nate nowack 561c99f91d
ci: add a twice-daily digest of PRs waiting on the issue-link gate (#5283)
* ci: add a daily digest of PRs waiting on the issue-link gate

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014vUYwD7iJSRQyEmDHtCB7C

* ci: echo the gate digest to the job log too

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014vUYwD7iJSRQyEmDHtCB7C

* ci: fail the gate digest step when the script fails

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014vUYwD7iJSRQyEmDHtCB7C

* ci: run the gate digest twice a day

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014vUYwD7iJSRQyEmDHtCB7C

* ci: match the gate's link parsing and decline only on facts in the digest

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014vUYwD7iJSRQyEmDHtCB7C

---------

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-26 02:48:31 -05:00

36 lines
1 KiB
YAML

name: Gate queue digest
description: Sorts contributor PRs waiting on the issue-link gate into a job summary
on:
schedule:
- cron: "0 13,21 * * *" # 1 PM and 9 PM UTC
workflow_dispatch:
pull_request:
paths:
- ".github/workflows/gate-digest.yml"
- "scripts/gate_digest.py"
permissions:
contents: read
issues: read
pull-requests: read
jobs:
digest:
# Fork PRs can't read the Jev key.
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Checkout repository
uses: actions/checkout@v7
- name: Install uv
uses: astral-sh/setup-uv@v10.1.0
- name: Write the digest
# An explicit bash shell runs with pipefail, so a failing script fails the step.
shell: bash
run: uv run scripts/gate_digest.py | tee -a "$GITHUB_STEP_SUMMARY"
env:
GH_TOKEN: ${{ github.token }}
TYPESAFE_API_KEY: ${{ secrets.TYPESAFE_API_KEY }}