On Mon, Feb 26, 2024 at 05:08:03AM -0500, Jeff King wrote: > Thus nobody should actually look at the reflog entry info we return. But > we'll still put in some fake values just to be on the safe side, since > this is such a subtle and confusing interface. Likewise, we'll document > what's going on in a comment above the function declaration. If this > were a function with a lot of callers, the footgun would probably not be > worth it. But it has only ever had two callers in its 18-year existence, > and it seems unlikely to grow more. So let's hold our noses and let > users enjoy the convenience of a simulated ref@{0}. Obviously I'm sympathetic to Patrick's position that this empty-reflog special case is kind of gross. ;) That's one of the reasons I split this out from patch 2; we can see exactly what must be done to make each case work. And in fact I had originally started to write a patch that simply changed t1508 to expect failure. I could still be persuaded to go that way if anybody feels strongly. -Peff