I don't have all of this paged in, but I've got some pointers to discussion that came before that thread. I believe the issue of the current stable branch structure was first raised here:
We dropped the notion of delaying creation of the Git tag after this comment by @elibarzilay, plus some complications @jbclements pointed out in those off-list emails, so we focused just on organizing the Git history for the release and stable branches:
Interestingly, it seems we did discussing merging stable into master in a way that would address the git describe quirk:
That is the process illustrated in the last version of a #lang slideshow diagram I made of this process, which I found very helpful in thinking it through: Racket release branch diagram · GitHub
@jbclements raised the point that any merge of stable into master would break the property that master currently has a linear history. The last discussion I found on that is:
I don't think we ever followed up on that, and I know I personally was otherwise tied up and couldn't follow the 8.8 release process closely.
That does seem like a possible path to better git describe output by default while maintaining the linear history on master. (I don't have a strong opinion myself on how to balance these competing desiderata, though.)
If we did that, I think the tags should point to commits like Post-release version for the v8.18 release · racket/racket@02afeae · GitHub, and I'd suggest a naming convention like post/8.18.0.1. In particular, I'd want the names not to start with v and to be clear to both humans and tools that they are not release versions.