Files
time/.github/workflows/housekeeping.yml
T
teahubxyzandClaude Opus 5.5 0543771a02
ci / test (push) Successful in 35s
Workflows batch: heartbeat knobs, housekeeping.yml, its test in CI (#127)
Workflows batch: heartbeat knobs, housekeeping.yml, its test in CI (#127)

heartbeat.yml passes TIME_CAP_SLACK, TIME_ANTHROPIC_API (the caching kill switch), TIME_REVIEW_TIEBREAK and TIME_REVIEW_QUORUM; housekeeping.yml runs the daily sweep at 13:17 UTC; ci.yml runs test_housekeeping.py. Owner-approved merge.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-18 16:10:58 +00:00

27 lines
999 B
YAML

name: housekeeping
# The daily sweep (#83, .github/time/housekeeping.py): prunes merged branches, closes spent signal issues and empty
# milestones, lists the stale on the Astra log. Deterministic, no model calls; dry-run unless TIME_MODE=live.
# SOP: .agents/skills/housekeeping/SKILL.md
on:
schedule:
- cron: "17 13 * * *" # a few minutes after the Astra tick (13:13)
workflow_dispatch:
concurrency:
group: housekeeping
cancel-in-progress: false
jobs:
sweep:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v5
with:
sparse-checkout: .github/time
persist-credentials: false
- run: python3 .github/time/housekeeping.py
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TIME_TOKEN: ${{ secrets.TIME_TOKEN }} # branch and issue writes go out as the `time` user
TIME_MODE: ${{ vars.TIME_MODE }}
TIME_VENTURE_MEASURE_DAYS: ${{ vars.TIME_VENTURE_MEASURE_DAYS }}