[Feature] Consume consent-aware address segments and suppression decisions in Campaign #34

Closed
opened 2026-07-06 11:25:35 +02:00 by zemion · 2 comments
Owner

Imported from the consolidated GovOPlaN product backlog.

  • Source: /mnt/DATA/Nextcloud/ADD ideas UG/Products/govoplan/backlog.md
  • Line: 194
  • Section: Milestones > Milestone 11 - Address Book, Templates, And Adoption Polish
  • Source status: PARTIAL.

Imported backlog item:

- [ ] Add mailing lists and opt-in/double-opt-in only after the core recipient/list model is stable.

Domain Boundary (reconciled 2026-07-20)

Addresses #9 owns lists, dynamic segments, consent, suppression, communication preferences, and policy-filtered recipient sources. Remaining Campaign scope is only to consume a frozen, provenance-bearing recipient-source result, explain included/excluded counts, invalidate builds after source changes, and preserve the applied policy decision in Campaign evidence. Campaign must not edit consent or suppression records.

<!-- codex-backlog-fingerprint:25a884100bb1b74601a05078 --> Imported from the consolidated GovOPlaN product backlog. - Source: `/mnt/DATA/Nextcloud/ADD ideas UG/Products/govoplan/backlog.md` - Line: `194` - Section: `Milestones > Milestone 11 - Address Book, Templates, And Adoption Polish` - Source status: `PARTIAL.` Imported backlog item: ```markdown - [ ] Add mailing lists and opt-in/double-opt-in only after the core recipient/list model is stable. ``` ## Domain Boundary (reconciled 2026-07-20) Addresses #9 owns lists, dynamic segments, consent, suppression, communication preferences, and policy-filtered recipient sources. Remaining Campaign scope is only to consume a frozen, provenance-bearing recipient-source result, explain included/excluded counts, invalidate builds after source changes, and preserve the applied policy decision in Campaign evidence. Campaign must not edit consent or suppression records.
zemion added this to the Milestone 11 - Address Book, Templates, And Adoption Polish milestone 2026-07-06 13:17:26 +02:00
zemion changed title from [Feature] Add mailing lists and opt-in/double-opt-in only after the core recipient/list model is stable to [Feature] Consume consent-aware address segments and suppression decisions in Campaign 2026-07-20 14:43:32 +02:00
Author
Owner

Re-scoped to Campaign consumption. The reusable list/segment/consent/suppression domain is Addresses #9; this slice remains blocked until that capability contract exists.

Re-scoped to Campaign consumption. The reusable list/segment/consent/suppression domain is Addresses #9; this slice remains blocked until that capability contract exists.
Author
Owner

Completed and published across GovOPlaN/govoplan-addresses@41ccd4c and GovOPlaN/govoplan-campaign@82ddc0c.

Campaign now consumes the Addresses recipient-source capability as a frozen, revision-bearing snapshot; included and excluded recipients retain decision provenance, reason codes, explanations, source revision, generated time, purpose, and counts. The import UI exposes exclusions before materialization and stores the frozen evidence in recipient-import provenance. Editing/importing the working version invalidates prior validation/build state through the existing version mutation path.

Focused Campaign snapshot tests, Addresses capability tests, shared TypeScript checks, and the all-module startup smoke passed.

Completed and published across GovOPlaN/govoplan-addresses@41ccd4c and GovOPlaN/govoplan-campaign@82ddc0c. Campaign now consumes the Addresses recipient-source capability as a frozen, revision-bearing snapshot; included and excluded recipients retain decision provenance, reason codes, explanations, source revision, generated time, purpose, and counts. The import UI exposes exclusions before materialization and stores the frozen evidence in recipient-import provenance. Editing/importing the working version invalidates prior validation/build state through the existing version mutation path. Focused Campaign snapshot tests, Addresses capability tests, shared TypeScript checks, and the all-module startup smoke passed.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-campaign#34