relay: cover shared history under the prefix; tighten the docs

main

Commit

Stefan Hauboldyesterday

Review follow-up. Two integration tests name a prefix over refs that do share history: a new ref built on an existing one under the prefix, and a branch moved onto a commit the target holds only under the prefix. Both must leave a complete copy. assertSameRefs now reads every commit, tree and blob reachable from each target ref, not only the tips.

The field's doc states that entries are literal prefixes of target ref names after mappings, with a trailing-slash example, and that naming shared history keeps the copy correct but can push a pack over a size limit. The validator's doc says what it checks and what it does not.

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com Entire-Checkpoint: 01M6K8WCDXZ3XP6CPD85W0XCV9