Fix #374: visibility modes split #378
No reviewers
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 milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub!378
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/issue-374"
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?
Fixes #374 — replaces the single "private — members only" with two distinct private modes (additive enum; existing private docs keep their value, no data migration).
What changed (per acceptance criteria):
authenticatedvisibility added ("private — logged in only"): any signed-in user reads (API + git + web via Resolve/CheckRead); anonymous gets 401/404 per the #345 convention. Accepted everywhere visibility is parsed (normalizeAccess, POST create path, EnsureRepoAccess, SDK typedef, both UI selects).privaterefined ("visible only by owner/org"): org MEMBERS read without bindings (new single-probe orgRosterRole — same members.json GET the old owner check paid, no added round trip); user-owned = owner binding + explicit bindings + admin only (fail closed).Evidence:
Additive authenticated visibility ("private, logged in only"); private refined to owner/org-only with org-member read without bindings. Resolve: single-probe roster role (owner admin/member read), authenticated grant, host-write grant retired (the #347 direction extended to reads — ruled DENY, documented with the org-members-gain/host-writers-lose delta; import checkCreate keeps its host-credential create-capability explicitly). UI: owner-appropriate options via the #348 owner-kind probe; "members only" label gone everywhere (selects, badge, SDK typedef). No new deps.