@astrale-domains/issues 0.3.2 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -9
- package/dist/schema/index.d.ts +2 -1
- package/dist/schema/index.js +2 -1
- package/dist/schema/modules/comment/classes/comment.d.ts +1 -1
- package/dist/schema/modules/issue/classes/index.d.ts +1 -0
- package/dist/schema/modules/issue/classes/index.js +1 -0
- package/dist/schema/modules/issue/classes/issue-duplicate-candidate.d.ts +18 -0
- package/dist/schema/modules/issue/classes/issue-duplicate-candidate.js +10 -0
- package/dist/schema/modules/issue/classes/issue.d.ts +41 -2
- package/dist/schema/modules/issue/classes/issue.js +4 -0
- package/dist/schema/modules/issue/index.d.ts +3 -3
- package/dist/schema/modules/issue/index.js +3 -3
- package/dist/schema/modules/issue/policies/index.d.ts +1 -0
- package/dist/schema/modules/issue/policies/index.js +1 -0
- package/dist/schema/modules/issue/policies/traverse-duplicate-candidate.d.ts +1 -0
- package/dist/schema/modules/issue/policies/traverse-duplicate-candidate.js +10 -0
- package/dist/schema/modules/issue/types/index.d.ts +1 -0
- package/dist/schema/modules/issue/types/index.js +1 -0
- package/dist/schema/modules/issue/types/report.d.ts +207 -0
- package/dist/schema/modules/issue/types/report.js +56 -0
- package/dist/schema/modules/project/classes/project.d.ts +103 -3
- package/dist/schema/modules/project/classes/project.js +6 -0
- package/dist/schema/modules/project/functions/complete-project-report.d.ts +10 -0
- package/dist/schema/modules/project/functions/complete-project-report.js +11 -0
- package/dist/schema/modules/project/functions/index.d.ts +3 -0
- package/dist/schema/modules/project/functions/index.js +3 -0
- package/dist/schema/modules/project/functions/list-project-reports.d.ts +49 -0
- package/dist/schema/modules/project/functions/list-project-reports.js +14 -0
- package/dist/schema/modules/project/functions/receive-project-report.d.ts +41 -0
- package/dist/schema/modules/project/functions/receive-project-report.js +10 -0
- package/dist/schema/modules/tag/classes/tag.d.ts +2 -2
- package/dist/schema/schema.d.ts +166 -8
- package/dist/schema/schema.js +3 -1
- package/package.json +8 -8
- package/CHANGELOG.md +0 -181
|
@@ -5,9 +5,9 @@ export declare const Project: import("@astrale-os/sdk/schema").AuthoredNodeClass
|
|
|
5
5
|
readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Named">, import("@astrale-os/sdk/schema").KernelClass<"Descriptable">, import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
|
|
6
6
|
readonly properties: {
|
|
7
7
|
key: z.ZodString;
|
|
8
|
-
ownerId: import("@astrale-os/sdk/schema").
|
|
9
|
-
memberIds: import("@astrale-os/sdk/schema").
|
|
10
|
-
nextIssueNumber: import("@astrale-os/sdk/schema").
|
|
8
|
+
ownerId: import("@astrale-os/sdk/schema").AuthoredProperty<z.ZodString, {}>;
|
|
9
|
+
memberIds: import("@astrale-os/sdk/schema").AuthoredProperty<z.ZodArray<z.ZodString>, {}>;
|
|
10
|
+
nextIssueNumber: import("@astrale-os/sdk/schema").AuthoredProperty<z.ZodNumber, {}>;
|
|
11
11
|
archived: z.ZodBoolean;
|
|
12
12
|
};
|
|
13
13
|
readonly methods: {
|
|
@@ -99,6 +99,106 @@ export declare const Project: import("@astrale-os/sdk/schema").AuthoredNodeClass
|
|
|
99
99
|
archived: boolean;
|
|
100
100
|
};
|
|
101
101
|
}, "authorized", false, false>>;
|
|
102
|
+
receiveReport: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
103
|
+
title: string;
|
|
104
|
+
body: string;
|
|
105
|
+
context?: {
|
|
106
|
+
observedAt: string;
|
|
107
|
+
cli: {
|
|
108
|
+
version: string;
|
|
109
|
+
platform: string;
|
|
110
|
+
arch: string;
|
|
111
|
+
};
|
|
112
|
+
runtime: {
|
|
113
|
+
node: string;
|
|
114
|
+
bun?: string | undefined;
|
|
115
|
+
};
|
|
116
|
+
project?: {
|
|
117
|
+
name: string;
|
|
118
|
+
version?: string | undefined;
|
|
119
|
+
packages: {
|
|
120
|
+
name: string;
|
|
121
|
+
declared?: string | undefined;
|
|
122
|
+
version?: string | undefined;
|
|
123
|
+
source: "installed" | "local" | "unresolved";
|
|
124
|
+
commit?: string | undefined;
|
|
125
|
+
dirty?: boolean | undefined;
|
|
126
|
+
}[];
|
|
127
|
+
} | undefined;
|
|
128
|
+
instance?: {
|
|
129
|
+
name: string;
|
|
130
|
+
issuer?: string | undefined;
|
|
131
|
+
url?: string | undefined;
|
|
132
|
+
} | undefined;
|
|
133
|
+
} | undefined;
|
|
134
|
+
requestId: string;
|
|
135
|
+
reporterId: string;
|
|
136
|
+
}, {
|
|
137
|
+
readonly mode: 'value';
|
|
138
|
+
readonly value: {
|
|
139
|
+
id: string;
|
|
140
|
+
reference: string;
|
|
141
|
+
};
|
|
142
|
+
}, "authorized", false, false>>;
|
|
143
|
+
listReports: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
144
|
+
pending?: boolean | undefined;
|
|
145
|
+
cursor?: string | undefined;
|
|
146
|
+
}, {
|
|
147
|
+
readonly mode: 'value';
|
|
148
|
+
readonly value: {
|
|
149
|
+
reports: {
|
|
150
|
+
id: string;
|
|
151
|
+
reference: string;
|
|
152
|
+
reporterId: string;
|
|
153
|
+
content: {
|
|
154
|
+
title: string;
|
|
155
|
+
body: string;
|
|
156
|
+
context?: {
|
|
157
|
+
observedAt: string;
|
|
158
|
+
cli: {
|
|
159
|
+
version: string;
|
|
160
|
+
platform: string;
|
|
161
|
+
arch: string;
|
|
162
|
+
};
|
|
163
|
+
runtime: {
|
|
164
|
+
node: string;
|
|
165
|
+
bun?: string | undefined;
|
|
166
|
+
};
|
|
167
|
+
project?: {
|
|
168
|
+
name: string;
|
|
169
|
+
version?: string | undefined;
|
|
170
|
+
packages: {
|
|
171
|
+
name: string;
|
|
172
|
+
declared?: string | undefined;
|
|
173
|
+
version?: string | undefined;
|
|
174
|
+
source: "installed" | "local" | "unresolved";
|
|
175
|
+
commit?: string | undefined;
|
|
176
|
+
dirty?: boolean | undefined;
|
|
177
|
+
}[];
|
|
178
|
+
} | undefined;
|
|
179
|
+
instance?: {
|
|
180
|
+
name: string;
|
|
181
|
+
issuer?: string | undefined;
|
|
182
|
+
url?: string | undefined;
|
|
183
|
+
} | undefined;
|
|
184
|
+
} | undefined;
|
|
185
|
+
};
|
|
186
|
+
pending: boolean;
|
|
187
|
+
receivedAt: string;
|
|
188
|
+
}[];
|
|
189
|
+
cursor?: string | undefined;
|
|
190
|
+
};
|
|
191
|
+
}, "authorized", false, false>>;
|
|
192
|
+
completeReport: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
193
|
+
issueId: string;
|
|
194
|
+
duplicateCandidateId?: string | undefined;
|
|
195
|
+
}, {
|
|
196
|
+
readonly mode: 'value';
|
|
197
|
+
readonly value: {
|
|
198
|
+
issueId: string;
|
|
199
|
+
changed: boolean;
|
|
200
|
+
};
|
|
201
|
+
}, "authorized", false, false>>;
|
|
102
202
|
createTag: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
103
203
|
name: string;
|
|
104
204
|
color?: string | undefined;
|
|
@@ -4,10 +4,13 @@ import { z } from 'zod';
|
|
|
4
4
|
import { nodeIdValue } from '../../../types/index.js';
|
|
5
5
|
import { addProjectMemberMethod } from '../functions/add-project-member.js';
|
|
6
6
|
import { archiveProjectMethod } from '../functions/archive-project.js';
|
|
7
|
+
import { completeProjectReportMethod } from '../functions/complete-project-report.js';
|
|
7
8
|
import { createProjectIssueMethod } from '../functions/create-project-issue.js';
|
|
8
9
|
import { createProjectTagMethod } from '../functions/create-project-tag.js';
|
|
9
10
|
import { createProjectMethod } from '../functions/create-project.js';
|
|
11
|
+
import { listProjectReportsMethod } from '../functions/list-project-reports.js';
|
|
10
12
|
import { listProjectsMethod } from '../functions/list-projects.js';
|
|
13
|
+
import { receiveProjectReportMethod } from '../functions/receive-project-report.js';
|
|
11
14
|
import { removeProjectMemberMethod } from '../functions/remove-project-member.js';
|
|
12
15
|
import { updateProjectMethod } from '../functions/update-project.js';
|
|
13
16
|
import { ContributeToProject } from '../policies/contribute-to-project.js';
|
|
@@ -29,6 +32,9 @@ export const Project = nodeClass({
|
|
|
29
32
|
addMember: addProjectMemberMethod,
|
|
30
33
|
removeMember: removeProjectMemberMethod,
|
|
31
34
|
createIssue: createProjectIssueMethod,
|
|
35
|
+
receiveReport: receiveProjectReportMethod,
|
|
36
|
+
listReports: listProjectReportsMethod,
|
|
37
|
+
completeReport: completeProjectReportMethod,
|
|
32
38
|
createTag: createProjectTagMethod,
|
|
33
39
|
archive: archiveProjectMethod,
|
|
34
40
|
},
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const completeProjectReportMethod: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
2
|
+
issueId: string;
|
|
3
|
+
duplicateCandidateId?: string | undefined;
|
|
4
|
+
}, {
|
|
5
|
+
readonly mode: 'value';
|
|
6
|
+
readonly value: {
|
|
7
|
+
issueId: string;
|
|
8
|
+
changed: boolean;
|
|
9
|
+
};
|
|
10
|
+
}, "authorized", false, false>>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { method } from '@astrale-os/sdk/schema';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { nodeIdValue } from '../../../types/index.js';
|
|
4
|
+
import { ManageProject } from '../policies/manage-project.js';
|
|
5
|
+
export const completeProjectReportMethod = method({
|
|
6
|
+
description: 'Confirm report processing once, optionally adding one duplicate candidate without editing original evidence or human triage.',
|
|
7
|
+
auth: 'authorized',
|
|
8
|
+
policy: ({ check, self }) => check(ManageProject, self),
|
|
9
|
+
input: z.strictObject({ issueId: nodeIdValue, duplicateCandidateId: nodeIdValue.optional() }),
|
|
10
|
+
output: z.strictObject({ issueId: nodeIdValue, changed: z.boolean() }),
|
|
11
|
+
});
|
|
@@ -6,3 +6,6 @@ export { createProjectMethod } from './create-project.js';
|
|
|
6
6
|
export { listProjectsMethod } from './list-projects.js';
|
|
7
7
|
export { removeProjectMemberMethod } from './remove-project-member.js';
|
|
8
8
|
export { updateProjectMethod } from './update-project.js';
|
|
9
|
+
export { receiveProjectReportMethod } from './receive-project-report.js';
|
|
10
|
+
export { listProjectReportsMethod } from './list-project-reports.js';
|
|
11
|
+
export { completeProjectReportMethod } from './complete-project-report.js';
|
|
@@ -6,3 +6,6 @@ export { createProjectMethod } from './create-project.js';
|
|
|
6
6
|
export { listProjectsMethod } from './list-projects.js';
|
|
7
7
|
export { removeProjectMemberMethod } from './remove-project-member.js';
|
|
8
8
|
export { updateProjectMethod } from './update-project.js';
|
|
9
|
+
export { receiveProjectReportMethod } from './receive-project-report.js';
|
|
10
|
+
export { listProjectReportsMethod } from './list-project-reports.js';
|
|
11
|
+
export { completeProjectReportMethod } from './complete-project-report.js';
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export declare const listProjectReportsMethod: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
2
|
+
pending?: boolean | undefined;
|
|
3
|
+
cursor?: string | undefined;
|
|
4
|
+
}, {
|
|
5
|
+
readonly mode: 'value';
|
|
6
|
+
readonly value: {
|
|
7
|
+
reports: {
|
|
8
|
+
id: string;
|
|
9
|
+
reference: string;
|
|
10
|
+
reporterId: string;
|
|
11
|
+
content: {
|
|
12
|
+
title: string;
|
|
13
|
+
body: string;
|
|
14
|
+
context?: {
|
|
15
|
+
observedAt: string;
|
|
16
|
+
cli: {
|
|
17
|
+
version: string;
|
|
18
|
+
platform: string;
|
|
19
|
+
arch: string;
|
|
20
|
+
};
|
|
21
|
+
runtime: {
|
|
22
|
+
node: string;
|
|
23
|
+
bun?: string | undefined;
|
|
24
|
+
};
|
|
25
|
+
project?: {
|
|
26
|
+
name: string;
|
|
27
|
+
version?: string | undefined;
|
|
28
|
+
packages: {
|
|
29
|
+
name: string;
|
|
30
|
+
declared?: string | undefined;
|
|
31
|
+
version?: string | undefined;
|
|
32
|
+
source: "installed" | "local" | "unresolved";
|
|
33
|
+
commit?: string | undefined;
|
|
34
|
+
dirty?: boolean | undefined;
|
|
35
|
+
}[];
|
|
36
|
+
} | undefined;
|
|
37
|
+
instance?: {
|
|
38
|
+
name: string;
|
|
39
|
+
issuer?: string | undefined;
|
|
40
|
+
url?: string | undefined;
|
|
41
|
+
} | undefined;
|
|
42
|
+
} | undefined;
|
|
43
|
+
};
|
|
44
|
+
pending: boolean;
|
|
45
|
+
receivedAt: string;
|
|
46
|
+
}[];
|
|
47
|
+
cursor?: string | undefined;
|
|
48
|
+
};
|
|
49
|
+
}, "authorized", false, false>>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { method } from '@astrale-os/sdk/schema';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { reportPageValue } from '../../issue/index.js';
|
|
4
|
+
import { ManageProject } from '../policies/manage-project.js';
|
|
5
|
+
export const listProjectReportsMethod = method({
|
|
6
|
+
description: 'Read one bounded page of original reports for this Project owner; resume the returned cursor with the same pending filter.',
|
|
7
|
+
auth: 'authorized',
|
|
8
|
+
policy: ({ check, self }) => check(ManageProject, self),
|
|
9
|
+
input: z.strictObject({
|
|
10
|
+
pending: z.boolean().optional(),
|
|
11
|
+
cursor: z.string().max(16_384).optional(),
|
|
12
|
+
}),
|
|
13
|
+
output: reportPageValue,
|
|
14
|
+
});
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export declare const receiveProjectReportMethod: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
2
|
+
title: string;
|
|
3
|
+
body: string;
|
|
4
|
+
context?: {
|
|
5
|
+
observedAt: string;
|
|
6
|
+
cli: {
|
|
7
|
+
version: string;
|
|
8
|
+
platform: string;
|
|
9
|
+
arch: string;
|
|
10
|
+
};
|
|
11
|
+
runtime: {
|
|
12
|
+
node: string;
|
|
13
|
+
bun?: string | undefined;
|
|
14
|
+
};
|
|
15
|
+
project?: {
|
|
16
|
+
name: string;
|
|
17
|
+
version?: string | undefined;
|
|
18
|
+
packages: {
|
|
19
|
+
name: string;
|
|
20
|
+
declared?: string | undefined;
|
|
21
|
+
version?: string | undefined;
|
|
22
|
+
source: "installed" | "local" | "unresolved";
|
|
23
|
+
commit?: string | undefined;
|
|
24
|
+
dirty?: boolean | undefined;
|
|
25
|
+
}[];
|
|
26
|
+
} | undefined;
|
|
27
|
+
instance?: {
|
|
28
|
+
name: string;
|
|
29
|
+
issuer?: string | undefined;
|
|
30
|
+
url?: string | undefined;
|
|
31
|
+
} | undefined;
|
|
32
|
+
} | undefined;
|
|
33
|
+
requestId: string;
|
|
34
|
+
reporterId: string;
|
|
35
|
+
}, {
|
|
36
|
+
readonly mode: 'value';
|
|
37
|
+
readonly value: {
|
|
38
|
+
id: string;
|
|
39
|
+
reference: string;
|
|
40
|
+
};
|
|
41
|
+
}, "authorized", false, false>>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { method } from '@astrale-os/sdk/schema';
|
|
2
|
+
import { receiveReportInput, reportReceiptValue } from '../../issue/index.js';
|
|
3
|
+
import { ManageProject } from '../policies/manage-project.js';
|
|
4
|
+
export const receiveProjectReportMethod = method({
|
|
5
|
+
description: 'Receive an idempotent report from a trusted Project owner integration, attributing its verified reporter without granting Project membership.',
|
|
6
|
+
auth: 'authorized',
|
|
7
|
+
policy: ({ check, self }) => check(ManageProject, self),
|
|
8
|
+
input: receiveReportInput,
|
|
9
|
+
output: reportReceiptValue,
|
|
10
|
+
});
|
|
@@ -5,9 +5,9 @@ export declare const Tag: import("@astrale-os/sdk/schema").AuthoredNodeClass<{
|
|
|
5
5
|
readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Named">, import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
|
|
6
6
|
readonly properties: {
|
|
7
7
|
slug: z.ZodString;
|
|
8
|
-
color: import("@astrale-os/sdk/schema").
|
|
8
|
+
color: import("@astrale-os/sdk/schema").AuthoredProperty<z.ZodString, {
|
|
9
9
|
readonly required: false;
|
|
10
|
-
}
|
|
10
|
+
}>;
|
|
11
11
|
};
|
|
12
12
|
readonly methods: {
|
|
13
13
|
edit: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
package/dist/schema/schema.d.ts
CHANGED
|
@@ -8,9 +8,9 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
8
8
|
readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Named">, import("@astrale-os/sdk/schema").KernelClass<"Descriptable">, import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
|
|
9
9
|
readonly properties: {
|
|
10
10
|
key: import("zod").ZodString;
|
|
11
|
-
ownerId: import("@astrale-os/sdk/schema").
|
|
12
|
-
memberIds: import("@astrale-os/sdk/schema").
|
|
13
|
-
nextIssueNumber: import("@astrale-os/sdk/schema").
|
|
11
|
+
ownerId: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodString, {}>;
|
|
12
|
+
memberIds: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodArray<import("zod").ZodString>, {}>;
|
|
13
|
+
nextIssueNumber: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodNumber, {}>;
|
|
14
14
|
archived: import("zod").ZodBoolean;
|
|
15
15
|
};
|
|
16
16
|
readonly methods: {
|
|
@@ -102,6 +102,106 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
102
102
|
archived: boolean;
|
|
103
103
|
};
|
|
104
104
|
}, "authorized", false, false>>;
|
|
105
|
+
receiveReport: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
106
|
+
title: string;
|
|
107
|
+
body: string;
|
|
108
|
+
context?: {
|
|
109
|
+
observedAt: string;
|
|
110
|
+
cli: {
|
|
111
|
+
version: string;
|
|
112
|
+
platform: string;
|
|
113
|
+
arch: string;
|
|
114
|
+
};
|
|
115
|
+
runtime: {
|
|
116
|
+
node: string;
|
|
117
|
+
bun?: string | undefined;
|
|
118
|
+
};
|
|
119
|
+
project?: {
|
|
120
|
+
name: string;
|
|
121
|
+
version?: string | undefined;
|
|
122
|
+
packages: {
|
|
123
|
+
name: string;
|
|
124
|
+
declared?: string | undefined;
|
|
125
|
+
version?: string | undefined;
|
|
126
|
+
source: "installed" | "local" | "unresolved";
|
|
127
|
+
commit?: string | undefined;
|
|
128
|
+
dirty?: boolean | undefined;
|
|
129
|
+
}[];
|
|
130
|
+
} | undefined;
|
|
131
|
+
instance?: {
|
|
132
|
+
name: string;
|
|
133
|
+
issuer?: string | undefined;
|
|
134
|
+
url?: string | undefined;
|
|
135
|
+
} | undefined;
|
|
136
|
+
} | undefined;
|
|
137
|
+
requestId: string;
|
|
138
|
+
reporterId: string;
|
|
139
|
+
}, {
|
|
140
|
+
readonly mode: 'value';
|
|
141
|
+
readonly value: {
|
|
142
|
+
id: string;
|
|
143
|
+
reference: string;
|
|
144
|
+
};
|
|
145
|
+
}, "authorized", false, false>>;
|
|
146
|
+
listReports: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
147
|
+
pending?: boolean | undefined;
|
|
148
|
+
cursor?: string | undefined;
|
|
149
|
+
}, {
|
|
150
|
+
readonly mode: 'value';
|
|
151
|
+
readonly value: {
|
|
152
|
+
reports: {
|
|
153
|
+
id: string;
|
|
154
|
+
reference: string;
|
|
155
|
+
reporterId: string;
|
|
156
|
+
content: {
|
|
157
|
+
title: string;
|
|
158
|
+
body: string;
|
|
159
|
+
context?: {
|
|
160
|
+
observedAt: string;
|
|
161
|
+
cli: {
|
|
162
|
+
version: string;
|
|
163
|
+
platform: string;
|
|
164
|
+
arch: string;
|
|
165
|
+
};
|
|
166
|
+
runtime: {
|
|
167
|
+
node: string;
|
|
168
|
+
bun?: string | undefined;
|
|
169
|
+
};
|
|
170
|
+
project?: {
|
|
171
|
+
name: string;
|
|
172
|
+
version?: string | undefined;
|
|
173
|
+
packages: {
|
|
174
|
+
name: string;
|
|
175
|
+
declared?: string | undefined;
|
|
176
|
+
version?: string | undefined;
|
|
177
|
+
source: "installed" | "local" | "unresolved";
|
|
178
|
+
commit?: string | undefined;
|
|
179
|
+
dirty?: boolean | undefined;
|
|
180
|
+
}[];
|
|
181
|
+
} | undefined;
|
|
182
|
+
instance?: {
|
|
183
|
+
name: string;
|
|
184
|
+
issuer?: string | undefined;
|
|
185
|
+
url?: string | undefined;
|
|
186
|
+
} | undefined;
|
|
187
|
+
} | undefined;
|
|
188
|
+
};
|
|
189
|
+
pending: boolean;
|
|
190
|
+
receivedAt: string;
|
|
191
|
+
}[];
|
|
192
|
+
cursor?: string | undefined;
|
|
193
|
+
};
|
|
194
|
+
}, "authorized", false, false>>;
|
|
195
|
+
completeReport: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
196
|
+
issueId: string;
|
|
197
|
+
duplicateCandidateId?: string | undefined;
|
|
198
|
+
}, {
|
|
199
|
+
readonly mode: 'value';
|
|
200
|
+
readonly value: {
|
|
201
|
+
issueId: string;
|
|
202
|
+
changed: boolean;
|
|
203
|
+
};
|
|
204
|
+
}, "authorized", false, false>>;
|
|
105
205
|
createTag: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
106
206
|
name: string;
|
|
107
207
|
color?: string | undefined;
|
|
@@ -132,8 +232,8 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
132
232
|
readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Named">, import("@astrale-os/sdk/schema").KernelClass<"Descriptable">, import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
|
|
133
233
|
readonly properties: {
|
|
134
234
|
reference: import("zod").ZodString;
|
|
135
|
-
reporterId: import("@astrale-os/sdk/schema").
|
|
136
|
-
assigneeId: import("@astrale-os/sdk/schema").
|
|
235
|
+
reporterId: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodString, {}>;
|
|
236
|
+
assigneeId: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodOptional<import("zod").ZodString>, {}>;
|
|
137
237
|
status: import("@astrale-os/sdk/schema").StateProperty<import("@astrale-os/sdk/schema").StateMachine<{
|
|
138
238
|
readonly open: {
|
|
139
239
|
readonly accept: "accepted";
|
|
@@ -163,6 +263,45 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
163
263
|
}>;
|
|
164
264
|
priority: import("zod").ZodNumber;
|
|
165
265
|
archived: import("zod").ZodBoolean;
|
|
266
|
+
reportRequestId: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodOptional<import("zod").ZodString>, {}>;
|
|
267
|
+
report: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodOptional<import("zod").ZodObject<{
|
|
268
|
+
title: import("zod").ZodString;
|
|
269
|
+
body: import("zod").ZodString;
|
|
270
|
+
context: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
271
|
+
observedAt: import("zod").ZodString;
|
|
272
|
+
cli: import("zod").ZodObject<{
|
|
273
|
+
version: import("zod").ZodString;
|
|
274
|
+
platform: import("zod").ZodString;
|
|
275
|
+
arch: import("zod").ZodString;
|
|
276
|
+
}, import("zod/v4/core").$strict>;
|
|
277
|
+
runtime: import("zod").ZodObject<{
|
|
278
|
+
node: import("zod").ZodString;
|
|
279
|
+
bun: import("zod").ZodOptional<import("zod").ZodString>;
|
|
280
|
+
}, import("zod/v4/core").$strict>;
|
|
281
|
+
project: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
282
|
+
name: import("zod").ZodString;
|
|
283
|
+
version: import("zod").ZodOptional<import("zod").ZodString>;
|
|
284
|
+
packages: import("zod").ZodArray<import("zod").ZodObject<{
|
|
285
|
+
name: import("zod").ZodString;
|
|
286
|
+
declared: import("zod").ZodOptional<import("zod").ZodString>;
|
|
287
|
+
version: import("zod").ZodOptional<import("zod").ZodString>;
|
|
288
|
+
source: import("zod").ZodEnum<{
|
|
289
|
+
installed: "installed";
|
|
290
|
+
local: "local";
|
|
291
|
+
unresolved: "unresolved";
|
|
292
|
+
}>;
|
|
293
|
+
commit: import("zod").ZodOptional<import("zod").ZodString>;
|
|
294
|
+
dirty: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
295
|
+
}, import("zod/v4/core").$strict>>;
|
|
296
|
+
}, import("zod/v4/core").$strict>>;
|
|
297
|
+
instance: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
298
|
+
name: import("zod").ZodString;
|
|
299
|
+
issuer: import("zod").ZodOptional<import("zod").ZodString>;
|
|
300
|
+
url: import("zod").ZodOptional<import("zod").ZodString>;
|
|
301
|
+
}, import("zod/v4/core").$strict>>;
|
|
302
|
+
}, import("zod/v4/core").$strict>>;
|
|
303
|
+
}, import("zod/v4/core").$strict>>, {}>;
|
|
304
|
+
reportPending: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodOptional<import("zod").ZodBoolean>, {}>;
|
|
166
305
|
};
|
|
167
306
|
readonly methods: {
|
|
168
307
|
update: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
@@ -257,7 +396,7 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
257
396
|
readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
|
|
258
397
|
readonly properties: {
|
|
259
398
|
body: import("zod").ZodString;
|
|
260
|
-
authorId: import("@astrale-os/sdk/schema").
|
|
399
|
+
authorId: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodString, {}>;
|
|
261
400
|
};
|
|
262
401
|
readonly methods: {
|
|
263
402
|
edit: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
@@ -287,9 +426,9 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
287
426
|
readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Named">, import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
|
|
288
427
|
readonly properties: {
|
|
289
428
|
slug: import("zod").ZodString;
|
|
290
|
-
color: import("@astrale-os/sdk/schema").
|
|
429
|
+
color: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodString, {
|
|
291
430
|
readonly required: false;
|
|
292
|
-
}
|
|
431
|
+
}>;
|
|
293
432
|
};
|
|
294
433
|
readonly methods: {
|
|
295
434
|
edit: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
@@ -415,6 +554,24 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
415
554
|
};
|
|
416
555
|
readonly effectiveProperties: never;
|
|
417
556
|
}>;
|
|
557
|
+
readonly issue_duplicate_candidate: import("@astrale-os/sdk/schema").DirectedEdgeClass<{
|
|
558
|
+
readonly depth: 0;
|
|
559
|
+
readonly abstract: false;
|
|
560
|
+
readonly extends: readonly [];
|
|
561
|
+
readonly properties: never;
|
|
562
|
+
readonly source: {
|
|
563
|
+
readonly as: "report";
|
|
564
|
+
readonly outgoing: "0..*";
|
|
565
|
+
};
|
|
566
|
+
readonly target: {
|
|
567
|
+
readonly as: "candidate";
|
|
568
|
+
readonly incoming: "0..*";
|
|
569
|
+
};
|
|
570
|
+
readonly constraints: {
|
|
571
|
+
readonly noSelf: true;
|
|
572
|
+
};
|
|
573
|
+
readonly effectiveProperties: never;
|
|
574
|
+
}>;
|
|
418
575
|
readonly issue_has_comment: import("@astrale-os/sdk/schema").DirectedEdgeClass<{
|
|
419
576
|
readonly depth: 0;
|
|
420
577
|
readonly abstract: false;
|
|
@@ -483,6 +640,7 @@ export declare const schema: import("@astrale-os/sdk/schema").AuthoredSchema<"is
|
|
|
483
640
|
readonly policies: {
|
|
484
641
|
readonly ManageProject: import("@astrale-os/sdk/schema").Policy;
|
|
485
642
|
readonly ContributeToProject: import("@astrale-os/sdk/schema").Policy;
|
|
643
|
+
readonly TraverseDuplicateCandidate: import("@astrale-os/sdk/schema").Policy;
|
|
486
644
|
readonly ContributeToIssue: import("@astrale-os/sdk/schema").Policy;
|
|
487
645
|
readonly ContributeToTag: import("@astrale-os/sdk/schema").Policy;
|
|
488
646
|
readonly ManageTag: import("@astrale-os/sdk/schema").Policy;
|
package/dist/schema/schema.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { KernelSchema, defineSchema, view } from '@astrale-os/sdk/schema';
|
|
2
2
|
import { Comment, comment_authored_by, issue_has_comment, ContributeToComment, EditOwnComment, TraverseCommentRelationship, TraverseIssueComment, } from './modules/comment/index.js';
|
|
3
|
-
import { Issue, ContributeToIssue, TraverseIssueAssignee, TraverseIssueParent, TraverseIssueReporter, TraverseProjectIssue, issue_assigned_to, issue_reported_by, issue_subtask_of, project_contains_issue, } from './modules/issue/index.js';
|
|
3
|
+
import { Issue, issue_duplicate_candidate, TraverseDuplicateCandidate, ContributeToIssue, TraverseIssueAssignee, TraverseIssueParent, TraverseIssueReporter, TraverseProjectIssue, issue_assigned_to, issue_reported_by, issue_subtask_of, project_contains_issue, } from './modules/issue/index.js';
|
|
4
4
|
import { Project, ContributeToProject, ManageProject, TraverseProjectMember, TraverseProjectOwner, project_has_member, project_owned_by, } from './modules/project/index.js';
|
|
5
5
|
import { Tag, ContributeToTag, ManageTag, TraverseIssueTag, TraverseProjectTag, issue_tagged_with, project_contains_tag, } from './modules/tag/index.js';
|
|
6
6
|
const origin = 'issues.astrale.ai';
|
|
@@ -15,6 +15,7 @@ const classes = {
|
|
|
15
15
|
issue_reported_by,
|
|
16
16
|
issue_assigned_to,
|
|
17
17
|
issue_subtask_of,
|
|
18
|
+
issue_duplicate_candidate,
|
|
18
19
|
issue_has_comment,
|
|
19
20
|
comment_authored_by,
|
|
20
21
|
project_contains_tag,
|
|
@@ -23,6 +24,7 @@ const classes = {
|
|
|
23
24
|
const policies = {
|
|
24
25
|
ManageProject,
|
|
25
26
|
ContributeToProject,
|
|
27
|
+
TraverseDuplicateCandidate,
|
|
26
28
|
ContributeToIssue,
|
|
27
29
|
ContributeToTag,
|
|
28
30
|
ManageTag,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@astrale-domains/issues",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.4",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/astrale-os/domains.git",
|
|
@@ -28,15 +28,15 @@
|
|
|
28
28
|
"registry": "https://registry.npmjs.org/"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@astrale-os/sdk": "0.
|
|
31
|
+
"@astrale-os/sdk": "0.6.0-beta.0",
|
|
32
32
|
"zod": "4.4.3"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@astrale-os/adapter-cloudflare": "0.5.0-beta.
|
|
35
|
+
"@astrale-os/adapter-cloudflare": "0.5.0-beta.155",
|
|
36
36
|
"@astrale-os/ox": ">=0.1.4 <1.0.0",
|
|
37
|
-
"@astrale-os/shell": "0.
|
|
38
|
-
"@astrale-os/shell-react": "0.
|
|
39
|
-
"@astrale-os/ui": "0.3.0-beta.
|
|
37
|
+
"@astrale-os/shell": "0.6.0-beta.3",
|
|
38
|
+
"@astrale-os/shell-react": "0.5.0-beta.3",
|
|
39
|
+
"@astrale-os/ui": "0.3.0-beta.31",
|
|
40
40
|
"@tailwindcss/vite": "^4.3.3",
|
|
41
41
|
"@tanstack/react-router": "1.170.18",
|
|
42
42
|
"@tanstack/router-plugin": "1.168.23",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"@types/react": "^19.2.18",
|
|
47
47
|
"@types/react-dom": "^19.2.4",
|
|
48
48
|
"@vitejs/plugin-react": "^6.1.0",
|
|
49
|
-
"bun": "1.4.
|
|
49
|
+
"bun": "1.4.2",
|
|
50
50
|
"jsdom": "30.0.1",
|
|
51
51
|
"mermaid": "^11.17.0",
|
|
52
52
|
"oxlint": ">=1.79.0 <2.0.0",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"type-fest": "^5.8.0",
|
|
59
59
|
"typescript": "7.0.2",
|
|
60
60
|
"vite": "^8.2.2",
|
|
61
|
-
"vitest": "^
|
|
61
|
+
"vitest": "^5.0.1"
|
|
62
62
|
},
|
|
63
63
|
"engines": {
|
|
64
64
|
"node": ">=22.13"
|