Earlier quoted context omitted.
Commit graph is just a data structure. Sometimes it represents a "history", sometimes other things. Personally, I like it when project's repository represents the history of the project rather than the history of random things developers do on their machines, but you do you.
I am thinking of remote. Edits before pushing OK with me (they ate equivalent of recloning and redoing anyway)
It's a good rule of thumb to consider shared branches to be append-only, but not every remote branch is "shared" and, as with any proper rule of thumb, you can always find exceptions.