fix(manifest): normalize distribution list contract ids
This commit is contained in:
@@ -66,10 +66,10 @@ delivery-channel hints, provenance, and a policy/readiness state.
|
||||
|
||||
The first capabilities should be:
|
||||
|
||||
- `distLists.source`: list visible distribution lists as reusable recipient
|
||||
- `dist_lists.source`: list visible distribution lists as reusable recipient
|
||||
sources.
|
||||
- `distLists.expand`: expand a distribution list into immutable recipient rows.
|
||||
- `distLists.writer`: explain whether a caller can create or change a list.
|
||||
- `dist_lists.expand`: expand a distribution list into immutable recipient rows.
|
||||
- `dist_lists.writer`: explain whether a caller can create or change a list.
|
||||
|
||||
Consumers must resolve those capabilities through core and must not import
|
||||
distribution-list ORM or service internals.
|
||||
|
||||
@@ -34,7 +34,7 @@ Tasks:
|
||||
- add CRUD routes and permissions
|
||||
- add local raw email/postal entries
|
||||
- add references to address contacts and address lists via capabilities
|
||||
- expose `distLists.source` and `distLists.expand`
|
||||
- expose `dist_lists.source` and `dist_lists.expand`
|
||||
- add tests for expansion and snapshots
|
||||
|
||||
## Milestone 3: Provider Integrations
|
||||
|
||||
@@ -43,7 +43,7 @@ ROLE_TEMPLATES = (
|
||||
|
||||
DOCUMENTATION = (
|
||||
DocumentationTopic(
|
||||
id="dist-lists.boundary",
|
||||
id=f"{MODULE_ID}.boundary",
|
||||
title="Distribution list boundary",
|
||||
summary="Distribution lists model operational Verteiler separately from address-book lists and workflow Umlauf execution.",
|
||||
body=(
|
||||
@@ -81,9 +81,9 @@ manifest = ModuleManifest(
|
||||
),
|
||||
optional_capabilities=(CAPABILITY_AUTH_PRINCIPAL_RESOLVER, CAPABILITY_AUTH_PERMISSION_EVALUATOR),
|
||||
provides_interfaces=(
|
||||
ModuleInterfaceProvider(name="distLists.source", version=MODULE_VERSION),
|
||||
ModuleInterfaceProvider(name="distLists.expand", version=MODULE_VERSION),
|
||||
ModuleInterfaceProvider(name="distLists.writer", version=MODULE_VERSION),
|
||||
ModuleInterfaceProvider(name="dist_lists.source", version=MODULE_VERSION),
|
||||
ModuleInterfaceProvider(name="dist_lists.expand", version=MODULE_VERSION),
|
||||
ModuleInterfaceProvider(name="dist_lists.writer", version=MODULE_VERSION),
|
||||
),
|
||||
permissions=PERMISSIONS,
|
||||
role_templates=ROLE_TEMPLATES,
|
||||
|
||||
@@ -15,7 +15,7 @@ class DistributionListsManifestTests(unittest.TestCase):
|
||||
self.assertFalse(manifest.dependencies)
|
||||
self.assertIn("addresses", manifest.optional_dependencies)
|
||||
self.assertIn("auth.principalResolver", manifest.optional_capabilities)
|
||||
self.assertIn("distLists.expand", {interface.name for interface in manifest.provides_interfaces})
|
||||
self.assertIn("dist_lists.expand", {interface.name for interface in manifest.provides_interfaces})
|
||||
self.assertIn("dist_lists:list:read", {permission.scope for permission in manifest.permissions})
|
||||
self.assertIsNone(manifest.route_factory)
|
||||
self.assertIsNone(manifest.migration_spec)
|
||||
|
||||
Reference in New Issue
Block a user