Currently having a linear undo stack has a limitation which is most obvious with text undo.
Typing a character uses a single undo step, meaning if you are working in 3D sculpting for eg, then type a short paragraph over 32 characters - you'll loose all your undo steps.
Proposed solution is for undo systems to support counting their undo steps separately, so text editing operations wouldn't use up undo steps for edits in other modes.
