feat: guest role for clients and outsiders
A project member can be a GUEST. In a private project a guest only sees the tickets they take part in (opened, assigned or followed): every other ticket answers 404, also in my work, realtime changes, blockers and linked tickets, and project-wide views (activity, statistics, dashboard, releases, sprints, epics, trash) answer 403. Guests open tickets without assigning or planning them, and comment, attach, follow and vote on their own; they change nothing else. In a public project they see what anyone does. The web gives them only Tablero, Lista and Miembros and loads none of the project-wide data. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -20,6 +20,11 @@ export class SearchIssuesQueryHandler
|
||||
if (watching && !query.viewerId) return { items: [], total: 0 };
|
||||
return this.findIssues.search({
|
||||
...filter,
|
||||
participantId:
|
||||
(await this.access.participantScope(
|
||||
query.filter.projectId,
|
||||
query.viewerId,
|
||||
)) ?? undefined,
|
||||
watcherId: watching ? (query.viewerId ?? undefined) : undefined,
|
||||
limit: Math.min(query.filter.limit, 200),
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user