feat: add private issue sharing grants

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
DottaandPaperclip committed 2026-08-01 22:54:01 +00:00
1 parent d18b769fe4
commit d92ef1e4b4
9 files changed
+829 -22

No files matched your search

+2
View File
@@ -859,8 +859,10 @@ export type {
Issue,
IssueVisibility,
IssueAccessGrant,
IssueAccessGrantAgentVisibility,
IssueAccessGrantSubjectType,
IssueAccessGrantSource,
IssueLockedStub,
IssueChangeReceiptEntry,
IssueChanges,
IssueAssigneeAdapterOverrides,
+2
View File
@@ -561,8 +561,10 @@ export type {
IssueSubtreeDiagnosticsResponse,
IssueVisibility,
IssueAccessGrant,
IssueAccessGrantAgentVisibility,
IssueAccessGrantSubjectType,
IssueAccessGrantSource,
IssueLockedStub,
IssueBlockerAttention,
IssueBlockerAttentionReason,
IssueBlockerAttentionState,
+17
View File
@@ -43,6 +43,7 @@ export type { IssueWorkMode };
export type IssueVisibility = "open" | "private";
export type IssueAccessGrantSubjectType = "user" | "agent";
export type IssueAccessGrantSource = "explicit" | "assignment" | "project";
export type IssueAccessGrantAgentVisibility = "discoverable" | "private";
export interface IssueAccessGrant {
id: string;
@@ -54,6 +55,22 @@ export interface IssueAccessGrant {
grantedByAgentId: string | null;
createdAt: Date;
revokedAt: Date | null;
subjectDisplayName: string | null;
subjectAvatarUrl: string | null;
subjectInitials: string | null;
agentVisibility: IssueAccessGrantAgentVisibility | null;
}
/**
* Existence-only projection used when a readable issue references an issue the
* current principal cannot read. Edge projections may return this exact shape
* in place of an IssueRelationIssueSummary; direct reads and list/search rows
* never return locked stubs.
*/
export interface IssueLockedStub {
id: string;
identifier: string | null;
locked: true;
}
export interface IssueAncestorProject {