Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

**My work entry becomes permanently unusable and un-removable when a PR's bas...

Open
#4,143 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
65/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
git, github, github-actions

Research direction

Look for the code that prepares worktrees and fetches refs, likely in a module handling 'My work' sessions. The fetch command with multiple refspecs is the culprit. Start by searching for 'git fetch' and 'refs/pull' in the codebase. Understand how the app constructs the fetch command when opening a PR. The fix involves modifying the fetch logic to handle missing base branches gracefully, perhaps by fetching refs separately or using a glob pattern. Test by simulating the scenario in a development environment.

Written by the indexing model from the issue text.

Description

My work entry becomes permanently unusable and un-removable when a PR's base branch is deleted

Summary

In the My work view, a merged PR whose head/base branches no longer exist stays listed forever with Session: Unavailable. It can never be opened (worktree preparation fails), and there is no way to remove the entry.

Environment

  • GitHub Copilot app 1.1.23 (github.exe, Windows)

  • git 2.53.0.windows.4

  • Private GitHub.com repo; PR was squash-merged and both source branches were deleted afterwards

Steps to reproduce

  1. Have a PR whose base branch exists (works normally at this point).

  2. Merge it (squash), then delete the head and base branches.

  3. Open My work — the PR is still listed (seen in the All and Done views).

  4. Try to open it.

Actual

Worktree preparation runs:

Bash

git fetch --no-write-fetch-head origin \
  +refs/heads/<base-branch>:refs/remotes/origin/<base-branch> \
  +refs/pull/<N>/head:refs/remotes/origin/pr/<N>

and fails with:

Plain text

fatal: couldn't find remote ref refs/heads/<base-branch>

exit code 128, so the session/worktree can't be created. The row remains in the list with Session: Unavailable, permanently.

Root cause / evidence

  • refs/pull/<N>/head still resolves after a merge, but a single git fetch with multiple refspecs is all-or-nothing: one missing ref aborts the whole fetch and nothing is written — not even the ref that does exist. Reproduced in a clean temporary clone: exit 128, and git for-each-ref shows zero refs written.

  • Fetching only +refs/pull/<N>/head:refs/remotes/origin/pr/<N> succeeds (exit 0), so the PR ref alone would be enough.

  • git ls-remote origin "refs/pull/<N>/*" confirms the ref is still available.

Suggested fix

  • Don't put the base-branch and PR-head refspecs in a single fetch; or

  • treat a missing base ref as non-fatal (fetch the PR ref, continue, and degrade the diff base); or

  • use a glob refspec for the base branch — verified that +refs/heads/<pattern>/*:refs/remotes/origin/<pattern>/* exits 0 silently when nothing matches, while an explicit missing ref name is a hard error.

  • Note: git fetch --no-error-on-missing-ref does not exist in git 2.53.0.windows.4, so that isn't available.

No workaround currently exists in the UI

Checked in 1.1.23: right-clicking the row → no context menu; Actions → no menu appears for this item; right-clicking the view tab → only Duplicate / Reorder views (no rename/edit-query/delete). The All view's saved query is empty (catch-all), so the entry is always shown there.

Related

#713 (dismiss/snooze individual items in My work) would give an escape hatch, but the underlying fetch failure is a bug on its own.


Field Value
App version 1.1.23
OS Windows 10.0.26200
Theme GitHub
Path /chat
Tenure Day 5 (Week 1)
Dominant language
No language data
Stars
2.1k
Forks
157
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from github/app

All issues in github/app

Similar issues

More CLI issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.