Skip to content

feat(gtd): add delegated contact picker - #373

Open
salmonumbrella wants to merge 3 commits into
maathimself:mainfrom
salmonumbrella:feat/gtd-delegation-ui-plugin
Open

feat(gtd): add delegated contact picker#373
salmonumbrella wants to merge 3 commits into
maathimself:mainfrom
salmonumbrella:feat/gtd-delegation-ui-plugin

Conversation

@salmonumbrella

@salmonumbrella salmonumbrella commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Summary

Ports the delegated-contact UI from closed PR #343 onto the GTD plugin boundary described in #368. Users can delegate one message or a frozen bulk selection to a CardDAV contact, see the snapshot anywhere the thread appears, or keep the existing personless Delegated workflow.

This PR is stacked on #372 and includes the predecessor commits until they land.

Changes

  • Add a plugin-owned delegation controller that freezes and deduplicates up to 100 target IDs before checking CardDAV or opening UI.
  • Open an accessible searchable contact dialog when CardDAV is connected. When it is not connected, delegate without a person immediately.
  • Handle stale searches, keyboard wrapping, Escape, Enter, focus trapping/restoration, retry, empty results, and an explicit “delegate without person” action.
  • Add neutral core seams for selected context-menu IDs, reading-pane actions/metadata, and GTD-entry metadata. Core does not import GTD.
  • Add “Delegate…” to the context menu, reading pane, and detached message windows; show contact/age pills wherever the thread appears.
  • Keep uppercase D as the contact shortcut and lowercase d as personless Delegated classification, scoped to the active thread target.
  • Patch successful snapshots immediately, then reconcile from the plugin metadata endpoint.
  • Localize the picker, outcomes, shortcut, and accessibility copy in all seven shipped locales.

Blocked by #372.

Refs #343 and #368


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.

@salmonumbrella
salmonumbrella force-pushed the feat/gtd-delegation-ui-plugin branch from a6593fb to 3fe2d19 Compare August 26, 2026 06:00
@salmonumbrella
salmonumbrella marked this pull request as ready for review August 26, 2026 06:01
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