codex/api-application-access #52

Merged
Twyco merged 8 commits from codex/api-application-access into main 2026-04-24 08:32:36 +00:00
Owner
No description provided.
Twyco added 6 commits 2026-04-23 20:30:28 +00:00
Koda requested changes 2026-04-23 20:44:45 +00:00
Koda left a comment
Contributor

Thanks for the API surface expansion and controller/action extraction — this is a big step forward. I found two should-fix issues before this is ready to merge: (1) the ticket update API response currently bypasses visibility, and (2) ticket options still return all users instead of project-visible users.

Thanks for the API surface expansion and controller/action extraction — this is a big step forward. I found two should-fix issues before this is ready to merge: (1) the ticket update API response currently bypasses visibility, and (2) ticket options still return all users instead of project-visible users.
@@ -0,0 +37,4 @@
)->resolve(),
'ticketTypes' => TicketTypeResource::collection($project->ticketTypes()->get())->resolve(),
'users' => UserResource::collection(
User::query()
Contributor

Should fix: this options payload currently returns all users in the system. That bypasses the visible-user scoping added elsewhere in this PR (User::visibleToProject) and leaks unrelated account identities via the create-ticket API. Please scope this query to users who can read the project (and add a focused /ticket-options API test for this behavior).

Should fix: this options payload currently returns all users in the system. That bypasses the visible-user scoping added elsewhere in this PR (`User::visibleToProject`) and leaks unrelated account identities via the create-ticket API. Please scope this query to users who can read the project (and add a focused `/ticket-options` API test for this behavior).
Twyco marked this conversation as resolved
@@ -0,0 +125,4 @@
return TicketResource::make($ticket->fresh()->load([
'assignee',
'author',
Contributor

Should fix: show_author is enforced in the ticket detail payload, but this update response always loads/serializes author. A non-admin with write access can send a PATCH (including a no-op update) and recover hidden author data. Please apply the same visibility rule here (omit/null author unless the caller can manage the project) so the setting cannot be bypassed.

Should fix: `show_author` is enforced in the ticket detail payload, but this update response always loads/serializes `author`. A non-admin with write access can send a PATCH (including a no-op update) and recover hidden author data. Please apply the same visibility rule here (omit/null author unless the caller can manage the project) so the setting cannot be bypassed.
Twyco marked this conversation as resolved
Contributor

Here is the improvements PR: OpenSource/KanbanGit#53

Here is the improvements PR: https://git.twyco.de/OpenSource/KanbanGit/pulls/53
Twyco added 2 commits 2026-04-24 08:31:18 +00:00
Twyco merged commit 6342123cc1 into main 2026-04-24 08:32:36 +00:00
Twyco deleted branch codex/api-application-access 2026-04-24 08:32:36 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: PetschStudios/KanbanGit#52