Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/BACKLOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -665,7 +665,7 @@ are closed (status: closed in frontmatter)._
- [ ] **[B-0395](backlog/P3/B-0395-operational-resonance-conversation-interface-path-a-browser-local-llm-2026-05-09.md)** Conversation interface Path A — embed browser/local LLM (WebLLM or transformers.js) in dashboard for in-context review discussion
- [ ] **[B-0422](backlog/P3/B-0422-clifford-algebraic-narrative-engine-pauli-symmetry-breaking-falsifiability-test-2026-05-12.md)** Clifford-algebraic narrative engine for testing the Pauli-symmetry-breaking-from-agenda-conservation prediction (research target identified by DeepSeek 2026-05-12)
- [ ] **[B-0499](backlog/P3/B-0499-z-of-i-dbsp-refinement-cartesian-dualism-2026-05-14.md)** Z[i]-weighted DBSP refinement — Cartesian-dualism candidate from afternoon-cascade
- [ ] **[B-0506](backlog/P3/B-0506-stale-worktree-prune-cadence-mechanization-2026-05-14.md)** Stale-worktree prune cadence — mechanize `git worktree prune --expire=now`
- [x] **[B-0506](backlog/P3/B-0506-stale-worktree-prune-cadence-mechanization-2026-05-14.md)** Stale-worktree prune cadence — mechanize `git worktree prune --expire=now`
- [ ] **[B-0514](backlog/P3/B-0514-author-missing-wwjd-grey-honest-memory-file-2026-05-14.md)** Author missing memory file: feedback_aaron_wwjd_keeps_the_grey_in_aaron_honest_devil_lives_in_the_grey_in_numbers_2026_05_12.md
- [ ] **[B-0515](backlog/P3/B-0515-architecture-as-externalization-of-aarons-dialectical-perception-dashboard-target-shift-2026-05-14.md)** Architecture-as-externalization-of-Aaron's-dialectical-perception — dashboard acceptance criteria target shift
- [ ] **[B-0517](backlog/P3/B-0517-memory-md-index-bloat-cleanup-cadence-2026-05-14.md)** MEMORY.md index bloat cleanup + entry-length enforcement cadence
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
---
id: B-0506
priority: P3
status: open
status: closed
title: "Stale-worktree prune cadence — mechanize `git worktree prune --expire=now`"
tier: factory-hygiene
effort: S
created: 2026-05-14
last_updated: 2026-05-14
last_updated: 2026-05-16
closed: 2026-05-16
depends_on: []
composes_with: [B-0400, B-0444]
tags: [worktree, hygiene, factory-cadence, multi-foreground-surface, friction-reducer]
Expand Down Expand Up @@ -65,3 +66,22 @@ This is a P3 friction-reducer, not a P0 substrate gap. The cleanup is straightfo
## Origin tick

`docs/hygiene-history/ticks/2026/05/14/1817Z.md` — this tick's shard documents the empirical observation and the manual cleanup.

## Resolution (2026-05-16)

Mechanization shipped 2026-05-14 via **PR #3225** (`feat(B-0506): mechanize stale-worktree audit — audit-stale-worktrees.ts (clean branch)`, merged).

The shipped tool [`tools/hygiene/audit-stale-worktrees.ts`](../../../tools/hygiene/audit-stale-worktrees.ts) implements every behavior named in "Proposed mechanization" above:

| Specified behavior | Status |
|---|---|
| Enumerate via `git worktree list --porcelain` | shipped |
| Existence-check each working-tree path | shipped |
| Markdown summary report (`--report PATH`) | shipped |
| `--prune` runs `git worktree prune --expire=now -v` | shipped |
| Exit codes (0 / 64 / 128) | shipped |
| DST-friendly (only timestamp non-deterministic) | shipped |

Phase 2 (GHA cron wire-up + per-Otto-process worktree isolation) is **out of scope** per the tool's own header comment and would compose with `factory-hygiene-audit-cadence.yml` if/when needed; that's a separate row, not a B-0506 obligation.

Row left open from 2026-05-14 to 2026-05-16 due to substrate drift — the mechanization PR landed but this row was never marked closed. Caught this tick by Otto-CLI 2026-05-16T04:19Z while picking a P3 friction-reducer; tried to claim+implement, discovered the tool already existed at the proposed path. Closing instead.
Loading