Skip to content

[treehouse#31] fix(pool): prune stale worktree registrations before adding in get #496

Description

@github-actions

Decision needed - treehouse#31

PR review by e-jung · merge-ready

fix(pool): prune stale worktree registrations before adding in get

Situation

  • Compliance: n/a
  • Tests: green
  • Configured checks: check (informational: pass), test (macos-latest) (test: pass), test (ubuntu-latest) (test: pass), test (windows-latest) (test: pass)
  • Freshness: complete target observation as of 2026-08-01T03:59:05Z
  • Notes: compliance=n/a tests=green

Related work

Note

Related-work context is truncated (comparison_incomplete): comparison across open pull requests is incomplete, so a relation may be missed; this says nothing about the target itself. The candidate list, shared paths, and references are advisory display only and never an overlap or action gate.

  • kunchenguid/treehouse#51 - fix(cmd): resolve main repo root for pool commands run inside a worktree - exact shared path: cmd/e2e_test.go
  • kunchenguid/treehouse#76 - feat(config): discover treehouse.toml in ancestor directories - exact shared path: cmd/e2e_test.go

Advisory context only. Shared paths and references are not an auto-merge overlap gate.

Auto-merge criteria

Note

Read-only preflight from the authoritative auto-merge evaluator. A displayed MET result never authorizes a merge: Wheelhouse re-evaluates every gate and performs G7 immediately before acting.

Scope

  • MET Scope - merge-ready PR review - kind=pr-review bucket=merge-ready

Safety

  • MET Safety - complete healthy scan - repo scan is ok, complete, and mergeability settled
  • MET Safety - target PR is open - target PR is open and unmerged
  • MET Safety - no per-PR auto-merge opt-out - wheelhouse:no-auto-merge is absent
  • MET Safety - head SHA unchanged - scan and live head 68f055f0

G0 (repo)

  • MET G0 - repository auto-merge enabled - enabled by effective repository policy
  • MET G0 - default-branch VISION.md present - default-branch VISION.md dcc4129a

G1 (card)

G2 (files)

  • MET G2 - complete immutable file list - 5 immutable changed path entries read
  • MET G2 - workflow and security exclusions clear - no unconditional workflow/security/governance exclusions

G3 (author)

  • MET G3 - non-maintainer human contributor - e-jung is a non-maintainer human
  • UNMET G3 - prior merged contribution in this repo - G3 author e-jung has no prior merged PR in treehouse

G4 (checks)

  • MET G4 - configured checks green - comp=n/a tests=green (merge-ready)
  • MET G4 - PR mergeable - live mergeable is MERGEABLE
  • MET G4 - merge state clean - live merge state is CLEAN

G5 (size)

  • MET G5 - changed-file limit - 5 changed files <= 20
  • MET G5 - changed-line limit - 81 changed lines <= 1000

G6 (triage + behavior)

  • MET G6 - automatic triage credential configured - model credential is configured; card triage eligibility is evaluated separately
  • UNMET G6 - successful triage for current head - current assessment is not admitted for its observation/head
  • UNMET G6 - top-level recommendation is merge - no valid agent recommendation was established: the advisory assessment was not admitted
  • UNAVAILABLE G6 - eligible behavior class - class B restoration evidence unavailable
  • UNMET G6 - existing/default behavior unchanged - existing/default behavior change not ruled out
  • MET G6 - class C is opt-in and default-off - not applicable to class B
  • VISION.md-dependent checks
    • MET G6 - behavior aligns with VISION.md - alignment confirmed
    • MET G6 - behavior verdict recommends merge - merge recommended
    • MET G6 - verdict uses current VISION.md revision - verdict and default branch use dcc4129a
    • MET G6 - verdict uses current base revision - verdict and live base use 68fa3d25

G7 (final gate)

  • UNAVAILABLE G7 - immediate live recheck and manual merge gate - runs only immediately before merge: card claim, VISION, head/base, mergeability, checks, opt-out label, and unchanged manual workflow gate

Triage

  • Summary: Adds a best-effort git worktree prune before creating a new worktree in treehouse get, so stale bookkeeping from a crashed or forcibly-removed worktree no longer wedges the pool, plus a regression test and README/AGENTS.md docs; also adds a minimal .github/workflows/ci.yml.
  • Product implications: Routine internal work: a narrow, well-tested self-healing fix in the create-new-worktree path with no new user-facing surface, consistent with the existing best-effort warning pattern used elsewhere in the codebase; low owner-discussion value.

Your decision

Tick one box for a quick call, or reply with a slash-command (/merge, /close, /decline <reason>, /hold, /comment <text>, /request-changes <text>):

  • Merge it
  • Close / decline
  • Investigate - deep code-grounded review (leaves this card open)
  • Hold - I'll handle this manually

Only the repository owner can drive this decision - everyone else's edits and comments are ignored.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions