@openvtc/trust-tasks 0.20.2 → 0.20.3

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.
Files changed (85) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/_shared/components.d.ts +175 -0
  3. package/dist/_shared/components.d.ts.map +1 -1
  4. package/dist/git-ns/_shared/0.1/git-ns.d.ts +16 -0
  5. package/dist/git-ns/_shared/0.1/git-ns.d.ts.map +1 -0
  6. package/dist/git-ns/_shared/0.1/git-ns.js +6 -0
  7. package/dist/git-ns/_shared/0.1/git-ns.js.map +1 -0
  8. package/dist/git-ns/account/link/0.1/payload.d.ts +355 -0
  9. package/dist/git-ns/account/link/0.1/payload.d.ts.map +1 -0
  10. package/dist/git-ns/account/link/0.1/payload.js +192 -0
  11. package/dist/git-ns/account/link/0.1/payload.js.map +1 -0
  12. package/dist/git-ns/account/link-status/0.1/payload.d.ts +403 -0
  13. package/dist/git-ns/account/link-status/0.1/payload.d.ts.map +1 -0
  14. package/dist/git-ns/account/link-status/0.1/payload.js +234 -0
  15. package/dist/git-ns/account/link-status/0.1/payload.js.map +1 -0
  16. package/dist/git-ns/bridge/event/0.1/payload.d.ts +1348 -0
  17. package/dist/git-ns/bridge/event/0.1/payload.d.ts.map +1 -0
  18. package/dist/git-ns/bridge/event/0.1/payload.js +785 -0
  19. package/dist/git-ns/bridge/event/0.1/payload.js.map +1 -0
  20. package/dist/git-ns/bridge/job/0.1/payload.d.ts +1044 -0
  21. package/dist/git-ns/bridge/job/0.1/payload.d.ts.map +1 -0
  22. package/dist/git-ns/bridge/job/0.1/payload.js +564 -0
  23. package/dist/git-ns/bridge/job/0.1/payload.js.map +1 -0
  24. package/dist/git-ns/bridge/result/0.1/payload.d.ts +462 -0
  25. package/dist/git-ns/bridge/result/0.1/payload.d.ts.map +1 -0
  26. package/dist/git-ns/bridge/result/0.1/payload.js +248 -0
  27. package/dist/git-ns/bridge/result/0.1/payload.js.map +1 -0
  28. package/dist/git-ns/namespace/bind/0.1/payload.d.ts +547 -0
  29. package/dist/git-ns/namespace/bind/0.1/payload.d.ts.map +1 -0
  30. package/dist/git-ns/namespace/bind/0.1/payload.js +322 -0
  31. package/dist/git-ns/namespace/bind/0.1/payload.js.map +1 -0
  32. package/dist/git-ns/namespace/unbind/0.1/payload.d.ts +300 -0
  33. package/dist/git-ns/namespace/unbind/0.1/payload.d.ts.map +1 -0
  34. package/dist/git-ns/namespace/unbind/0.1/payload.js +168 -0
  35. package/dist/git-ns/namespace/unbind/0.1/payload.js.map +1 -0
  36. package/dist/git-ns/repo/adopt/0.1/payload.d.ts +962 -0
  37. package/dist/git-ns/repo/adopt/0.1/payload.d.ts.map +1 -0
  38. package/dist/git-ns/repo/adopt/0.1/payload.js +583 -0
  39. package/dist/git-ns/repo/adopt/0.1/payload.js.map +1 -0
  40. package/dist/git-ns/repo/archive/0.1/payload.d.ts +959 -0
  41. package/dist/git-ns/repo/archive/0.1/payload.d.ts.map +1 -0
  42. package/dist/git-ns/repo/archive/0.1/payload.js +584 -0
  43. package/dist/git-ns/repo/archive/0.1/payload.js.map +1 -0
  44. package/dist/git-ns/repo/create/0.1/payload.d.ts +1074 -0
  45. package/dist/git-ns/repo/create/0.1/payload.d.ts.map +1 -0
  46. package/dist/git-ns/repo/create/0.1/payload.js +636 -0
  47. package/dist/git-ns/repo/create/0.1/payload.js.map +1 -0
  48. package/dist/git-ns/repo/transfer/0.1/payload.d.ts +947 -0
  49. package/dist/git-ns/repo/transfer/0.1/payload.d.ts.map +1 -0
  50. package/dist/git-ns/repo/transfer/0.1/payload.js +577 -0
  51. package/dist/git-ns/repo/transfer/0.1/payload.js.map +1 -0
  52. package/dist/git-ns/right/grant/0.1/payload.d.ts +506 -0
  53. package/dist/git-ns/right/grant/0.1/payload.d.ts.map +1 -0
  54. package/dist/git-ns/right/grant/0.1/payload.js +289 -0
  55. package/dist/git-ns/right/grant/0.1/payload.js.map +1 -0
  56. package/dist/git-ns/right/revoke/0.1/payload.d.ts +492 -0
  57. package/dist/git-ns/right/revoke/0.1/payload.d.ts.map +1 -0
  58. package/dist/git-ns/right/revoke/0.1/payload.js +284 -0
  59. package/dist/git-ns/right/revoke/0.1/payload.js.map +1 -0
  60. package/dist/git-ns/view/0.1/payload.d.ts +1407 -0
  61. package/dist/git-ns/view/0.1/payload.d.ts.map +1 -0
  62. package/dist/git-ns/view/0.1/payload.js +860 -0
  63. package/dist/git-ns/view/0.1/payload.js.map +1 -0
  64. package/dist/index.d.ts +15 -0
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +15 -0
  67. package/dist/index.js.map +1 -1
  68. package/package.json +1 -1
  69. package/src/_shared/components.ts +181 -0
  70. package/src/git-ns/_shared/0.1/git-ns.ts +17 -0
  71. package/src/git-ns/account/link/0.1/payload.ts +242 -0
  72. package/src/git-ns/account/link-status/0.1/payload.ts +276 -0
  73. package/src/git-ns/bridge/event/0.1/payload.ts +902 -0
  74. package/src/git-ns/bridge/job/0.1/payload.ts +676 -0
  75. package/src/git-ns/bridge/result/0.1/payload.ts +321 -0
  76. package/src/git-ns/namespace/bind/0.1/payload.ts +374 -0
  77. package/src/git-ns/namespace/unbind/0.1/payload.ts +211 -0
  78. package/src/git-ns/repo/adopt/0.1/payload.ts +628 -0
  79. package/src/git-ns/repo/archive/0.1/payload.ts +626 -0
  80. package/src/git-ns/repo/create/0.1/payload.ts +689 -0
  81. package/src/git-ns/repo/transfer/0.1/payload.ts +619 -0
  82. package/src/git-ns/right/grant/0.1/payload.ts +340 -0
  83. package/src/git-ns/right/revoke/0.1/payload.ts +331 -0
  84. package/src/git-ns/view/0.1/payload.ts +906 -0
  85. package/src/index.ts +15 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../../../src/git-ns/repo/transfer/0.1/payload.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,mCAAmC,CAAC;AAG3K;;GAEG;AACH,MAAM,WAAW,+CAA+C;IAC9D;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;IACvB;;OAEG;IACH,EAAE,EAAE,GAAG,CAAC;IACR,GAAG,CAAC,EAAE,GAAG,CAAC;CACX;AACD;;GAEG;AACH,MAAM,WAAW,uDAAuD;IACtE;;OAEG;IACH,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,CAAC,EAAE,GAAG,CAAC;CACX;AAED,kHAAkH;AAClH,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;AAElI,2BAA2B;AAC3B,eAAO,MAAM,QAAQ,EAAG,sDAA+D,CAAC;AAExF,mEAAmE;AACnE,MAAM,MAAM,OAAO,GAAG,+CAA+C,CAAC;AAEtE,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,EAAG,+DAAwE,CAAC;AAE1G,4EAA4E;AAC5E,MAAM,MAAM,QAAQ,GAAG,uDAAuD,CAAC;AAE/E;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmRjB,CAAC;AAEX,mEAAmE;AACnE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8P1B,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOP,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOhB,CAAC"}
@@ -0,0 +1,577 @@
1
+ /**
2
+ * Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
3
+ * Source: specs/git-ns/repo/transfer/0.1/payload.schema.json
4
+ */
5
+ /** Trust Task type URI. */
6
+ export const TYPE_URI = "https://trusttasks.org/spec/git-ns/repo/transfer/0.1";
7
+ /** Trust Task response type URI (request type URI + "#response"). */
8
+ export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/git-ns/repo/transfer/0.1#response";
9
+ /**
10
+ * This specification's payload schema, as a value.
11
+ *
12
+ * SPEC.md §7.2 item 2 is performed against this. It is shipped as data
13
+ * rather than only as a `.json` file because TypeScript types are erased
14
+ * at runtime: without a schema a consumer has nothing to validate, and
15
+ * every REQUIRED payload member is optional in practice. Cross-file
16
+ * `$ref`s are already inlined, so it needs no resolver.
17
+ */
18
+ export const PAYLOAD_SCHEMA = {
19
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
20
+ "$id": "https://trusttasks.org/spec/git-ns/repo/transfer/0.1",
21
+ "title": "Git Namespaces — Transfer Repository Ownership — payload",
22
+ "description": "An owner hands their ownership of a repository to someone else: `to` is recorded as an owner and the caller's own `git.repo.own` record is revoked. Ownership moves between people; the repository stays where it is on the forge.",
23
+ "type": "object",
24
+ "additionalProperties": false,
25
+ "required": [
26
+ "resource",
27
+ "to"
28
+ ],
29
+ "properties": {
30
+ "resource": {
31
+ "$ref": "#/$defs/RepoResource",
32
+ "description": "The repository."
33
+ },
34
+ "to": {
35
+ "$ref": "#/$defs/Did",
36
+ "description": "Who receives ownership."
37
+ },
38
+ "ext": {
39
+ "$ref": "#/$defs/Ext"
40
+ }
41
+ },
42
+ "$defs": {
43
+ "Response": {
44
+ "$anchor": "response",
45
+ "title": "Git Namespaces — Transfer Repository Ownership — response payload",
46
+ "description": "The repository after the transfer.",
47
+ "type": "object",
48
+ "additionalProperties": false,
49
+ "required": [
50
+ "repo"
51
+ ],
52
+ "properties": {
53
+ "repo": {
54
+ "$ref": "#/$defs/RepoSummary",
55
+ "description": "The repository after the transfer."
56
+ },
57
+ "ext": {
58
+ "$ref": "#/$defs/Ext"
59
+ }
60
+ }
61
+ },
62
+ "Ext": {
63
+ "title": "Ext",
64
+ "description": "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.",
65
+ "type": "object",
66
+ "minProperties": 1,
67
+ "additionalProperties": true,
68
+ "propertyNames": {
69
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
70
+ }
71
+ },
72
+ "RepoSummary": {
73
+ "title": "RepoSummary",
74
+ "description": "One repository as the VTC records it.",
75
+ "type": "object",
76
+ "additionalProperties": false,
77
+ "required": [
78
+ "resource",
79
+ "visibility",
80
+ "state",
81
+ "owners",
82
+ "bootstrap",
83
+ "sync"
84
+ ],
85
+ "properties": {
86
+ "resource": {
87
+ "$ref": "#/$defs/RepoResource"
88
+ },
89
+ "forgeId": {
90
+ "$ref": "#/$defs/ForgeId",
91
+ "description": "The forge's repository id. Absent until the forge has confirmed the repository exists (a `pendingCreate` repository, or one adopted in bridge mode before the first inspection)."
92
+ },
93
+ "visibility": {
94
+ "$ref": "#/$defs/RepoVisibility"
95
+ },
96
+ "state": {
97
+ "type": "string",
98
+ "enum": [
99
+ "pendingCreate",
100
+ "active",
101
+ "archived",
102
+ "detached",
103
+ "orphaned",
104
+ "unmanaged"
105
+ ],
106
+ "description": "`pendingCreate` — the name is reserved and the repository is not yet confirmed on the forge. `active` — managed. `archived` — archived through git-ns/repo/archive; commit rights on it are revoked. `detached` — no longer governed: its namespace was unbound, or it moved outside the namespace. `orphaned` — its last owner left the community and ownership passed to the namespace admins, who have not yet named a new owner. `unmanaged` — it exists on the forge inside a bound namespace but was never created or adopted through the VTC."
107
+ },
108
+ "owners": {
109
+ "type": "array",
110
+ "uniqueItems": true,
111
+ "items": {
112
+ "$ref": "#/$defs/Did"
113
+ },
114
+ "description": "The DIDs holding `git.repo.own` on this repository by an explicit grant. Empty only for an `unmanaged` repository, and for an `orphaned` one whose ownership rests with the namespace admins by implication."
115
+ },
116
+ "bootstrap": {
117
+ "$ref": "#/$defs/Bootstrap"
118
+ },
119
+ "sync": {
120
+ "$ref": "#/$defs/Sync"
121
+ }
122
+ }
123
+ },
124
+ "Sync": {
125
+ "title": "Sync",
126
+ "description": "How the forge compares with the VTC's projection for one repository.",
127
+ "type": "object",
128
+ "additionalProperties": false,
129
+ "required": [
130
+ "state",
131
+ "drift"
132
+ ],
133
+ "properties": {
134
+ "state": {
135
+ "type": "string",
136
+ "enum": [
137
+ "inSync",
138
+ "drift",
139
+ "pending",
140
+ "unchecked"
141
+ ],
142
+ "description": "`inSync` — the last comparison found no drift. `drift` — it found some, listed in `drift`. `pending` — a change has been sent to the forge and not yet confirmed. `unchecked` — nothing compares this repository (a manual-mode namespace)."
143
+ },
144
+ "checkedAt": {
145
+ "type": "string",
146
+ "format": "date-time",
147
+ "description": "When the forge was last compared. Absent if never."
148
+ },
149
+ "drift": {
150
+ "type": "array",
151
+ "items": {
152
+ "$ref": "#/$defs/DriftItem"
153
+ },
154
+ "description": "Outstanding drift. Empty unless `state` is `drift`."
155
+ }
156
+ }
157
+ },
158
+ "DriftItem": {
159
+ "title": "DriftItem",
160
+ "description": "One difference between the forge's observed state and the VTC's projection of a repository.",
161
+ "type": "object",
162
+ "additionalProperties": false,
163
+ "required": [
164
+ "type",
165
+ "resource"
166
+ ],
167
+ "properties": {
168
+ "type": {
169
+ "type": "string",
170
+ "enum": [
171
+ "roleAdded",
172
+ "roleRemoved",
173
+ "roleChanged",
174
+ "requiredCheckMissing",
175
+ "protectionWeakened",
176
+ "bootstrapMissing"
177
+ ],
178
+ "description": "`roleAdded` — someone holds a forge role the projection does not give them. `roleRemoved` — a projected role is missing. `roleChanged` — a projected role is present at another level. `requiredCheckMissing` — the verify-trust check is no longer required. `protectionWeakened` — branch protection or a ruleset is weaker than the projection in another way (force-push allowed, bypass actors added). `bootstrapMissing` — a bootstrap file or variable is gone."
179
+ },
180
+ "resource": {
181
+ "$ref": "#/$defs/RepoResource"
182
+ },
183
+ "account": {
184
+ "$ref": "#/$defs/ForgeAccount",
185
+ "description": "Whose role differs, for the three role types."
186
+ },
187
+ "observed": {
188
+ "type": "string",
189
+ "maxLength": 256,
190
+ "description": "What the forge shows, in the forge's own vocabulary (a role name such as `maintain`, a setting name). Absent when nothing is there."
191
+ },
192
+ "expected": {
193
+ "type": "string",
194
+ "maxLength": 256,
195
+ "description": "What the projection calls for, in the forge's own vocabulary. Absent when the projection calls for nothing."
196
+ }
197
+ }
198
+ },
199
+ "ForgeAccount": {
200
+ "title": "ForgeAccount",
201
+ "description": "A person's account on one forge. `id` is authoritative; `login` is for display only, because logins can be renamed and re-registered.",
202
+ "type": "object",
203
+ "additionalProperties": false,
204
+ "required": [
205
+ "forge",
206
+ "id",
207
+ "login"
208
+ ],
209
+ "properties": {
210
+ "forge": {
211
+ "$ref": "#/$defs/ForgeHost"
212
+ },
213
+ "id": {
214
+ "$ref": "#/$defs/ForgeId"
215
+ },
216
+ "login": {
217
+ "type": "string",
218
+ "minLength": 1,
219
+ "maxLength": 100,
220
+ "description": "The account's current login, as the forge reported it when last seen. Display only."
221
+ }
222
+ }
223
+ },
224
+ "ForgeId": {
225
+ "title": "ForgeId",
226
+ "description": "An identifier the forge itself assigns — a repository id, a user or organisation id — carried as a string so a forge whose ids are not numbers needs no new version. GitHub and Forgejo ids are decimal integers written as strings (`\"812736451\"`). Unlike a name, it survives renames and transfers, which is why rights and bindings are keyed by it.",
227
+ "type": "string",
228
+ "minLength": 1,
229
+ "maxLength": 64
230
+ },
231
+ "ForgeHost": {
232
+ "title": "ForgeHost",
233
+ "description": "The lowercased DNS host of a forge: `github.com`, a GitHub Enterprise Server host, `codeberg.org`, or a self-hosted Forgejo instance such as `git.example.org`. No scheme, no port, no path. The host is a segment of every resource, so a right never crosses forges.",
234
+ "type": "string",
235
+ "minLength": 3,
236
+ "maxLength": 253,
237
+ "pattern": "^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\\.[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)+$"
238
+ },
239
+ "RepoResource": {
240
+ "title": "RepoResource",
241
+ "description": "A forge-qualified resource naming exactly one repository: `<forge-host>/<owner>/<repo>`, lowercase.",
242
+ "type": "string",
243
+ "maxLength": 455,
244
+ "pattern": "^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\\.[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)+/[a-z0-9_-][a-z0-9._-]{0,99}/[a-z0-9_-][a-z0-9._-]{0,99}$"
245
+ },
246
+ "Bootstrap": {
247
+ "title": "Bootstrap",
248
+ "description": "Whether each step that turns commit trust on for a repository is in place, as last reported. A step that this forge's plan does not need reads `true`.",
249
+ "type": "object",
250
+ "additionalProperties": false,
251
+ "required": [
252
+ "workflow",
253
+ "keyring",
254
+ "variables",
255
+ "requiredCheck"
256
+ ],
257
+ "properties": {
258
+ "workflow": {
259
+ "type": "boolean",
260
+ "description": "The verify-trust check runs on the repository's pull requests — from a workflow committed to it, or, where the forge supports it, required on it from the namespace's own bridge-managed workflow repository at a pinned commit."
261
+ },
262
+ "keyring": {
263
+ "type": "boolean",
264
+ "description": "The exempt platform keyring for forge-signed merge commits is committed, or the forge's plan does not need one."
265
+ },
266
+ "variables": {
267
+ "type": "boolean",
268
+ "description": "The repository names the Trust Registry and this VTC as its trust anchors."
269
+ },
270
+ "requiredCheck": {
271
+ "type": "boolean",
272
+ "description": "The forge refuses to merge into the default branch unless the verify-trust check passes, with no bypass, and a pull request cannot change what that check runs: an organisation-required workflow, code-owner review of workflow files, or protected workflow paths, as the forge allows."
273
+ }
274
+ }
275
+ },
276
+ "Did": {
277
+ "title": "Did",
278
+ "description": "A DID, compared by exact string equality.",
279
+ "type": "string",
280
+ "maxLength": 2048,
281
+ "pattern": "^did:[a-z0-9]+:\\S+$"
282
+ },
283
+ "RepoVisibility": {
284
+ "title": "RepoVisibility",
285
+ "type": "string",
286
+ "enum": [
287
+ "public",
288
+ "private"
289
+ ],
290
+ "description": "Repository visibility on the forge."
291
+ }
292
+ }
293
+ };
294
+ /** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
295
+ export const RESPONSE_PAYLOAD_SCHEMA = {
296
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
297
+ "$ref": "#/$defs/Response",
298
+ "$defs": {
299
+ "Response": {
300
+ "$anchor": "response",
301
+ "title": "Git Namespaces — Transfer Repository Ownership — response payload",
302
+ "description": "The repository after the transfer.",
303
+ "type": "object",
304
+ "additionalProperties": false,
305
+ "required": [
306
+ "repo"
307
+ ],
308
+ "properties": {
309
+ "repo": {
310
+ "$ref": "#/$defs/RepoSummary",
311
+ "description": "The repository after the transfer."
312
+ },
313
+ "ext": {
314
+ "$ref": "#/$defs/Ext"
315
+ }
316
+ }
317
+ },
318
+ "Ext": {
319
+ "title": "Ext",
320
+ "description": "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.",
321
+ "type": "object",
322
+ "minProperties": 1,
323
+ "additionalProperties": true,
324
+ "propertyNames": {
325
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
326
+ }
327
+ },
328
+ "RepoSummary": {
329
+ "title": "RepoSummary",
330
+ "description": "One repository as the VTC records it.",
331
+ "type": "object",
332
+ "additionalProperties": false,
333
+ "required": [
334
+ "resource",
335
+ "visibility",
336
+ "state",
337
+ "owners",
338
+ "bootstrap",
339
+ "sync"
340
+ ],
341
+ "properties": {
342
+ "resource": {
343
+ "$ref": "#/$defs/RepoResource"
344
+ },
345
+ "forgeId": {
346
+ "$ref": "#/$defs/ForgeId",
347
+ "description": "The forge's repository id. Absent until the forge has confirmed the repository exists (a `pendingCreate` repository, or one adopted in bridge mode before the first inspection)."
348
+ },
349
+ "visibility": {
350
+ "$ref": "#/$defs/RepoVisibility"
351
+ },
352
+ "state": {
353
+ "type": "string",
354
+ "enum": [
355
+ "pendingCreate",
356
+ "active",
357
+ "archived",
358
+ "detached",
359
+ "orphaned",
360
+ "unmanaged"
361
+ ],
362
+ "description": "`pendingCreate` — the name is reserved and the repository is not yet confirmed on the forge. `active` — managed. `archived` — archived through git-ns/repo/archive; commit rights on it are revoked. `detached` — no longer governed: its namespace was unbound, or it moved outside the namespace. `orphaned` — its last owner left the community and ownership passed to the namespace admins, who have not yet named a new owner. `unmanaged` — it exists on the forge inside a bound namespace but was never created or adopted through the VTC."
363
+ },
364
+ "owners": {
365
+ "type": "array",
366
+ "uniqueItems": true,
367
+ "items": {
368
+ "$ref": "#/$defs/Did"
369
+ },
370
+ "description": "The DIDs holding `git.repo.own` on this repository by an explicit grant. Empty only for an `unmanaged` repository, and for an `orphaned` one whose ownership rests with the namespace admins by implication."
371
+ },
372
+ "bootstrap": {
373
+ "$ref": "#/$defs/Bootstrap"
374
+ },
375
+ "sync": {
376
+ "$ref": "#/$defs/Sync"
377
+ }
378
+ }
379
+ },
380
+ "Sync": {
381
+ "title": "Sync",
382
+ "description": "How the forge compares with the VTC's projection for one repository.",
383
+ "type": "object",
384
+ "additionalProperties": false,
385
+ "required": [
386
+ "state",
387
+ "drift"
388
+ ],
389
+ "properties": {
390
+ "state": {
391
+ "type": "string",
392
+ "enum": [
393
+ "inSync",
394
+ "drift",
395
+ "pending",
396
+ "unchecked"
397
+ ],
398
+ "description": "`inSync` — the last comparison found no drift. `drift` — it found some, listed in `drift`. `pending` — a change has been sent to the forge and not yet confirmed. `unchecked` — nothing compares this repository (a manual-mode namespace)."
399
+ },
400
+ "checkedAt": {
401
+ "type": "string",
402
+ "format": "date-time",
403
+ "description": "When the forge was last compared. Absent if never."
404
+ },
405
+ "drift": {
406
+ "type": "array",
407
+ "items": {
408
+ "$ref": "#/$defs/DriftItem"
409
+ },
410
+ "description": "Outstanding drift. Empty unless `state` is `drift`."
411
+ }
412
+ }
413
+ },
414
+ "DriftItem": {
415
+ "title": "DriftItem",
416
+ "description": "One difference between the forge's observed state and the VTC's projection of a repository.",
417
+ "type": "object",
418
+ "additionalProperties": false,
419
+ "required": [
420
+ "type",
421
+ "resource"
422
+ ],
423
+ "properties": {
424
+ "type": {
425
+ "type": "string",
426
+ "enum": [
427
+ "roleAdded",
428
+ "roleRemoved",
429
+ "roleChanged",
430
+ "requiredCheckMissing",
431
+ "protectionWeakened",
432
+ "bootstrapMissing"
433
+ ],
434
+ "description": "`roleAdded` — someone holds a forge role the projection does not give them. `roleRemoved` — a projected role is missing. `roleChanged` — a projected role is present at another level. `requiredCheckMissing` — the verify-trust check is no longer required. `protectionWeakened` — branch protection or a ruleset is weaker than the projection in another way (force-push allowed, bypass actors added). `bootstrapMissing` — a bootstrap file or variable is gone."
435
+ },
436
+ "resource": {
437
+ "$ref": "#/$defs/RepoResource"
438
+ },
439
+ "account": {
440
+ "$ref": "#/$defs/ForgeAccount",
441
+ "description": "Whose role differs, for the three role types."
442
+ },
443
+ "observed": {
444
+ "type": "string",
445
+ "maxLength": 256,
446
+ "description": "What the forge shows, in the forge's own vocabulary (a role name such as `maintain`, a setting name). Absent when nothing is there."
447
+ },
448
+ "expected": {
449
+ "type": "string",
450
+ "maxLength": 256,
451
+ "description": "What the projection calls for, in the forge's own vocabulary. Absent when the projection calls for nothing."
452
+ }
453
+ }
454
+ },
455
+ "ForgeAccount": {
456
+ "title": "ForgeAccount",
457
+ "description": "A person's account on one forge. `id` is authoritative; `login` is for display only, because logins can be renamed and re-registered.",
458
+ "type": "object",
459
+ "additionalProperties": false,
460
+ "required": [
461
+ "forge",
462
+ "id",
463
+ "login"
464
+ ],
465
+ "properties": {
466
+ "forge": {
467
+ "$ref": "#/$defs/ForgeHost"
468
+ },
469
+ "id": {
470
+ "$ref": "#/$defs/ForgeId"
471
+ },
472
+ "login": {
473
+ "type": "string",
474
+ "minLength": 1,
475
+ "maxLength": 100,
476
+ "description": "The account's current login, as the forge reported it when last seen. Display only."
477
+ }
478
+ }
479
+ },
480
+ "ForgeId": {
481
+ "title": "ForgeId",
482
+ "description": "An identifier the forge itself assigns — a repository id, a user or organisation id — carried as a string so a forge whose ids are not numbers needs no new version. GitHub and Forgejo ids are decimal integers written as strings (`\"812736451\"`). Unlike a name, it survives renames and transfers, which is why rights and bindings are keyed by it.",
483
+ "type": "string",
484
+ "minLength": 1,
485
+ "maxLength": 64
486
+ },
487
+ "ForgeHost": {
488
+ "title": "ForgeHost",
489
+ "description": "The lowercased DNS host of a forge: `github.com`, a GitHub Enterprise Server host, `codeberg.org`, or a self-hosted Forgejo instance such as `git.example.org`. No scheme, no port, no path. The host is a segment of every resource, so a right never crosses forges.",
490
+ "type": "string",
491
+ "minLength": 3,
492
+ "maxLength": 253,
493
+ "pattern": "^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\\.[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)+$"
494
+ },
495
+ "RepoResource": {
496
+ "title": "RepoResource",
497
+ "description": "A forge-qualified resource naming exactly one repository: `<forge-host>/<owner>/<repo>`, lowercase.",
498
+ "type": "string",
499
+ "maxLength": 455,
500
+ "pattern": "^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\\.[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)+/[a-z0-9_-][a-z0-9._-]{0,99}/[a-z0-9_-][a-z0-9._-]{0,99}$"
501
+ },
502
+ "Bootstrap": {
503
+ "title": "Bootstrap",
504
+ "description": "Whether each step that turns commit trust on for a repository is in place, as last reported. A step that this forge's plan does not need reads `true`.",
505
+ "type": "object",
506
+ "additionalProperties": false,
507
+ "required": [
508
+ "workflow",
509
+ "keyring",
510
+ "variables",
511
+ "requiredCheck"
512
+ ],
513
+ "properties": {
514
+ "workflow": {
515
+ "type": "boolean",
516
+ "description": "The verify-trust check runs on the repository's pull requests — from a workflow committed to it, or, where the forge supports it, required on it from the namespace's own bridge-managed workflow repository at a pinned commit."
517
+ },
518
+ "keyring": {
519
+ "type": "boolean",
520
+ "description": "The exempt platform keyring for forge-signed merge commits is committed, or the forge's plan does not need one."
521
+ },
522
+ "variables": {
523
+ "type": "boolean",
524
+ "description": "The repository names the Trust Registry and this VTC as its trust anchors."
525
+ },
526
+ "requiredCheck": {
527
+ "type": "boolean",
528
+ "description": "The forge refuses to merge into the default branch unless the verify-trust check passes, with no bypass, and a pull request cannot change what that check runs: an organisation-required workflow, code-owner review of workflow files, or protected workflow paths, as the forge allows."
529
+ }
530
+ }
531
+ },
532
+ "Did": {
533
+ "title": "Did",
534
+ "description": "A DID, compared by exact string equality.",
535
+ "type": "string",
536
+ "maxLength": 2048,
537
+ "pattern": "^did:[a-z0-9]+:\\S+$"
538
+ },
539
+ "RepoVisibility": {
540
+ "title": "RepoVisibility",
541
+ "type": "string",
542
+ "enum": [
543
+ "public",
544
+ "private"
545
+ ],
546
+ "description": "Repository visibility on the forge."
547
+ }
548
+ }
549
+ };
550
+ /**
551
+ * SPEC.md §7.2 policy for the request variant, from this specification's
552
+ * front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
553
+ * per-specification and cannot be derived from the document alone, and
554
+ * item 2 needs the schema this carries.
555
+ */
556
+ export const SPEC = {
557
+ typeUri: TYPE_URI,
558
+ isBearer: false,
559
+ isProofRequired: true,
560
+ isRecipientRequired: true,
561
+ isIssuedAtRequired: true,
562
+ payloadSchema: PAYLOAD_SCHEMA,
563
+ };
564
+ /**
565
+ * SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
566
+ * tracks the *issuer* party's requirement because a response swaps the
567
+ * parties (§7.3 item 5).
568
+ */
569
+ export const RESPONSE_SPEC = {
570
+ typeUri: RESPONSE_TYPE_URI,
571
+ isBearer: false,
572
+ isProofRequired: true,
573
+ isRecipientRequired: true,
574
+ isIssuedAtRequired: true,
575
+ payloadSchema: RESPONSE_PAYLOAD_SCHEMA,
576
+ };
577
+ //# sourceMappingURL=payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../../../src/git-ns/repo/transfer/0.1/payload.ts"],"names":[],"mappings":"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"}