[PERPLEXITY-04] Branch sprawl cleanup — count, assess, delete #389
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Part of Epic: #385
You filed #376 about branch sprawl. Execute it.
For every repo: list stale branches (>7 days, no active PR), assess, delete.
Agents create branches and never clean up. The repos are littered with dead branches from failed runs.
Acceptance Criteria
Branch Sprawl Audit — April 8, 2026
Full branch inventory across all 4 repos via API. Date: 2026-04-08. Stale threshold: >7 days with no active PR.
Summary
~74 dead branches across the org. That's 64% of all non-main branches.
the-nexus — 35 non-main branches
Active (open PR):
claude/issue-1125— PR #1131 (desktop automation), approvedclaude/issue-1126— PR #1130 (edge-tts), approvedperplexity/soul-md-pointer— PR #1133 (SOUL.md pointer), merged todayRecent (<7 days, no PR — likely just merged or WIP):
feat/mempalace-api-add-*— today, merged PRclaude/issue-1112— today, mergedgroq/issue-1126— Apr 7groq/issue-1118,groq/issue-1119— Apr 7groq/issue-1047— Apr 7groq/issue-915— Apr 7claude/issue-1075— Apr 7groq/issue-917,groq/issue-918— Apr 7groq/issue-1103,groq/issue-1105,groq/issue-1106,groq/issue-1108— Apr 7STALE — DELETE CANDIDATES (>7 days, no active PR):
groq/issue-1092— Apr 7, merged PRgroq/issue-1095— Apr 7, merged PRgroq/issue-1098— Apr 7, merged PRgroq/issue-913— Apr 6, merged PRtimmy/issue-fix-896-897-898-910— Apr 6, mergedclaude/issue-823— Apr 6, mergedclaude/issue-879— Apr 6, mergedclaude/issue-880— Apr 6, WIP salvage commitclaude/issue-827— Apr 6, mergedclaude/issue-882— Apr 6, mergedclaude/issue-826— Apr 6, mergedclaude/issue-836— Apr 6, mergedclaude/issue-832— Apr 6, mergedclaude/issue-833— Apr 6, WIP salvage committimmy/issue-855— Apr 6, mergedallegro/self-improvement-infra— Apr 6, mergedezra/deep-dive-architecture-20260405— Apr 5claude/modularization-phase-1— Mar 24gemini/issue-431— Mar 24hermes-agent — 35 non-main branches
STALE — DELETE CANDIDATES:
fix/kimi-fallback-model— Apr 7, PR merged (#225)bezalel/self-awareness-epic-203— Apr 7, mergedbezalel/pr-215-rescue— Apr 7perplexity/mempalace-tests— Apr 7, closed PRupstream-sync— Apr 7, mergedbezalel/fix-gitea-ci-runner-host-mode— Apr 7, mergedclaude/issue-192— Apr 7, mergedclaude/issue-190— Apr 7, mergedbezalel/fix-indentation-error— Apr 7, mergedbezalel/gitea-workflow-skill— Apr 7, mergedrescue/ollama-provider— Apr 6, mergedrescue/v011-obfuscation-fix— Apr 6claw-code/issue-151— Apr 7claw-code/issue-126— Apr 6groq/issue-168— Apr 6timmy/issue-169-ollama-provider— Apr 6, mergedgemini/issue-24— Apr 6, WIP salvagebezalel/syntax-guard-ci— Apr 7, mergedclaude/issue-128thruclaude/issue-155— Apr 6, all mergedbezalel/notebook-workflow-demo— Apr 7bezalel/forge-health-check— Apr 6, mergedepic-999-phase-ii-forge— Apr 6allegro/m1-stop-protocol— Apr 6timmy/issue-123-process-resilience— Apr 6, mergedtimmy/issue-116-config-validation— Apr 6, mergedepic-999-phase-i— Apr 6security/*branches — Mar 30-31, mergedfix/sqlite-contention— Mar 30, mergedgemini/security-hardening— Mar 31gemini/sovereign-gitea-client— Mar 31timmy-custom— Mar 31timmy-config — 27 non-main branches
Recently merged (safe to delete):
perplexity/pr-checklist-ci— today, PR #411 mergedperplexity/soul-md-disambiguation— today, PR #412 mergedSTALE — DELETE CANDIDATES:
perplexity/wire-enforcer-sovereign-store— today but PR already mergedperplexity/mempalace-architecture-doc— today, mergedperplexity/sovereign-memory-store— today, mergedtimmy/fleet-phase3-5— todayfeat/bezalel-wizard-sidecar-v2— todaytimmy/gallery-submission— todaytimmy/sovereign-orchestrator-v1— todaygroq/issue-371— Apr 8harden-soul-anti-claude— Apr 7, mergedtimmy/mempalace-integration— Apr 7, mergedtimmy/fleet-capacity-inventory— Apr 7, mergedtimmy/orchestrator-fix— Apr 7, mergedtimmy/fleet-resources-tracker— Apr 7, mergedtimmy/japanese-wisdom-guards— Apr 7, mergedmaster— legacy default branch, Apr 6codex/workflow-pr-review— Apr 4backup/main-before-reset-*— Mar 28gemini/issue-9thrugemini/issue-22— Mar 26, all mergedmanus/dpo-data-pipeline— Mar 25feature/dpo-training-pipeline— Mar 25Timmy Learning Notes
Why this matters: Every stale branch is cognitive clutter. When agents list branches to find what to work on, they see 35 branches in hermes-agent alone. Most are already merged. This causes:
The pattern Timmy should internalize: After merging a PR, delete the source branch. Gitea has a checkbox for this. Every agent should be configured to auto-delete on merge. This is a one-time setting change that prevents all future sprawl.
Specific anti-pattern observed: Groq/Bezalel branches (groq/issue-*) are the worst offenders — ~20 stale branches across repos. The orchestrator creates branches but never cleans up after merge. This needs a post-merge hook or the "Delete branch after merge" setting enabled in Gitea repo settings.
Recommended Actions
Awaiting confirmation to proceed with API deletions.