Heya, Have spent cycles on this on-and-off these past few months; finally have something worth discussing, I think 🤞 To recap where we stand, AFAIU: the reported vc-dir bug has been fixed (in time for the emacs-30 branch), but the changes could feel intrusive, since a new vc-dir header was added ("Tracking") that some users may not care for. I've now drafted a user option to give users more control over this new header; see patch #3 in the attached series. The first two patches are yak-shaving: patch #1 adds regression tests, patch #2 splits vc-git-dir-extra-headers into more manageable chunks (pure refactoring, no functional change intended). Also attaching a 'squashed.patch' if that helps review. About patch #2, CC'ing Sean Whitton for perspective on vc-git--cmds-in-progress: I was puzzled by the function supporting many commands (rebase, am, merge, bisect), whereas AFAICT its sole user only heeds 'bisect & 'rebase. Wondering if I've missed other in-tree uses, or if we should add headers for 'am and 'merge, "while in there". Curious what y'all think. OT1H not sure an alist is the best UX, OTOH struggled to keep option names concise otherwise.