Groups "Used by" gains the real share count (#529 scope addition, extracted) #598
Labels
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: Cordy/Cairn#598
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Extraction of the 2026-09-16 scope addition recorded on #529 (comment 5456), so the tracker stays a tracker. The addressee it needed shipped in #570/#571; this is now buildable. The full research (Nextcloud #5586/#25755, groupfolders #2827, ownCloud advisory — no competitor surfaces this) lives in that comment.
Checklist, carried over verbatim in substance
Shape
Backend: a per-group grant count (and listing) query over
share.Store— grants areAddresseeKind: "group"records, so this is a filter, not a new store. API beside the existing groups endpoints. Frontend: the Used-by cell grows the count + click-through listing; the cell and listing are drawn in mockup batch A (with #572 and #577) before the UI is built.Closing this is one of the two remaining gates on #529 (the other is #572).
Mockup batch A is drawn:
batch-a-572-577-598-mockup.html(design folder), blocks 6–7 — the Used-by cell ("4 shares · 1 space · peering", lazy-loaded, "Not used" as a real state), the fail-closed 409 wording naming grants, and the click-through listing (path / owner / role, spaces sectioned separately). One open question flagged: is the drill-down read-only (drawn) or does it get a per-row admin Revoke? Build waits on markup.Mockup approved (batch A rev 1 blocks 6–7 stand, no markup): compound count cell, lazy-loaded, "Not used" as a real state, fail-closed 409 naming grants, read-only drill-down (path / owner / role, spaces sectioned).
Shipped in v0.6.216 (PR #605), live on both dogfoods. Checklist: real share count in Used-by (lazy
GET /api/v1/admin/groups/usage) ✓; count is a click-to-expand listing with path/owner/role ✓; deletion fail-closed with a 409 naming grants ✓; membership changes proven not to touch grants (test) ✓; group rows can only carry internal grants — links excluded at the source, test asserts it ✓; lazy-loaded, never blocks the table ✓. Closing.