{"repo":"NousResearch/hermes-agent","public_id":"124645","display_label":"Shallow clone reflog pinning stale grafts on update","summary":"These items concern a bug where reflogs pin stale shallow grafts during updates, preventing pruning and causing repeated orphan divergence resets on shallow, partial, or stale checkouts. A fix targeting reflog expiry for these grafts is proposed alongside broader update compatibility work.","subsystem":null,"counts":{"members":3,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":126150,"merged_at":"2026-09-28T10:08:57+00:00"},"resolution":{"state":"resolved","by":"pr-126150"},"freshness":{"state":"verified","last_verified_at":"2026-09-28T10:08:57+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":122353,"pr_number":126150,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T10:08:57+00:00"},{"issue_number":123254,"pr_number":126150,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T10:08:57+00:00"},{"issue_number":123346,"pr_number":126150,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T10:08:57+00:00"},{"issue_number":124272,"pr_number":126150,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T10:08:57+00:00"},{"issue_number":124645,"pr_number":126150,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-28T10:08:57+00:00"}],"members":[{"kind":"issue","number":124645,"title":"Depth-1 → Fetching from origin...\n☤ Update available: 4215 commits behind origin/main.\n  Run 'hermes update' to install. still accumulates shallow grafts (reflog pins them, so the #105951 prune rolls back) and the next update resets as orphan divergence","url":null,"state":"closed"},{"kind":"pr","number":124671,"title":"fix(update): expire fetch reflogs that pin stale shallow grafts","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#126150","number":126150}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":126150,"title":"hermes update works on shallow, stale and partial-clone checkouts (salvage #122430, #123312, #124293, #124671)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_cli/gitlock.py","hermes_cli/update_cmd.py","hermes_cli/update_cmd_check.py","tests/e2e/core/upgrade/git/test_partial_clone.py","tests/e2e/core/upgrade/git/test_shallow_install.py","tests/hermes_cli/test_gitlock.py","tests/hermes_cli/test_shallow_boundary_repair.py","tests/hermes_cli/test_shallow_graft_prune.py","tests/hermes_cli/test_tag_fetch_partial_clone.py","tests/hermes_cli/test_update_shallow_heal.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}