Progression editor
Undo
The editor's own local undo/redo — scope, granularity, and what it does not cover.
The progression editor has its own undo/redo, entirely separate from any app-wide undo.
Triggering it
UNDO / REDO keys in the editor footer, or ⌘Z / ⇧⌘Z. The keys stand in the editor's table and in INFO.
Granularity
One undo step = a full snapshot of the whole editable state: every section, plus the song-level name, artist, notes, tempo, key, tuning, playback setting and band. An undo therefore also takes back whatever you typed into a name field since that step — those fields never create a step of their own (see below).
Almost everything you do creates a step: picking a chord, resting or deleting a slot, moving/swapping chords, resizing a chord's duration (one step per whole drag, not per pixel), choosing a grip, adding/duplicating/deleting/reordering sections, changing repeats, energy, the fill, or any of the section's feel/drums/JAM settings, and any key, tempo, tuning, playback or band change in the SONG block. NEW is one step too.
Typing is one step
Since 0.71 typing into a text field — a section's NAME, or the song's own NAME, ARTIST and NOTES — is one undo step per visit: the first change after the field takes focus takes the snapshot, and losing focus (or any other edit) ends the session. Renaming a section used to be not undoable at all.
The 0.71 verbs are steps too: ⌫/⌦ delete, ⌘D duplicate, ⌘X cut and ⌘V paste of a chord or a section, SPLIT, a bass, a push, and a section moved from its drawer.
Limits
The undo stack holds up to 50 steps; pushing a 51st drops the oldest one. Any new edit clears the redo stack.
Scope
Undo history is per song, not global: switching to a different saved song, or closing the editor and reopening it, starts a completely fresh history. It does not carry over between songs or across editor sessions.