feat(shared-collections): admit 'topic' and 'queue' collection kinds (D2/D3)
Widen the group_collections kind allow-list (migration 0064) + the manifest CollectionKind enum + apply_service COLLECTION_KINDS to include 'topic' (D2, storeless publish namespace) and 'queue' (D3, group-keyed durable queue — store lands in 0065). Foundation shared by both milestones; routes through the existing owner-generic reconcile + resolve_owning_group path. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -769,7 +769,7 @@ constraints on files_trigger_details:
|
||||
[PRIMARY KEY] files_trigger_details_pkey: PRIMARY KEY (trigger_id)
|
||||
|
||||
constraints on group_collections:
|
||||
[CHECK] group_collections_kind_check: CHECK ((kind = ANY (ARRAY['kv'::text, 'docs'::text, 'files'::text])))
|
||||
[CHECK] group_collections_kind_check: CHECK ((kind = ANY (ARRAY['kv'::text, 'docs'::text, 'files'::text, 'topic'::text, 'queue'::text])))
|
||||
[CHECK] group_collections_owner_exactly_one: CHECK (((group_id IS NULL) <> (app_id IS NULL)))
|
||||
[FOREIGN KEY] group_collections_app_id_fkey: FOREIGN KEY (app_id) REFERENCES apps(id) ON DELETE CASCADE
|
||||
[FOREIGN KEY] group_collections_group_id_fkey: FOREIGN KEY (group_id) REFERENCES groups(id) ON DELETE CASCADE
|
||||
@@ -948,3 +948,4 @@ constraints on vars:
|
||||
0061: shared triggers
|
||||
0062: materialized triggers
|
||||
0063: materialized unique
|
||||
0064: shared topic queue kinds
|
||||
|
||||
Reference in New Issue
Block a user