[Feature] Add a Microsoft Graph contacts connector for Microsoft 365 #16

Open
opened 2026-08-02 07:07:22 +02:00 by zemion · 0 comments
Owner

Goal

Synchronize Microsoft 365 contact folders through Microsoft Graph while keeping mail and calendar integrations independent.

Parent: #8. Related shared runtime: GovOPlaN/govoplan-connectors#8.

Direction And Boundary

  • Support read-only/import and governed two-way profiles; the selected direction is immutable enough to be explicit in every plan and diagnostic.
  • This issue covers Microsoft Graph cloud contacts. On-premises Exchange compatibility is tracked separately.
  • Addresses owns local contact projections and evidence; the remote service remains authoritative according to the selected profile.

Scope

  • OAuth credential-envelope reference, account/folder discovery, permission diagnostics, and secret-safe configuration UI.
  • Bounded initial and incremental reads with durable continuation/revision state and explicit full-resync fallback.
  • Dry-run plans for remote/local create, update, and delete effects.
  • Conditional writes, tombstones, outcome-unknown reconciliation, rate-limit/backoff, and conflict records before two-way mode is enabled.
  • Field mapping with preserved remote payload/revision provenance and unsupported-field diagnostics.
  • Disposable/fake provider contract tests for paging, token expiry, throttling, stale writes, partial failure, deletion, and idempotency.
  • Setup, permissions, authority, and recovery documentation.

Acceptance Criteria

  • Folder discovery and a bounded read-only sync work without Mail or Calendar installed.
  • Two-way mode cannot be enabled until conditional-write and delete reconciliation checks pass.
  • Retries cannot duplicate effects after accepted or outcome-unknown writes.
  • Every local change can be traced to a remote object/revision or a governed local write.
## Goal Synchronize Microsoft 365 contact folders through Microsoft Graph while keeping mail and calendar integrations independent. Parent: #8. Related shared runtime: GovOPlaN/govoplan-connectors#8. ## Direction And Boundary - Support read-only/import and governed two-way profiles; the selected direction is immutable enough to be explicit in every plan and diagnostic. - This issue covers Microsoft Graph cloud contacts. On-premises Exchange compatibility is tracked separately. - Addresses owns local contact projections and evidence; the remote service remains authoritative according to the selected profile. ## Scope - OAuth credential-envelope reference, account/folder discovery, permission diagnostics, and secret-safe configuration UI. - Bounded initial and incremental reads with durable continuation/revision state and explicit full-resync fallback. - Dry-run plans for remote/local create, update, and delete effects. - Conditional writes, tombstones, outcome-unknown reconciliation, rate-limit/backoff, and conflict records before two-way mode is enabled. - Field mapping with preserved remote payload/revision provenance and unsupported-field diagnostics. - Disposable/fake provider contract tests for paging, token expiry, throttling, stale writes, partial failure, deletion, and idempotency. - Setup, permissions, authority, and recovery documentation. ## Acceptance Criteria - Folder discovery and a bounded read-only sync work without Mail or Calendar installed. - Two-way mode cannot be enabled until conditional-write and delete reconciliation checks pass. - Retries cannot duplicate effects after accepted or outcome-unknown writes. - Every local change can be traced to a remote object/revision or a governed local write.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-addresses#16