You can still have and respect beliefs, but distinguishing fact from belief is purely in the realm of philosophical debate. That doesn’t mean you have to accept absence of absolute truth or facts, but there is much we don’t know and that we think we know but we don’t, and that is logical and illogical. Life is dichotomy.
- The git commit log is the raw material. We try to have clean commits, but it's as messy as it is.
- This gets compiled into CHANGELOG.md at release time; we include all functionality and bugfixes, basically anything that any user or non-team dev might be interested or care about. But if some feature required multiple commits, we only include one line item for it. And if a feature gets reverted, we don't include both the feature and the reversion (that would be very confusing). This is for posterity.
- From the CHANGELOG we gather the "important subset" for the github release notes; this includes all features and major bugfixes, but only major API additions or changes. This has "see the CHANGELOG[link] for the full list of changes" at the bottom. This is for developers and users who follow us on github and are therefore more dev-savvy.
- From these release notes we produce the website release notes. This includes a complete list of new features, options, and commands, and important bugfixes (ones that a user might have experienced and would compel them to upgrade). But not any API changes unless it was a topline item for this release. This is for users and links back to the CHANGELOG.
- From the release webpage we pull highlights for social media, which link back to the release webpage.
We can always target different groups on social media with different subsets of functionality, but linking back up through the funnel leaves a trail of breadcrumbs for people who are more interested in the details.