feat(native): name local branches no session lease will report #1287
No reviewers
Labels
No labels
burndown-2026-06
burndown-2026-08
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
coherence-core
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
qa-fixture
role/advocate
role/director
role/exec
role/frontend
role/gamedev
role/human
role/platform
role/qa
role/science
role/sysadmin
state
ambient
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-flight-deck/agentic-os!1287
Loading…
Reference in a new issue
No description provided.
Delete branch "aos/claude/ff54"
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?
Closes #1286
The gap
Branch reaping skips the
aos/namespace on purpose, andreportNativeStuckLeasesis reachable only through the loop over native session leases, so it reports a branch only when a lease recorded it asartifact.Branch. A branch made by hand, made outside a native shadow, or outliving the sweep that removed its lease falls between the two exemptions and is named by neither, however much work it holds.This checkout reached 78 local branches with 13 reported. Of the 65 unreported, 7 held 13 commits whose patch-id was on no origin ref.
Why patch-id and not reachability
Reusing the reaper's
rev-list <branch> --not --remotes=origintest repository-wide reports every squash-merged branch, because a squashed branch is reachable from no origin ref while carrying no work. On this checkout that test called 64 landed branches unpushed.git cherryis the only test that says something true on a fleet whose default merge style is squash.TestASquashMergedBranchIsNotAnOrphanis a real negative control for that decision: swapping the implementation to the reachability count makes it fail.Cost
A cheap
rev-listcount gates the patch-id walk, and a branch with anorigincounterpart is skipped before either. A fleet with nothing to say pays oneshow-refper branch.Verification
Full
aos-clisuite green. Run against this repository the new reading reports exactly one branch,aos/claude/issue-refs-write-path, with no false positives frommainor the six live session worktrees.🤖 Generated with Claude Code