Org support gap survey: evaluate and file remaining org-feature tickets vs Forgejo/GitHub parity #349
Labels
No labels
actions
bug
cli
duplicate
enhancement
fork
forum
git storage
help wanted
insights
invalid
issues
moderation
oidc
ownership transfer
packages
pr/merge protection rules
projects
pull requests
question
releases
sponsorships
tags
webhooks
wiki
wontfix
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub#349
Loading…
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?
What's requested
A survey of the remaining organization-feature gaps versus Forgejo/GitHub parity, with one ticket each filed for what's worth building — so org support reaches the "fully usable orgs" bar rather than the current create/manage core.
This ticket is the survey + filing pass: investigate each candidate gap against the current tree, file tickets for the real ones, and report here which were filed (with numbers) and which were judged already-covered or not worth a ticket.
Candidate gaps to evaluate (initial evidence from a tree scan — verify each)
orgs/<org>/keys; no rename service exists). GitHub allows renaming with redirect. Evaluate: rename-with-redirect vs display-name-only (DisplayName already exists onOrg). Likely worth a small ticket or an explicit "display name only" ruling.avatar/logoin identity surfaces or the settings UI). GitHub/Forgejo both have org avatars. Evaluate against the repo-attachment/LFS storage precedent for where bytes could live.DeleteOrg(internal/identity/orgs.go:617-635) refuses with 409 while the org owns repos ("transfer or delete them first") — but no repo transfer mechanism exists (no transfer service, no UI). The 409 message references a capability that doesn't exist. Evaluate: repo transfer to another user/org (Forgejo has it), or delete-org-with-repos as an admin operation, or reword the 409. The dangling reference is the bug either way.team:<org>/<slug>subjects are fully supported inaccess.jsonrole bindings (internal/identity/access.go:41-49) andweb/src/pages/Access.jsxedits role bindings — but verify whether the Access UI makes binding a team discoverable (free-text subject vs a team dropdown fed from the org's teams). If it's free-text, that's a UX ticket.OrgOwner/OrgMember,identity.go:90-94). Forgejo has more (admin, write, read tiers). Evaluate: probably fine for v1; file only if team-scoped roles don't cover the need.invites.go:36,155,181); verify the settings Invitations tab lists pending invites with revoke/expiry display, and whether invite acceptance is a usable page. File gaps found.internal/notify); org-level webhooks (events across all org repos) don't exist. Evaluate — Forgejo/GitHub both have org webhooks. Likely a real ticket, medium size.CreateOrgguards against colliding with an existing user principal, and that a user can't be created with an org's name). If unguarded, that's a correctness ticket.Process
Acceptance criteria
Org gap survey verdicts vs current tree (origin/main @
83bf231, post-#348/#346/#347). All tickets carry labels issues+oidc, milestone v1, and reference this survey.Filed (7)
Already covered — no ticket
Deferred with reasons — no ticket
Extras considered, not filed
Survey complete: children filed #358 (transfer + DeleteOrg + delete UI), #359 (profile parity + avatar), #360 (rename decision), #361 (team dropdown), #362 (invite lifecycle UI), #363 (org webhooks), #364 (org audit log). This ticket closes once all seven children are closed.
All seven children closed: #358 (transfer + delete), #359 (profile + avatar), #360 (rename ruling), #361 (team picker), #362 (invite UI), #363 (org webhooks), #364 (audit log). Closing the survey parent.