relay: leave unchanged independent-history tips out of the haves
Commit
A relay fetch offers the source every target tip as a have. Refs that each carry their own history, such as one orphan history per session checkpoint, cannot shorten a pack the run needs, so a repository with thousands of them sent thousands of have lines for a run that moved one branch.
RefScope.IndependentHistoryRefPrefixes names such namespaces. Under them a target ref is offered only when the run updates it, as its own old value. Replicate and sync's incremental relay honor it; sync's closure fetch and bootstrap keep every tip. Scope and prune are unchanged.
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com Entire-Checkpoint: 01M6K4JKK20C9GY0A26BDZE14F