Skip to content

feat: undo inbox triage actions - #333

Open
salmonumbrella wants to merge 1 commit into
maathimself:mainfrom
salmonumbrella:feat/inbox-triage-undo
Open

feat: undo inbox triage actions#333
salmonumbrella wants to merge 1 commit into
maathimself:mainfrom
salmonumbrella:feat/inbox-triage-undo

Conversation

@salmonumbrella

@salmonumbrella salmonumbrella commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Summary

Add a configurable Cmd+Z/Ctrl+Z Inbox triage undo shortcut while preserving native text undo in composers and editable controls.

Changes

  • Route the standard undo shortcut through the existing guarded shortcut dispatcher and limit it to the active Inbox message list.
  • Give keyboard, context-menu, swipe, and bulk triage actions one atomic 4.5-second undo window with newest-action-first ordering.
  • Share the delayed archive path across keyboard and pointer actions while preserving next-message selection and optimistic counters.
  • Make newly confirmed GTD classifications reversible without removing pre-existing labels or changing COPY semantics.
  • Add regression coverage for editable-target routing, rapid actions, exact expiry boundaries, non-UIDPLUS classification, and failure reconciliation.

Testing

  • Frontend: npm test — 1,579 tests passed.
  • Frontend: npm run lint — passed with zero warnings.
  • Frontend: npm run build — passed (existing chunk-size advisory only).
  • Backend: npx vitest run — 990 tests passed.
  • Backend: npm run lint — passed with zero warnings.

Contributor License Agreement

By submitting this pull request I confirm that:

  • I have read and agree to the Contributor License Agreement.
  • My contribution is my own original work (or I have identified any
    third-party material and confirmed it is compatible with the CLA).
  • I have the right to submit this contribution under the terms of the CLA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant