forges 0.0.0 → 0.1.0
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/LICENCE +21 -0
- package/README.md +72 -0
- package/dist/azure-devops/index.d.mts +2 -0
- package/dist/azure-devops/index.mjs +1 -0
- package/dist/azure-devops-DwQvL4TV.mjs +1355 -0
- package/dist/bitbucket/index.d.mts +2 -0
- package/dist/bitbucket/index.mjs +1 -0
- package/dist/bitbucket-CpcfJlYi.mjs +1171 -0
- package/dist/crypto-CQNEyYHD.mjs +156 -0
- package/dist/cursor-origin/index.d.mts +2 -0
- package/dist/cursor-origin/index.mjs +1 -0
- package/dist/cursor-origin-BhqYx2oW.mjs +980 -0
- package/dist/define-B2_4ob2i.d.mts +307 -0
- package/dist/define-D3yEXtKK.mjs +2276 -0
- package/dist/env.d.mts +46 -0
- package/dist/env.mjs +283 -0
- package/dist/fake/index.d.mts +227 -0
- package/dist/fake/index.mjs +1001 -0
- package/dist/fetch-D4pSRvvA.d.mts +1723 -0
- package/dist/forgejo/index.d.mts +2 -0
- package/dist/forgejo/index.mjs +1 -0
- package/dist/forgejo-BCefbHUN.mjs +2005 -0
- package/dist/gitea/index.d.mts +2 -0
- package/dist/gitea/index.mjs +22 -0
- package/dist/gitee/index.d.mts +2 -0
- package/dist/gitee/index.mjs +1 -0
- package/dist/gitee-CA-f7Rs8.mjs +1272 -0
- package/dist/github/index.d.mts +2 -0
- package/dist/github/index.mjs +1 -0
- package/dist/github-B0umL8_f.mjs +3259 -0
- package/dist/gitlab/index.d.mts +2 -0
- package/dist/gitlab/index.mjs +1 -0
- package/dist/gitlab-Bsr__Z0C.mjs +2378 -0
- package/dist/graphql-D7uGzZTf.mjs +366 -0
- package/dist/index-BQ6VS31s.d.mts +32 -0
- package/dist/index-C-jz9Mo3.d.mts +16 -0
- package/dist/index-C4fYzmK3.d.mts +102 -0
- package/dist/index-CQiIX4SH.d.mts +27 -0
- package/dist/index-CTj5gQzl.d.mts +35 -0
- package/dist/index-CliBWzOF.d.mts +23 -0
- package/dist/index-Cz_y-t3d.d.mts +36 -0
- package/dist/index-DEt25E1w.d.mts +77 -0
- package/dist/index-DIuS0EOy.d.mts +43 -0
- package/dist/index-uSpsMCrC.d.mts +26 -0
- package/dist/index.d.mts +41 -0
- package/dist/index.mjs +13 -0
- package/dist/kit.d.mts +183 -0
- package/dist/kit.mjs +4 -0
- package/dist/provider-CoZ7cCxp.d.mts +1439 -0
- package/dist/provider-Ed1YhkQN.mjs +169 -0
- package/dist/pushin/index.d.mts +2 -0
- package/dist/pushin/index.mjs +1 -0
- package/dist/pushin-CkxgJ2cU.mjs +343 -0
- package/dist/schema/Actor.json +96 -0
- package/dist/schema/AlertSupport.json +49 -0
- package/dist/schema/AuthKind.json +15 -0
- package/dist/schema/Branch.json +31 -0
- package/dist/schema/ChangedFile.json +58 -0
- package/dist/schema/Check.json +169 -0
- package/dist/schema/CheckRef.json +114 -0
- package/dist/schema/CheckState.json +14 -0
- package/dist/schema/ChecksSummary.json +34 -0
- package/dist/schema/CiJob.json +186 -0
- package/dist/schema/CiJobRef.json +132 -0
- package/dist/schema/CiRun.json +234 -0
- package/dist/schema/CiRunRef.json +103 -0
- package/dist/schema/CodeFragment.json +19 -0
- package/dist/schema/CodeMatch.json +128 -0
- package/dist/schema/Collaborator.json +169 -0
- package/dist/schema/Comment.json +336 -0
- package/dist/schema/CommentRef.json +158 -0
- package/dist/schema/Commit.json +307 -0
- package/dist/schema/CommitRef.json +104 -0
- package/dist/schema/CommitSignature.json +118 -0
- package/dist/schema/Comparison.json +355 -0
- package/dist/schema/Cursor.json +21 -0
- package/dist/schema/EventAction.json +33 -0
- package/dist/schema/EventDetail.json +649 -0
- package/dist/schema/EventKind.json +26 -0
- package/dist/schema/FileContent.json +73 -0
- package/dist/schema/FileStatus.json +15 -0
- package/dist/schema/ForgeCapabilities.json +737 -0
- package/dist/schema/ForgeEvent.json +789 -0
- package/dist/schema/ForgeInstance.json +7 -0
- package/dist/schema/ForgeKind.json +32 -0
- package/dist/schema/ForgeWarning.json +49 -0
- package/dist/schema/ForgeWarningCode.json +7 -0
- package/dist/schema/GetManyResult.json +699 -0
- package/dist/schema/Installation.json +131 -0
- package/dist/schema/InstallationToken.json +31 -0
- package/dist/schema/KnownForgeKind.json +19 -0
- package/dist/schema/Label.json +22 -0
- package/dist/schema/MergeMethod.json +14 -0
- package/dist/schema/Milestone.json +40 -0
- package/dist/schema/Notification.json +498 -0
- package/dist/schema/NotificationReason.json +28 -0
- package/dist/schema/NotificationRef.json +60 -0
- package/dist/schema/NotificationSubject.json +376 -0
- package/dist/schema/PerKind.json +49 -0
- package/dist/schema/PullBranches.json +125 -0
- package/dist/schema/PushCommit.json +24 -0
- package/dist/schema/Reaction.json +148 -0
- package/dist/schema/ReactionContent.json +17 -0
- package/dist/schema/ReactionSummary.json +70 -0
- package/dist/schema/Release.json +286 -0
- package/dist/schema/ReleaseAsset.json +169 -0
- package/dist/schema/ReleaseAssetRef.json +138 -0
- package/dist/schema/ReleaseRef.json +107 -0
- package/dist/schema/Repo.json +354 -0
- package/dist/schema/RepoFeatures.json +35 -0
- package/dist/schema/RepoPermissions.json +35 -0
- package/dist/schema/RepoRef.json +77 -0
- package/dist/schema/RepoRole.json +15 -0
- package/dist/schema/RepoVisibility.json +12 -0
- package/dist/schema/Review.json +371 -0
- package/dist/schema/ReviewComment.json +280 -0
- package/dist/schema/ReviewCommentInput.json +34 -0
- package/dist/schema/ReviewRef.json +158 -0
- package/dist/schema/ReviewState.json +15 -0
- package/dist/schema/Reviewer.json +133 -0
- package/dist/schema/SecurityAlert.json +219 -0
- package/dist/schema/SecurityAlertKind.json +14 -0
- package/dist/schema/SecurityAlertRef.json +122 -0
- package/dist/schema/SecuritySeverity.json +14 -0
- package/dist/schema/SourceKind.json +12 -0
- package/dist/schema/SubscriptionState.json +12 -0
- package/dist/schema/Support.json +23 -0
- package/dist/schema/Tag.json +25 -0
- package/dist/schema/TextLimits.json +18 -0
- package/dist/schema/Thread.json +653 -0
- package/dist/schema/ThreadKind.json +14 -0
- package/dist/schema/ThreadRef.json +131 -0
- package/dist/schema/ThreadStack.json +146 -0
- package/dist/schema/ThreadState.json +13 -0
- package/dist/schema/TreeEntry.json +46 -0
- package/dist/schema/TreeEntryType.json +13 -0
- package/dist/schema/UpsertCommentResult.json +355 -0
- package/dist/schema/User.json +123 -0
- package/dist/schema/Webhook.json +188 -0
- package/dist/schema/WebhookDeliveryRecord.json +173 -0
- package/dist/schema/WebhookDeliveryRef.json +135 -0
- package/dist/schema/WebhookRef.json +105 -0
- package/dist/schema/index.d.mts +4 -0
- package/dist/schema/index.mjs +3219 -0
- package/dist/tangled/index.d.mts +2 -0
- package/dist/tangled/index.mjs +1 -0
- package/dist/tangled-ChdPmiv-.mjs +1570 -0
- package/dist/testing/index.d.mts +123 -0
- package/dist/testing/index.mjs +242 -0
- package/dist/webhooks-rn9-8lxT.mjs +70 -0
- package/package.json +115 -3
- package/dist/.gitkeep +0 -0
|
@@ -0,0 +1,653 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"ref": {
|
|
6
|
+
"$ref": "#/definitions/ThreadRef"
|
|
7
|
+
},
|
|
8
|
+
"kind": {
|
|
9
|
+
"$ref": "#/definitions/ThreadKind"
|
|
10
|
+
},
|
|
11
|
+
"title": {
|
|
12
|
+
"type": "string"
|
|
13
|
+
},
|
|
14
|
+
"body": {
|
|
15
|
+
"type": "string"
|
|
16
|
+
},
|
|
17
|
+
"state": {
|
|
18
|
+
"$ref": "#/definitions/ThreadState"
|
|
19
|
+
},
|
|
20
|
+
"stateRaw": {
|
|
21
|
+
"type": "string",
|
|
22
|
+
"description": "Forge-native state string the normalised `state` was derived from."
|
|
23
|
+
},
|
|
24
|
+
"stateReason": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"description": "Forge-native state qualifier, for example `completed` or `not_planned`."
|
|
27
|
+
},
|
|
28
|
+
"isDraft": {
|
|
29
|
+
"type": "boolean"
|
|
30
|
+
},
|
|
31
|
+
"author": {
|
|
32
|
+
"$ref": "#/definitions/Actor"
|
|
33
|
+
},
|
|
34
|
+
"assignees": {
|
|
35
|
+
"type": "array",
|
|
36
|
+
"items": {
|
|
37
|
+
"$ref": "#/definitions/Actor"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"reviewers": {
|
|
41
|
+
"type": "array",
|
|
42
|
+
"items": {
|
|
43
|
+
"$ref": "#/definitions/Reviewer"
|
|
44
|
+
},
|
|
45
|
+
"description": "Reviewers the thread read reports. Some forges report outstanding requests only, others each reviewer's verdict; `threads.reviews()` has every submitted review."
|
|
46
|
+
},
|
|
47
|
+
"labels": {
|
|
48
|
+
"type": "array",
|
|
49
|
+
"items": {
|
|
50
|
+
"$ref": "#/definitions/Label"
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"url": {
|
|
54
|
+
"type": "string"
|
|
55
|
+
},
|
|
56
|
+
"createdAt": {
|
|
57
|
+
"type": "string",
|
|
58
|
+
"format": "date-time"
|
|
59
|
+
},
|
|
60
|
+
"updatedAt": {
|
|
61
|
+
"type": "string",
|
|
62
|
+
"format": "date-time"
|
|
63
|
+
},
|
|
64
|
+
"closedAt": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"format": "date-time"
|
|
67
|
+
},
|
|
68
|
+
"lastActivityAt": {
|
|
69
|
+
"type": "string",
|
|
70
|
+
"format": "date-time",
|
|
71
|
+
"description": "Latest activity the forge reports for the thread."
|
|
72
|
+
},
|
|
73
|
+
"locked": {
|
|
74
|
+
"type": "boolean"
|
|
75
|
+
},
|
|
76
|
+
"commentCount": {
|
|
77
|
+
"type": "number"
|
|
78
|
+
},
|
|
79
|
+
"participants": {
|
|
80
|
+
"type": "array",
|
|
81
|
+
"items": {
|
|
82
|
+
"$ref": "#/definitions/Actor"
|
|
83
|
+
},
|
|
84
|
+
"description": "Everyone who authored or commented on the thread, where the forge reports them."
|
|
85
|
+
},
|
|
86
|
+
"readState": {
|
|
87
|
+
"type": "string",
|
|
88
|
+
"enum": [
|
|
89
|
+
"read",
|
|
90
|
+
"unread"
|
|
91
|
+
],
|
|
92
|
+
"description": "Whether the authenticated account has read the thread, where the forge tracks it per thread."
|
|
93
|
+
},
|
|
94
|
+
"subscription": {
|
|
95
|
+
"$ref": "#/definitions/SubscriptionState",
|
|
96
|
+
"description": "The authenticated account's subscription, where the thread read already carries it."
|
|
97
|
+
},
|
|
98
|
+
"milestone": {
|
|
99
|
+
"$ref": "#/definitions/Milestone"
|
|
100
|
+
},
|
|
101
|
+
"reactions": {
|
|
102
|
+
"$ref": "#/definitions/ReactionSummary"
|
|
103
|
+
},
|
|
104
|
+
"branches": {
|
|
105
|
+
"$ref": "#/definitions/PullBranches",
|
|
106
|
+
"description": "Pull requests only."
|
|
107
|
+
},
|
|
108
|
+
"checks": {
|
|
109
|
+
"$ref": "#/definitions/ChecksSummary",
|
|
110
|
+
"description": "Pull requests only."
|
|
111
|
+
},
|
|
112
|
+
"stack": {
|
|
113
|
+
"$ref": "#/definitions/ThreadStack",
|
|
114
|
+
"description": "Pull requests in a stack: a chain of dependent pull requests, each based on the one before."
|
|
115
|
+
},
|
|
116
|
+
"warnings": {
|
|
117
|
+
"type": "array",
|
|
118
|
+
"items": {
|
|
119
|
+
"$ref": "#/definitions/ForgeWarning"
|
|
120
|
+
},
|
|
121
|
+
"description": "Non-fatal problems hit while reading the thread, for example an unreachable record."
|
|
122
|
+
},
|
|
123
|
+
"raw": {
|
|
124
|
+
"description": "Unnormalised forge payload, retained for fidelity."
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
"required": [
|
|
128
|
+
"ref",
|
|
129
|
+
"kind",
|
|
130
|
+
"title",
|
|
131
|
+
"state",
|
|
132
|
+
"isDraft",
|
|
133
|
+
"assignees",
|
|
134
|
+
"reviewers",
|
|
135
|
+
"labels",
|
|
136
|
+
"raw"
|
|
137
|
+
],
|
|
138
|
+
"description": "An issue, pull request, discussion or commit conversation.",
|
|
139
|
+
"x-forges-type": "Thread",
|
|
140
|
+
"definitions": {
|
|
141
|
+
"Actor": {
|
|
142
|
+
"type": "object",
|
|
143
|
+
"properties": {
|
|
144
|
+
"forge": {
|
|
145
|
+
"$ref": "#/definitions/ForgeKind"
|
|
146
|
+
},
|
|
147
|
+
"instance": {
|
|
148
|
+
"$ref": "#/definitions/ForgeInstance",
|
|
149
|
+
"description": "The host of the instance, such as `github.com` or `git.example.com`."
|
|
150
|
+
},
|
|
151
|
+
"login": {
|
|
152
|
+
"type": "string"
|
|
153
|
+
},
|
|
154
|
+
"id": {
|
|
155
|
+
"type": "string"
|
|
156
|
+
},
|
|
157
|
+
"name": {
|
|
158
|
+
"type": "string"
|
|
159
|
+
},
|
|
160
|
+
"avatarUrl": {
|
|
161
|
+
"type": "string"
|
|
162
|
+
},
|
|
163
|
+
"url": {
|
|
164
|
+
"type": "string"
|
|
165
|
+
},
|
|
166
|
+
"typeRaw": {
|
|
167
|
+
"type": "string",
|
|
168
|
+
"description": "Forge-reported account type, retained verbatim for callers that classify further."
|
|
169
|
+
},
|
|
170
|
+
"isBotHint": {
|
|
171
|
+
"type": "boolean",
|
|
172
|
+
"description": "Hint derived from forge metadata that the actor is automation. Callers own the classification policy."
|
|
173
|
+
},
|
|
174
|
+
"app": {
|
|
175
|
+
"type": "object",
|
|
176
|
+
"properties": {
|
|
177
|
+
"slug": {
|
|
178
|
+
"type": "string"
|
|
179
|
+
},
|
|
180
|
+
"id": {
|
|
181
|
+
"type": "string"
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
"required": [
|
|
185
|
+
"slug"
|
|
186
|
+
],
|
|
187
|
+
"description": "The app behind a bot account, where the forge ties one to it (GitHub Apps' `slug[bot]` users)."
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
"required": [
|
|
191
|
+
"forge",
|
|
192
|
+
"id",
|
|
193
|
+
"instance",
|
|
194
|
+
"isBotHint",
|
|
195
|
+
"login"
|
|
196
|
+
],
|
|
197
|
+
"description": "An account: a user, an organisation or a bot.",
|
|
198
|
+
"x-forges-type": "Actor"
|
|
199
|
+
},
|
|
200
|
+
"ChecksSummary": {
|
|
201
|
+
"type": "object",
|
|
202
|
+
"properties": {
|
|
203
|
+
"state": {
|
|
204
|
+
"type": "string",
|
|
205
|
+
"enum": [
|
|
206
|
+
"pending",
|
|
207
|
+
"success",
|
|
208
|
+
"failure",
|
|
209
|
+
"unknown"
|
|
210
|
+
]
|
|
211
|
+
},
|
|
212
|
+
"stateRaw": {
|
|
213
|
+
"type": "string"
|
|
214
|
+
},
|
|
215
|
+
"total": {
|
|
216
|
+
"type": "number",
|
|
217
|
+
"description": "Absent when the forge reports only a combined state."
|
|
218
|
+
},
|
|
219
|
+
"failed": {
|
|
220
|
+
"type": "number"
|
|
221
|
+
},
|
|
222
|
+
"url": {
|
|
223
|
+
"type": "string"
|
|
224
|
+
}
|
|
225
|
+
},
|
|
226
|
+
"required": [
|
|
227
|
+
"state"
|
|
228
|
+
],
|
|
229
|
+
"description": "Combined state of the checks on a pull request's head commit. `failure` when any check failed, else `pending` while any runs, else `success`.",
|
|
230
|
+
"x-forges-type": "ChecksSummary"
|
|
231
|
+
},
|
|
232
|
+
"ForgeInstance": {
|
|
233
|
+
"type": "string",
|
|
234
|
+
"description": "Host of a single forge deployment, for example `github.com` or `codeberg.org`.",
|
|
235
|
+
"x-forges-type": "ForgeInstance"
|
|
236
|
+
},
|
|
237
|
+
"ForgeKind": {
|
|
238
|
+
"anyOf": [
|
|
239
|
+
{
|
|
240
|
+
"$ref": "#/definitions/KnownForgeKind"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"type": "string"
|
|
244
|
+
}
|
|
245
|
+
],
|
|
246
|
+
"description": "Identifier of a forge implementation. Unknown forges are permitted so that third-party providers can be registered without a core release.",
|
|
247
|
+
"x-forges-type": "ForgeKind"
|
|
248
|
+
},
|
|
249
|
+
"ForgeWarning": {
|
|
250
|
+
"type": "object",
|
|
251
|
+
"properties": {
|
|
252
|
+
"code": {
|
|
253
|
+
"$ref": "#/definitions/ForgeWarningCode",
|
|
254
|
+
"description": "Stable machine-readable code."
|
|
255
|
+
},
|
|
256
|
+
"message": {
|
|
257
|
+
"type": "string",
|
|
258
|
+
"description": "A description of the problem, for a person."
|
|
259
|
+
},
|
|
260
|
+
"subject": {
|
|
261
|
+
"type": "string",
|
|
262
|
+
"description": "Key or URI of the item the warning concerns, when it concerns one."
|
|
263
|
+
},
|
|
264
|
+
"cause": {
|
|
265
|
+
"type": "object",
|
|
266
|
+
"properties": {
|
|
267
|
+
"name": {
|
|
268
|
+
"type": "string"
|
|
269
|
+
},
|
|
270
|
+
"message": {
|
|
271
|
+
"type": "string"
|
|
272
|
+
},
|
|
273
|
+
"status": {
|
|
274
|
+
"type": "number"
|
|
275
|
+
}
|
|
276
|
+
},
|
|
277
|
+
"required": [
|
|
278
|
+
"name",
|
|
279
|
+
"message"
|
|
280
|
+
]
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
"required": [
|
|
284
|
+
"code",
|
|
285
|
+
"message"
|
|
286
|
+
],
|
|
287
|
+
"description": "A non-fatal problem encountered while producing a result.",
|
|
288
|
+
"x-forges-type": "ForgeWarning"
|
|
289
|
+
},
|
|
290
|
+
"ForgeWarningCode": {
|
|
291
|
+
"type": "string",
|
|
292
|
+
"description": "The warning codes providers emit; providers may add codes in a minor release.",
|
|
293
|
+
"x-forges-type": "ForgeWarningCode"
|
|
294
|
+
},
|
|
295
|
+
"KnownForgeKind": {
|
|
296
|
+
"type": "string",
|
|
297
|
+
"enum": [
|
|
298
|
+
"github",
|
|
299
|
+
"gitlab",
|
|
300
|
+
"bitbucket",
|
|
301
|
+
"forgejo",
|
|
302
|
+
"gitea",
|
|
303
|
+
"tangled",
|
|
304
|
+
"gitee",
|
|
305
|
+
"azure-devops",
|
|
306
|
+
"cursor-origin",
|
|
307
|
+
"pushin"
|
|
308
|
+
],
|
|
309
|
+
"description": "The forges this package ships providers for.",
|
|
310
|
+
"x-forges-type": "KnownForgeKind"
|
|
311
|
+
},
|
|
312
|
+
"Label": {
|
|
313
|
+
"type": "object",
|
|
314
|
+
"properties": {
|
|
315
|
+
"name": {
|
|
316
|
+
"type": "string"
|
|
317
|
+
},
|
|
318
|
+
"colour": {
|
|
319
|
+
"type": "string",
|
|
320
|
+
"description": "The colour as hex digits, without a leading `#`."
|
|
321
|
+
},
|
|
322
|
+
"description": {
|
|
323
|
+
"type": "string"
|
|
324
|
+
}
|
|
325
|
+
},
|
|
326
|
+
"required": [
|
|
327
|
+
"name"
|
|
328
|
+
],
|
|
329
|
+
"description": "A label that a repository defines.",
|
|
330
|
+
"x-forges-type": "Label"
|
|
331
|
+
},
|
|
332
|
+
"Milestone": {
|
|
333
|
+
"type": "object",
|
|
334
|
+
"properties": {
|
|
335
|
+
"id": {
|
|
336
|
+
"type": "string",
|
|
337
|
+
"description": "Forge-native milestone id, as `threads.setMilestone` takes it."
|
|
338
|
+
},
|
|
339
|
+
"title": {
|
|
340
|
+
"type": "string"
|
|
341
|
+
},
|
|
342
|
+
"state": {
|
|
343
|
+
"type": "string",
|
|
344
|
+
"enum": [
|
|
345
|
+
"open",
|
|
346
|
+
"closed"
|
|
347
|
+
]
|
|
348
|
+
},
|
|
349
|
+
"description": {
|
|
350
|
+
"type": "string"
|
|
351
|
+
},
|
|
352
|
+
"dueOn": {
|
|
353
|
+
"type": "string",
|
|
354
|
+
"format": "date-time"
|
|
355
|
+
},
|
|
356
|
+
"url": {
|
|
357
|
+
"type": "string"
|
|
358
|
+
},
|
|
359
|
+
"raw": {}
|
|
360
|
+
},
|
|
361
|
+
"required": [
|
|
362
|
+
"id",
|
|
363
|
+
"title",
|
|
364
|
+
"state",
|
|
365
|
+
"raw"
|
|
366
|
+
],
|
|
367
|
+
"description": "A milestone that groups threads.",
|
|
368
|
+
"x-forges-type": "Milestone"
|
|
369
|
+
},
|
|
370
|
+
"PullBranches": {
|
|
371
|
+
"type": "object",
|
|
372
|
+
"properties": {
|
|
373
|
+
"head": {
|
|
374
|
+
"type": "object",
|
|
375
|
+
"properties": {
|
|
376
|
+
"ref": {
|
|
377
|
+
"type": "string"
|
|
378
|
+
},
|
|
379
|
+
"sha": {
|
|
380
|
+
"type": "string"
|
|
381
|
+
},
|
|
382
|
+
"repo": {
|
|
383
|
+
"$ref": "#/definitions/RepoRef",
|
|
384
|
+
"description": "The repository that holds the head branch, which differs for a fork."
|
|
385
|
+
}
|
|
386
|
+
},
|
|
387
|
+
"required": [
|
|
388
|
+
"ref"
|
|
389
|
+
],
|
|
390
|
+
"description": "`sha` is absent on forges where a pull is a patch rather than a branch (Tangled)."
|
|
391
|
+
},
|
|
392
|
+
"base": {
|
|
393
|
+
"type": "object",
|
|
394
|
+
"properties": {
|
|
395
|
+
"ref": {
|
|
396
|
+
"type": "string"
|
|
397
|
+
},
|
|
398
|
+
"sha": {
|
|
399
|
+
"type": "string"
|
|
400
|
+
}
|
|
401
|
+
},
|
|
402
|
+
"required": [
|
|
403
|
+
"ref"
|
|
404
|
+
]
|
|
405
|
+
},
|
|
406
|
+
"mergeCommitSha": {
|
|
407
|
+
"type": "string",
|
|
408
|
+
"description": "The merge commit, once the pull request is merged."
|
|
409
|
+
}
|
|
410
|
+
},
|
|
411
|
+
"required": [
|
|
412
|
+
"head",
|
|
413
|
+
"base"
|
|
414
|
+
],
|
|
415
|
+
"description": "The branches of a pull request.",
|
|
416
|
+
"x-forges-type": "PullBranches"
|
|
417
|
+
},
|
|
418
|
+
"ReactionContent": {
|
|
419
|
+
"type": "string",
|
|
420
|
+
"enum": [
|
|
421
|
+
"+1",
|
|
422
|
+
"-1",
|
|
423
|
+
"laugh",
|
|
424
|
+
"confused",
|
|
425
|
+
"heart",
|
|
426
|
+
"hooray",
|
|
427
|
+
"rocket",
|
|
428
|
+
"eyes"
|
|
429
|
+
],
|
|
430
|
+
"description": "The reactions every forge with reactions has in common, named as GitHub names them. A {@link Reaction} whose forge-native name has no entry here has `content: 'other'`, with the forge-native name in `contentRaw`.",
|
|
431
|
+
"x-forges-type": "ReactionContent"
|
|
432
|
+
},
|
|
433
|
+
"ReactionSummary": {
|
|
434
|
+
"type": "object",
|
|
435
|
+
"properties": {
|
|
436
|
+
"total": {
|
|
437
|
+
"type": "number",
|
|
438
|
+
"description": "The number of reactions of every kind."
|
|
439
|
+
},
|
|
440
|
+
"counts": {
|
|
441
|
+
"type": "object",
|
|
442
|
+
"properties": {
|
|
443
|
+
"+1": {
|
|
444
|
+
"type": "number"
|
|
445
|
+
},
|
|
446
|
+
"-1": {
|
|
447
|
+
"type": "number"
|
|
448
|
+
},
|
|
449
|
+
"laugh": {
|
|
450
|
+
"type": "number"
|
|
451
|
+
},
|
|
452
|
+
"confused": {
|
|
453
|
+
"type": "number"
|
|
454
|
+
},
|
|
455
|
+
"heart": {
|
|
456
|
+
"type": "number"
|
|
457
|
+
},
|
|
458
|
+
"hooray": {
|
|
459
|
+
"type": "number"
|
|
460
|
+
},
|
|
461
|
+
"rocket": {
|
|
462
|
+
"type": "number"
|
|
463
|
+
},
|
|
464
|
+
"eyes": {
|
|
465
|
+
"type": "number"
|
|
466
|
+
}
|
|
467
|
+
},
|
|
468
|
+
"description": "The number of reactions of each kind. A reaction with no {@link ReactionContent} entry has no key here."
|
|
469
|
+
},
|
|
470
|
+
"viewerReacted": {
|
|
471
|
+
"type": "array",
|
|
472
|
+
"items": {
|
|
473
|
+
"$ref": "#/definitions/ReactionContent"
|
|
474
|
+
},
|
|
475
|
+
"description": "Reactions the authenticated account has left. Absent when the forge does not report them."
|
|
476
|
+
}
|
|
477
|
+
},
|
|
478
|
+
"required": [
|
|
479
|
+
"total",
|
|
480
|
+
"counts"
|
|
481
|
+
],
|
|
482
|
+
"description": "The reactions on a thread or comment, counted.",
|
|
483
|
+
"x-forges-type": "ReactionSummary"
|
|
484
|
+
},
|
|
485
|
+
"RepoRef": {
|
|
486
|
+
"type": "object",
|
|
487
|
+
"properties": {
|
|
488
|
+
"forge": {
|
|
489
|
+
"$ref": "#/definitions/ForgeKind"
|
|
490
|
+
},
|
|
491
|
+
"instance": {
|
|
492
|
+
"$ref": "#/definitions/ForgeInstance",
|
|
493
|
+
"description": "The host of the instance, such as `github.com` or `git.example.com`."
|
|
494
|
+
},
|
|
495
|
+
"owner": {
|
|
496
|
+
"type": "string",
|
|
497
|
+
"description": "Full namespace path. On forges with nested groups (GitLab) this contains slashes, for example `acme/platform`; `name` never does."
|
|
498
|
+
},
|
|
499
|
+
"name": {
|
|
500
|
+
"type": "string",
|
|
501
|
+
"description": "Repository name. Empty for namespace-scoped refs."
|
|
502
|
+
},
|
|
503
|
+
"kind": {
|
|
504
|
+
"type": "string",
|
|
505
|
+
"enum": [
|
|
506
|
+
"repo",
|
|
507
|
+
"namespace"
|
|
508
|
+
],
|
|
509
|
+
"description": "`'namespace'` for subjects that belong to a group rather than a repository (GitLab epics). Absent means a repository."
|
|
510
|
+
},
|
|
511
|
+
"externalId": {
|
|
512
|
+
"type": "string",
|
|
513
|
+
"description": "Stable forge-native identifier that survives renames and transfers: a GitHub, Forgejo or Gitea numeric id, a GitLab project or group id, a Bitbucket UUID or a Tangled repo DID. {@link repoKey} prefers it over `owner` and `name`."
|
|
514
|
+
}
|
|
515
|
+
},
|
|
516
|
+
"required": [
|
|
517
|
+
"forge",
|
|
518
|
+
"instance",
|
|
519
|
+
"name",
|
|
520
|
+
"owner"
|
|
521
|
+
],
|
|
522
|
+
"description": "Addresses a repository by its forge, instance, owner and name.",
|
|
523
|
+
"x-forges-type": "RepoRef"
|
|
524
|
+
},
|
|
525
|
+
"ReviewState": {
|
|
526
|
+
"type": "string",
|
|
527
|
+
"enum": [
|
|
528
|
+
"approved",
|
|
529
|
+
"changes_requested",
|
|
530
|
+
"commented",
|
|
531
|
+
"pending",
|
|
532
|
+
"dismissed",
|
|
533
|
+
"unknown"
|
|
534
|
+
],
|
|
535
|
+
"description": "What a review or a reviewer says about a pull request. `unknown` is a state that the model does not name.",
|
|
536
|
+
"x-forges-type": "ReviewState"
|
|
537
|
+
},
|
|
538
|
+
"Reviewer": {
|
|
539
|
+
"type": "object",
|
|
540
|
+
"properties": {
|
|
541
|
+
"actor": {
|
|
542
|
+
"$ref": "#/definitions/Actor"
|
|
543
|
+
},
|
|
544
|
+
"state": {
|
|
545
|
+
"$ref": "#/definitions/ReviewState"
|
|
546
|
+
},
|
|
547
|
+
"stateRaw": {
|
|
548
|
+
"type": "string"
|
|
549
|
+
},
|
|
550
|
+
"isTeam": {
|
|
551
|
+
"type": "boolean",
|
|
552
|
+
"description": "True when the reviewer is a team rather than an account."
|
|
553
|
+
}
|
|
554
|
+
},
|
|
555
|
+
"required": [
|
|
556
|
+
"actor",
|
|
557
|
+
"state"
|
|
558
|
+
],
|
|
559
|
+
"description": "A reviewer who was asked to review a pull request, and what they said.",
|
|
560
|
+
"x-forges-type": "Reviewer"
|
|
561
|
+
},
|
|
562
|
+
"SubscriptionState": {
|
|
563
|
+
"type": "string",
|
|
564
|
+
"enum": [
|
|
565
|
+
"subscribed",
|
|
566
|
+
"ignored",
|
|
567
|
+
"none"
|
|
568
|
+
],
|
|
569
|
+
"description": "Whether the account gets notifications for a thread.",
|
|
570
|
+
"x-forges-type": "SubscriptionState"
|
|
571
|
+
},
|
|
572
|
+
"ThreadKind": {
|
|
573
|
+
"type": "string",
|
|
574
|
+
"enum": [
|
|
575
|
+
"issue",
|
|
576
|
+
"pull_request",
|
|
577
|
+
"discussion",
|
|
578
|
+
"commit",
|
|
579
|
+
"other"
|
|
580
|
+
],
|
|
581
|
+
"description": "Kind of thread. `'other'` holds forge-specific subjects with no shared kind (check suites, epics); `ThreadRef.typeRaw` names them.",
|
|
582
|
+
"x-forges-type": "ThreadKind"
|
|
583
|
+
},
|
|
584
|
+
"ThreadRef": {
|
|
585
|
+
"type": "object",
|
|
586
|
+
"properties": {
|
|
587
|
+
"forge": {
|
|
588
|
+
"$ref": "#/definitions/ForgeKind"
|
|
589
|
+
},
|
|
590
|
+
"instance": {
|
|
591
|
+
"$ref": "#/definitions/ForgeInstance",
|
|
592
|
+
"description": "The host of the instance, such as `github.com` or `git.example.com`."
|
|
593
|
+
},
|
|
594
|
+
"repo": {
|
|
595
|
+
"$ref": "#/definitions/RepoRef"
|
|
596
|
+
},
|
|
597
|
+
"kind": {
|
|
598
|
+
"$ref": "#/definitions/ThreadKind"
|
|
599
|
+
},
|
|
600
|
+
"typeRaw": {
|
|
601
|
+
"type": "string",
|
|
602
|
+
"description": "Forge-native subject type, for example `PullRequest` or `MergeRequest`."
|
|
603
|
+
},
|
|
604
|
+
"number": {
|
|
605
|
+
"type": "string",
|
|
606
|
+
"description": "Per-repo thread number, the commit sha for `kind: 'commit'`, or the forge-native id for `kind: 'other'`. Absent when the forge did not identify the thread; such a ref cannot be fetched or keyed until enriched."
|
|
607
|
+
},
|
|
608
|
+
"displayNumber": {
|
|
609
|
+
"type": "string",
|
|
610
|
+
"description": "Human-facing per-repo number, when it differs from `number`. Tangled identifies threads by AT-URI but shows numbers in its UI and webhooks."
|
|
611
|
+
},
|
|
612
|
+
"externalId": {
|
|
613
|
+
"type": "string",
|
|
614
|
+
"description": "Globally unique forge-native identifier, where one exists: a GitHub `node_id`, a GitLab global id, or an atproto record URI."
|
|
615
|
+
}
|
|
616
|
+
},
|
|
617
|
+
"required": [
|
|
618
|
+
"forge",
|
|
619
|
+
"instance",
|
|
620
|
+
"kind",
|
|
621
|
+
"repo"
|
|
622
|
+
],
|
|
623
|
+
"description": "Reference to a thread. A thread `number` is unique only within its repo, so the repo is always carried alongside it.",
|
|
624
|
+
"x-forges-type": "ThreadRef"
|
|
625
|
+
},
|
|
626
|
+
"ThreadStack": {
|
|
627
|
+
"type": "object",
|
|
628
|
+
"properties": {
|
|
629
|
+
"id": {
|
|
630
|
+
"type": "string",
|
|
631
|
+
"description": "Forge-native stack id, where the forge names stacks."
|
|
632
|
+
},
|
|
633
|
+
"parent": {
|
|
634
|
+
"$ref": "#/definitions/ThreadRef",
|
|
635
|
+
"description": "The pull request this one is stacked on. Absent for the root of the stack."
|
|
636
|
+
}
|
|
637
|
+
},
|
|
638
|
+
"description": "Where a pull request sits in a stack of pull requests.",
|
|
639
|
+
"x-forges-type": "ThreadStack"
|
|
640
|
+
},
|
|
641
|
+
"ThreadState": {
|
|
642
|
+
"type": "string",
|
|
643
|
+
"enum": [
|
|
644
|
+
"open",
|
|
645
|
+
"closed",
|
|
646
|
+
"merged",
|
|
647
|
+
"unknown"
|
|
648
|
+
],
|
|
649
|
+
"description": "Thread state. `'unknown'` is distinct from any real state and signals that the value was not present in the payload, so the caller may enrich it with `threads.get()`. Draft status is orthogonal; see `Thread.isDraft`.",
|
|
650
|
+
"x-forges-type": "ThreadState"
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"type": "string",
|
|
4
|
+
"enum": [
|
|
5
|
+
"issue",
|
|
6
|
+
"pull_request",
|
|
7
|
+
"discussion",
|
|
8
|
+
"commit",
|
|
9
|
+
"other"
|
|
10
|
+
],
|
|
11
|
+
"description": "Kind of thread. `'other'` holds forge-specific subjects with no shared kind (check suites, epics); `ThreadRef.typeRaw` names them.",
|
|
12
|
+
"x-forges-type": "ThreadKind",
|
|
13
|
+
"definitions": {}
|
|
14
|
+
}
|