Skip to content

Commit 71cef97

Browse files
committed
ci(warden): schedule warden-sweep weekly via dedicated workflow
Re-register warden-sweep in warden.toml with a schedule trigger (no pull_request trigger, so it does not run on every PR) and add a dedicated workflow that fires manually (workflow_dispatch) and weekly (Mondays 06:00 UTC). Schedule-triggered skills require a paths filter; sweep is scoped to src/**/*.ts and scripts/** with tests/fixtures/snapshots ignored. The schedule block enables a tracking issue and draft fix PRs prefixed with warden-sweep.
1 parent c2936ff commit 71cef97

2 files changed

Lines changed: 48 additions & 2 deletions

File tree

.github/workflows/warden-sweep.yml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Warden Sweep
2+
3+
on:
4+
workflow_dispatch:
5+
schedule:
6+
# 06:00 UTC every Monday
7+
- cron: "0 6 * * 1"
8+
9+
# contents: write required for sweep to open draft fix PRs
10+
# issues: write required for the sweep tracking issue
11+
permissions:
12+
contents: write
13+
issues: write
14+
pull-requests: write
15+
checks: write
16+
17+
jobs:
18+
sweep:
19+
runs-on: ubuntu-latest
20+
env:
21+
WARDEN_MODEL: ${{ secrets.WARDEN_MODEL }}
22+
WARDEN_SENTRY_DSN: ${{ secrets.WARDEN_SENTRY_DSN }}
23+
steps:
24+
- uses: actions/checkout@v4
25+
- uses: getsentry/warden@v0
26+
with:
27+
anthropic-api-key: ${{ secrets.WARDEN_ANTHROPIC_API_KEY }}

warden.toml

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,27 @@ failOn = "high"
1616
# reportOn: minimum severity that creates PR annotations
1717
reportOn = "medium"
1818

19-
# warden-sweep is intentionally NOT registered here — it's a full-repo manual
20-
# sweep. Invoke directly: `warden --skill warden-sweep`
19+
# warden-sweep is a full-repo sweep. PR-trigger is intentionally omitted so
20+
# it does not run on every PR. It runs:
21+
# - On schedule via .github/workflows/warden-sweep.yml (workflow_dispatch + cron)
22+
# - Locally via `warden --skill warden-sweep`
23+
[[skills]]
24+
name = "warden-sweep"
25+
paths = ["src/**/*.ts", "scripts/**/*.{js,mjs,sh,ts}"]
26+
ignorePaths = [
27+
"**/*.test.ts",
28+
"**/__tests__/**",
29+
"**/__fixtures__/**",
30+
"**/__snapshots__/**",
31+
]
32+
33+
[[skills.triggers]]
34+
type = "schedule"
35+
36+
[skills.triggers.schedule]
37+
issueTitle = "Warden weekly sweep"
38+
createFixPR = true
39+
fixBranchPrefix = "warden-sweep"
2140

2241
[[skills]]
2342
name = "xcodebuildmcp-docs-release-review"

0 commit comments

Comments
 (0)