#690: opt-in group space - app groups stop synthesizing /spaces #710
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat-690"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #690
App-owned groups are principals, not spaces.
auth.WithAppGroupsmerging group names intoUser.Groupsmade every app group silently appear as/spaces/<group>; this PR ends that and replaces it with an explicit opt-in.WithGroupExclusion(fn)predicate (wired toGroupStore.Hasin main.go) removes app groups from/spacessynthesis in both the listing and path resolution. A provisioned space of the same name still grants through the spacestore.Space.Grouplink +SetGroup/FindByGroup.POST /admin/groupsacceptsspace/spaceName(default"<group> space"), provisions and links the space, materializes members as write members; member add/remove mirrors into the linked space (owner never evicted);DELETE /admin/groups/{id}on a linked group requires?space=delete|keep(409 without), delete = trash + deactivate + tombstone, keep = unlink;appGroupRow.SpaceandspaceEntry.Groupsurface the link.guNewSpaceNotehint removed; delete dialog gains fate radios; spaces inventory showsOwned by X · group Y; 8 new i18n keys ×4.scope_exclude_test.go,spacestore/grouplink_test.go,api/groups_space_test.go,web/test/qa690.test.js; the stale interim pin inqa2.test.jsretired.No migration for previously synthesized dogfood spaces by design (manual cleanup, per decision on the issue).