#226 Space member picker: candidate autocomplete (v0.6.19) #230
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/226-member-picker"
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 #226 and the picker half of #210.
Adds a candidate dropdown / type-ahead to the space add-member field.
Backend
GET /api/v1/spaces/{name}/candidates(owner-or-admin gated) returns the usernames the instance can enumerate, minus the owner and current members (server-filtered), sorted, deduped.SpacesAPI.Candidatesenumerator (local users / read client) if set; otherwiseManager.Userson IdP-managed instances; otherwise empty.Manager.Userslists realm users viaGET /users?max=500&briefRepresentation=true.main.gowiring required for the IdP path; the seam is there for local/read-client sources.Frontend
<datalist>attached to the add-member input, populated on dialog open from the candidates endpoint. Degrades to the validated free-text picker (#217) when the list is empty.Tests
internal/api/spaces_candidates_test.go: owner/member exclusion + sort; non-owner 403; empty-when-no-source.internal/spaces:TestUsers(enumeration via the fake Keycloak, extended to list all users).No
main.gochanges; existing IdP-managed instances get autocomplete, app-owned/OIDC-without-a-client instances degrade cleanly.