Files
timmy-home/docs/STALE_PR_POLICY.md
Alexander Payne aa2ea7b5a1
Some checks failed
Self-Healing Smoke / self-healing-smoke (pull_request) Failing after 19s
Agent PR Gate / gate (pull_request) Failing after 37s
Smoke Test / smoke (pull_request) Failing after 28s
Agent PR Gate / report (pull_request) Successful in 23s
docs: add 7-day stale-conflict PR policy
Issue #491 requires a documented 7-day stale-conflict policy.
This commit adds docs/STALE_PR_POLICY.md specifying:

- 7-day threshold for merge-conflicted PRs
- Standard closure procedure with rationale comment
- Exceptions for active milestones, explicit requests, experimental work
- Daily check → pester → close workflow

Closes #491
2026-04-29 21:20:40 -04:00

1.6 KiB

Stale/Blocked PR Policy

Scope: hermes-agent and all Timmy_Foundation repositories
Effective: 2026-04-29
Related: Issue timmy-home#491, hermes-agent#129/#108/#107

Purpose

Blocked or merge-conflicted PRs stall delivery and clutter the pipeline. This policy defines when such PRs must be closed and how exceptions are handled.

7-Day Stale-Conflict Rule

  • A PR that cannot be merged due to merge conflicts and remains in that state for 7 consecutive days is considered stale-blocked.
  • Stale-blocked PRs should be closed with a comment explaining:
    1. why the PR is being closed (merge conflicts, unrebased)
    2. whether the underlying work is still needed
    3. how to rebase or reopen if still relevant
  • The closure comment should reference the related issue(s) or epic.

Exceptions

A PR may be exempt from automatic closure if:

  • It is linked to an active milestone with an explicit rebase plan
  • The author has explicitly requested extra time in a comment
  • The PR is kept open intentionally for long-running experimental work (must carry the experimental label)

Process

  1. Daily check (via cron): scan all open PRs with mergeable = false
  2. Age filter: if PR is >7 days old and blocked = true or conflicts present → flag
  3. Comment: pester author to rebase within 48h
  4. Close: if no action after 48h, close with standard closure message

Record

Closed PRs are documented in:

  • timmy-home: the cross-audit triage report links to closed PRs
  • hermes-agent: closure comments explain the decision in each case

This policy directly implements timmy-home#491's final acceptance criterion.