feat: Phase 4 — reusable "subscribe" workflow (+ dogfood it) #8

Merged
steve merged 2 commits from feat/phase4-reusable-wf into main 2026-06-27 23:42:02 +00:00
2 changed files with 13 additions and 3 deletions
Showing only changes of commit 27aa92a6e0 - Show all commits
+11 -2
View File
@@ -31,13 +31,21 @@ on:
base_url: { type: string, default: "" } # GADFLY_BASE_URL
provider_concurrency: { type: string, default: "" } # GADFLY_PROVIDER_CONCURRENCY
provider_lens_concurrency: { type: string, default: "" } # GADFLY_PROVIDER_LENS_CONCURRENCY
specialist_suite: { type: string, default: "" } # reserved / future
timeout_secs: { type: string, default: "" } # GADFLY_TIMEOUT_SECS (per lens)
max_steps: { type: string, default: "" } # GADFLY_MAX_STEPS
worker_model: { type: string, default: "" } # GADFLY_WORKER_MODEL
allowed_users: { type: string, default: "" } # GADFLY_ALLOWED_USERS
trigger_phrase: { type: string, default: "" } # GADFLY_TRIGGER_PHRASE
timeout_minutes: { type: number, default: 30 } # job wall-clock cap
# Job wall-clock cap. 45 > 30 as a default: a multi-model swarm or a slow
# lens (e.g. claude-code with extended thinking) can exceed 30 minutes.
timeout_minutes: { type: number, default: 45 }
# The reusable job posts the review comment, so it needs issues/PR write. Gitea
# caps these by the caller's granted permissions; declaring them here is explicit.
permissions:
contents: read
issues: write
pull-requests: write
jobs:
review:
@@ -61,6 +69,7 @@ jobs:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
GADFLY_API_KEY: ${{ secrets.GADFLY_API_KEY }}
CLAUDE_CODE_OAUTH_TOKEN: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
# Common named foreman/LAN endpoints (optional). Consumers with other
# GADFLY_ENDPOINT_<NAME>s need the full stub (examples/), since a
+2 -1
View File
@@ -39,7 +39,8 @@ jobs:
# the allowed_users override below).
if: >-
github.event_name != 'issue_comment'
|| github.actor == 'your-username'
|| (github.event.issue.pull_request && github.actor == 'your-username')
# Pin @<ref> to a Gadfly release tag for stability (@main tracks latest).
uses: steve/gadfly/.gitea/workflows/review-reusable.yml@main
secrets: inherit
with: