Preserve text drafts and commit edits safely across UI lifecycles

- Add `textDraftProvider` to track in-progress text edits and flush drafts on save/drag/dispose
- Route committed text changes through `commitText` with text undo/redo history and edit actions
- Refactor `TextWidget` editable/feedback paths for controller sync and rebuild resilience
- Add provider/widget tests covering draft persistence, drag/start commit, save flushing, and undo/redo
b0b3900e42Dara Adedeji committed on 3/7/2026, 5:40:33 AMparent7bd5c3b
8 files changedLine totals unavailable