I tried to reproduce this on the current build and could not.
Not reproduced in a running app; this was code reading plus a unit test on origin/main 62dc589d6d. A live run needs a GitHub repo with a merge queue and a real agent turn, which I did not set up. The failing test is on branch factory/repro-29896 (56bb7b12df). It adds a case to packages/shared/src/orchestrationV2PendingBackgroundWork.test.ts: a completed run with a watched PR link whose snapshot state is 'merged'. derivePendingBackgroundWork returns [] on main, where the test expects an awaited 'pull-request-watch' task that holds settlement. Command: cd packages/shared && vp test run src/orchestrationV2PendingBackgroundWork.test.ts, which gives 1 failed and 20 passed. In code, PullRequestWatchReactor ends a merged PR's watch through record(target, null) and ended(target, 'merged') with no wake, pullRequestWatchTasks drops links with snapshot.state === 'merged', and ThreadSettlementService then finds nothing holding the thread and dispatches thread.auto-settle as soon as a sync stores the merged snapshot.
Closing as not planned. If it still happens for you, reply with the exact steps and the version you are on and it will be looked at again.