docs: make distribution lists the AdreMa capability owner

This commit is contained in:
2026-07-31 14:52:49 +02:00
parent 1444e50d8b
commit 96f42d09f8
4 changed files with 533 additions and 37 deletions
+19 -12
View File
@@ -4,17 +4,15 @@
**Repository type:** module (domain).
<!-- govoplan-repository-type:end -->
`govoplan-dist-lists` will own reusable operational distribution lists
(`Verteiler`) for GovOPlaN. Distribution lists are broader than address lists:
they can resolve contacts, raw addresses, identities, users, groups,
organization units, functions, roles, and later nested lists into immutable
recipient snapshots for campaigns, postbox messages, notifications, scheduling,
polls, consultations, approvals, workflow, and case operations.
`govoplan-dist-lists` owns reusable operational distribution lists
(`Verteiler`) for GovOPlaN. It is the core target for AdreMa-style audience
selection: definitions can resolve contacts, raw addresses, IDM identities and
typed groups, organization units, effective function incumbents,
Dataflow-backed rows, and nested lists into immutable recipient snapshots.
The module is intentionally initialized as a documentation and manifest seed
first. Classical address lists remain in `govoplan-addresses`; this module will
take over the mixed operational recipient model once the address-owned list
primitive is stable.
Classical address lists remain in `govoplan-addresses`. Distribution Lists owns
mixed operational and dynamic audiences, while Campaign, Reporting, and
Workflow consume the frozen results for delivery, analysis, and guided work.
## Boundary
@@ -22,6 +20,7 @@ Distribution Lists owns:
- reusable mixed recipient definitions
- German-administration `Verteiler` semantics
- static, parameterized, and Dataflow-backed dynamic audience definitions
- expansion of mixed entries into concrete delivery/recipient targets
- snapshot DTOs with source revision and provenance
- stale-source detection for expanded entries
@@ -32,13 +31,20 @@ Distribution Lists does not own:
- contacts, vCard/CardDAV address books, or address-only lists; those belong in
`govoplan-addresses`
- mail transport, queues, or mailbox access; those belong in `govoplan-mail`
- identities, typed groups, effective relationships, organization units, or
function definitions; those belong in IDM and Organizations
- delivery transports, queues, or mailbox access; those belong to consuming
delivery modules
- campaign versions, message rendering, or delivery evidence; those belong in
`govoplan-campaign`
- workflow/Umlauf execution state, ordering, deadlines, escalation, or task
state; those belong in `govoplan-workflow` and `govoplan-tasks`
- global identity, organization, tenancy, access, or policy engines
IDM identity status is a lifecycle indicator. Business states used for
audience selection are typed groups, functions, or effective-dated
relationships and must not be encoded by overloading identity lifecycle state.
## Key Distinction
```text
@@ -46,7 +52,7 @@ AddressBook -> contacts and contact points
AddressList -> address-domain grouping of contacts/contact methods
DistributionList -> operational Verteiler with mixed recipient entry types
Umlauf -> workflow execution over recipients, actors, tasks, and deadlines
CampaignVersion/PostboxMessage/etc. -> immutable snapshot of expanded recipients
CampaignVersion/Report/WorkflowRun -> immutable snapshot of expanded recipients
```
## Development Install
@@ -67,3 +73,4 @@ PYTHONPATH=src:/mnt/DATA/git/govoplan-core/src /mnt/DATA/git/govoplan/.venv/bin/
- [Distribution lists architecture](docs/DISTRIBUTION_LISTS_ARCHITECTURE.md)
- [Implementation plan](docs/IMPLEMENTATION_PLAN.md)
- [AdreMa capability assessment](docs/ADREMA_CAPABILITY_ASSESSMENT.md)