@openvtc/trust-tasks 0.26.8 → 0.26.10
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/CHANGELOG.md +126 -0
- package/dist/_shared/components.d.ts +43 -0
- package/dist/_shared/components.d.ts.map +1 -1
- package/dist/external/credentials/issue/0.3/payload.d.ts +1523 -0
- package/dist/external/credentials/issue/0.3/payload.d.ts.map +1 -0
- package/dist/external/credentials/issue/0.3/payload.js +847 -0
- package/dist/external/credentials/issue/0.3/payload.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/vtc/_shared/0.1/admission.d.ts +16 -0
- package/dist/vtc/_shared/0.1/admission.d.ts.map +1 -0
- package/dist/vtc/_shared/0.1/admission.js +6 -0
- package/dist/vtc/_shared/0.1/admission.js.map +1 -0
- package/dist/vtc/members/admit/0.1/payload.d.ts +481 -0
- package/dist/vtc/members/admit/0.1/payload.d.ts.map +1 -0
- package/dist/vtc/members/admit/0.1/payload.js +281 -0
- package/dist/vtc/members/admit/0.1/payload.js.map +1 -0
- package/dist/vtc/members/make-membership/0.1/payload.d.ts +447 -0
- package/dist/vtc/members/make-membership/0.1/payload.d.ts.map +1 -0
- package/dist/vtc/members/make-membership/0.1/payload.js +267 -0
- package/dist/vtc/members/make-membership/0.1/payload.js.map +1 -0
- package/package.json +1 -1
- package/src/_shared/components.ts +43 -0
- package/src/external/credentials/issue/0.3/payload.ts +999 -0
- package/src/index.ts +4 -0
- package/src/vtc/_shared/0.1/admission.ts +17 -0
- package/src/vtc/members/admit/0.1/payload.ts +326 -0
- package/src/vtc/members/make-membership/0.1/payload.ts +304 -0
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
|
|
3
|
+
* Source: specs/vtc/members/make-membership/0.1/payload.schema.json
|
|
4
|
+
*/
|
|
5
|
+
/** Trust Task type URI. */
|
|
6
|
+
export const TYPE_URI = "https://trusttasks.org/spec/vtc/members/make-membership/0.1";
|
|
7
|
+
/** Trust Task response type URI (request type URI + "#response"). */
|
|
8
|
+
export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/vtc/members/make-membership/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/vtc/members/make-membership/0.1",
|
|
21
|
+
"title": "VTC Members Make-Membership — payload",
|
|
22
|
+
"description": "An administrator gives an existing access-control entry that has no member record — typically the community's bootstrap administrator — the member record and credentials a completed join would have given it, at the role the entry already holds. The entry itself is not changed.",
|
|
23
|
+
"type": "object",
|
|
24
|
+
"additionalProperties": false,
|
|
25
|
+
"required": [
|
|
26
|
+
"subject"
|
|
27
|
+
],
|
|
28
|
+
"properties": {
|
|
29
|
+
"subject": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"pattern": "^did:",
|
|
32
|
+
"maxLength": 2048,
|
|
33
|
+
"description": "The DID whose access-control entry becomes a membership. It holds a live entry that is not of the `application` community role, and no member record, live or removed."
|
|
34
|
+
},
|
|
35
|
+
"reason": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"maxLength": 1024,
|
|
38
|
+
"description": "Why, for the community's audit trail and for the administrators asked to approve it if the operation is referred. Never published to the subject or beyond the community."
|
|
39
|
+
},
|
|
40
|
+
"ext": {
|
|
41
|
+
"$ref": "#/$defs/Ext"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"$defs": {
|
|
45
|
+
"Response": {
|
|
46
|
+
"$anchor": "response",
|
|
47
|
+
"title": "VTC Members Make-Membership — response payload",
|
|
48
|
+
"description": "Success response to vtc/members/make-membership/0.1: the membership as admitted, with the credentials issued for it. Type https://trusttasks.org/spec/vtc/members/make-membership/0.1#response — carried directly, or on the request's threadId when a referred operation executes after its approval.",
|
|
49
|
+
"$ref": "#/$defs/AdmittedMembership",
|
|
50
|
+
"unevaluatedProperties": false
|
|
51
|
+
},
|
|
52
|
+
"AdmittedMembership": {
|
|
53
|
+
"title": "AdmittedMembership",
|
|
54
|
+
"description": "A membership admitted directly, with the credentials issued for it — the success payload of vtc/members/admit and vtc/members/make-membership.",
|
|
55
|
+
"type": "object",
|
|
56
|
+
"additionalProperties": false,
|
|
57
|
+
"required": [
|
|
58
|
+
"subject",
|
|
59
|
+
"role",
|
|
60
|
+
"status",
|
|
61
|
+
"returning",
|
|
62
|
+
"approval",
|
|
63
|
+
"statusListIndex",
|
|
64
|
+
"vmc",
|
|
65
|
+
"roleVac"
|
|
66
|
+
],
|
|
67
|
+
"properties": {
|
|
68
|
+
"subject": {
|
|
69
|
+
"type": "string",
|
|
70
|
+
"pattern": "^did:",
|
|
71
|
+
"maxLength": 2048,
|
|
72
|
+
"description": "The DID admitted."
|
|
73
|
+
},
|
|
74
|
+
"role": {
|
|
75
|
+
"type": "string",
|
|
76
|
+
"minLength": 1,
|
|
77
|
+
"maxLength": 128,
|
|
78
|
+
"description": "The community role the membership holds: for vtc/members/admit the one requested, for vtc/members/make-membership the role the entry already held."
|
|
79
|
+
},
|
|
80
|
+
"label": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"minLength": 1,
|
|
83
|
+
"maxLength": 256,
|
|
84
|
+
"description": "The new entry's label, when vtc/members/admit was given one. Absent for vtc/members/make-membership, which writes no entry."
|
|
85
|
+
},
|
|
86
|
+
"status": {
|
|
87
|
+
"type": "string",
|
|
88
|
+
"enum": [
|
|
89
|
+
"admitted"
|
|
90
|
+
],
|
|
91
|
+
"description": "Always `admitted`: a refusal is a trust-task-error, and a referred admission is answered with trust-task-next-step until it executes."
|
|
92
|
+
},
|
|
93
|
+
"returning": {
|
|
94
|
+
"type": "boolean",
|
|
95
|
+
"description": "True when vtc/members/admit re-admitted a former member (a removed member record, no entry), as a rejoin would re-admit them. Always false for vtc/members/make-membership, which refuses a removed record."
|
|
96
|
+
},
|
|
97
|
+
"approval": {
|
|
98
|
+
"$ref": "#/$defs/Approval"
|
|
99
|
+
},
|
|
100
|
+
"statusListIndex": {
|
|
101
|
+
"type": "integer",
|
|
102
|
+
"minimum": 0,
|
|
103
|
+
"description": "The membership's slot on the community's revocation status list, which the VMC's credentialStatus names."
|
|
104
|
+
},
|
|
105
|
+
"vmc": {
|
|
106
|
+
"type": "object",
|
|
107
|
+
"description": "The Verifiable Membership Credential issued for the admission, delivered inline as vtc/join-requests/decide delivers it."
|
|
108
|
+
},
|
|
109
|
+
"roleVac": {
|
|
110
|
+
"type": "object",
|
|
111
|
+
"description": "The role credential issued for the admission: a Verifiable Authority Credential issued by the community whose `credentialSubject.authority` is `{ scope: <community DID>, actions: [\"role:<name>\"] }`, the shape vtc/join-requests/decide returns."
|
|
112
|
+
},
|
|
113
|
+
"ext": {
|
|
114
|
+
"$ref": "#/$defs/Ext"
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"Approval": {
|
|
119
|
+
"title": "Approval",
|
|
120
|
+
"type": "string",
|
|
121
|
+
"enum": [
|
|
122
|
+
"policyAllowed",
|
|
123
|
+
"approved",
|
|
124
|
+
"waived"
|
|
125
|
+
],
|
|
126
|
+
"description": "How the admission came to execute. `policyAllowed`: the community's policy admitted it at once. `approved`: the policy referred it, the community parked it, and another administrator approved it. `waived`: the policy referred it, and the community's single-administrator mode waived the approval on the requester's own re-authentication bound to the operation."
|
|
127
|
+
},
|
|
128
|
+
"Ext": {
|
|
129
|
+
"title": "Ext",
|
|
130
|
+
"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.",
|
|
131
|
+
"type": "object",
|
|
132
|
+
"minProperties": 1,
|
|
133
|
+
"additionalProperties": true,
|
|
134
|
+
"propertyNames": {
|
|
135
|
+
"pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
/** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
|
|
141
|
+
export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
142
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
143
|
+
"$ref": "#/$defs/Response",
|
|
144
|
+
"$defs": {
|
|
145
|
+
"Response": {
|
|
146
|
+
"$anchor": "response",
|
|
147
|
+
"title": "VTC Members Make-Membership — response payload",
|
|
148
|
+
"description": "Success response to vtc/members/make-membership/0.1: the membership as admitted, with the credentials issued for it. Type https://trusttasks.org/spec/vtc/members/make-membership/0.1#response — carried directly, or on the request's threadId when a referred operation executes after its approval.",
|
|
149
|
+
"$ref": "#/$defs/AdmittedMembership",
|
|
150
|
+
"unevaluatedProperties": false
|
|
151
|
+
},
|
|
152
|
+
"AdmittedMembership": {
|
|
153
|
+
"title": "AdmittedMembership",
|
|
154
|
+
"description": "A membership admitted directly, with the credentials issued for it — the success payload of vtc/members/admit and vtc/members/make-membership.",
|
|
155
|
+
"type": "object",
|
|
156
|
+
"additionalProperties": false,
|
|
157
|
+
"required": [
|
|
158
|
+
"subject",
|
|
159
|
+
"role",
|
|
160
|
+
"status",
|
|
161
|
+
"returning",
|
|
162
|
+
"approval",
|
|
163
|
+
"statusListIndex",
|
|
164
|
+
"vmc",
|
|
165
|
+
"roleVac"
|
|
166
|
+
],
|
|
167
|
+
"properties": {
|
|
168
|
+
"subject": {
|
|
169
|
+
"type": "string",
|
|
170
|
+
"pattern": "^did:",
|
|
171
|
+
"maxLength": 2048,
|
|
172
|
+
"description": "The DID admitted."
|
|
173
|
+
},
|
|
174
|
+
"role": {
|
|
175
|
+
"type": "string",
|
|
176
|
+
"minLength": 1,
|
|
177
|
+
"maxLength": 128,
|
|
178
|
+
"description": "The community role the membership holds: for vtc/members/admit the one requested, for vtc/members/make-membership the role the entry already held."
|
|
179
|
+
},
|
|
180
|
+
"label": {
|
|
181
|
+
"type": "string",
|
|
182
|
+
"minLength": 1,
|
|
183
|
+
"maxLength": 256,
|
|
184
|
+
"description": "The new entry's label, when vtc/members/admit was given one. Absent for vtc/members/make-membership, which writes no entry."
|
|
185
|
+
},
|
|
186
|
+
"status": {
|
|
187
|
+
"type": "string",
|
|
188
|
+
"enum": [
|
|
189
|
+
"admitted"
|
|
190
|
+
],
|
|
191
|
+
"description": "Always `admitted`: a refusal is a trust-task-error, and a referred admission is answered with trust-task-next-step until it executes."
|
|
192
|
+
},
|
|
193
|
+
"returning": {
|
|
194
|
+
"type": "boolean",
|
|
195
|
+
"description": "True when vtc/members/admit re-admitted a former member (a removed member record, no entry), as a rejoin would re-admit them. Always false for vtc/members/make-membership, which refuses a removed record."
|
|
196
|
+
},
|
|
197
|
+
"approval": {
|
|
198
|
+
"$ref": "#/$defs/Approval"
|
|
199
|
+
},
|
|
200
|
+
"statusListIndex": {
|
|
201
|
+
"type": "integer",
|
|
202
|
+
"minimum": 0,
|
|
203
|
+
"description": "The membership's slot on the community's revocation status list, which the VMC's credentialStatus names."
|
|
204
|
+
},
|
|
205
|
+
"vmc": {
|
|
206
|
+
"type": "object",
|
|
207
|
+
"description": "The Verifiable Membership Credential issued for the admission, delivered inline as vtc/join-requests/decide delivers it."
|
|
208
|
+
},
|
|
209
|
+
"roleVac": {
|
|
210
|
+
"type": "object",
|
|
211
|
+
"description": "The role credential issued for the admission: a Verifiable Authority Credential issued by the community whose `credentialSubject.authority` is `{ scope: <community DID>, actions: [\"role:<name>\"] }`, the shape vtc/join-requests/decide returns."
|
|
212
|
+
},
|
|
213
|
+
"ext": {
|
|
214
|
+
"$ref": "#/$defs/Ext"
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
"Approval": {
|
|
219
|
+
"title": "Approval",
|
|
220
|
+
"type": "string",
|
|
221
|
+
"enum": [
|
|
222
|
+
"policyAllowed",
|
|
223
|
+
"approved",
|
|
224
|
+
"waived"
|
|
225
|
+
],
|
|
226
|
+
"description": "How the admission came to execute. `policyAllowed`: the community's policy admitted it at once. `approved`: the policy referred it, the community parked it, and another administrator approved it. `waived`: the policy referred it, and the community's single-administrator mode waived the approval on the requester's own re-authentication bound to the operation."
|
|
227
|
+
},
|
|
228
|
+
"Ext": {
|
|
229
|
+
"title": "Ext",
|
|
230
|
+
"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.",
|
|
231
|
+
"type": "object",
|
|
232
|
+
"minProperties": 1,
|
|
233
|
+
"additionalProperties": true,
|
|
234
|
+
"propertyNames": {
|
|
235
|
+
"pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
};
|
|
240
|
+
/**
|
|
241
|
+
* SPEC.md §7.2 policy for the request variant, from this specification's
|
|
242
|
+
* front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
|
|
243
|
+
* per-specification and cannot be derived from the document alone, and
|
|
244
|
+
* item 2 needs the schema this carries.
|
|
245
|
+
*/
|
|
246
|
+
export const SPEC = {
|
|
247
|
+
typeUri: TYPE_URI,
|
|
248
|
+
isBearer: false,
|
|
249
|
+
isProofRequired: true,
|
|
250
|
+
isRecipientRequired: true,
|
|
251
|
+
isIssuedAtRequired: true,
|
|
252
|
+
payloadSchema: PAYLOAD_SCHEMA,
|
|
253
|
+
};
|
|
254
|
+
/**
|
|
255
|
+
* SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
|
|
256
|
+
* tracks the *issuer* party's requirement because a response swaps the
|
|
257
|
+
* parties (§7.3 item 5).
|
|
258
|
+
*/
|
|
259
|
+
export const RESPONSE_SPEC = {
|
|
260
|
+
typeUri: RESPONSE_TYPE_URI,
|
|
261
|
+
isBearer: false,
|
|
262
|
+
isProofRequired: true,
|
|
263
|
+
isRecipientRequired: true,
|
|
264
|
+
isIssuedAtRequired: true,
|
|
265
|
+
payloadSchema: RESPONSE_PAYLOAD_SCHEMA,
|
|
266
|
+
};
|
|
267
|
+
//# sourceMappingURL=payload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../../../src/vtc/members/make-membership/0.1/payload.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -354,6 +354,10 @@ export type Admission = "automatic" | "review";
|
|
|
354
354
|
* Deliberately not a duration. A room that promised "daily" would be making a claim its owner's availability cannot keep, and a member comparing against a clock would read an owner's holiday as a host's misbehaviour.
|
|
355
355
|
*/
|
|
356
356
|
export type AnchorCadence = "never" | "renewal" | "manual";
|
|
357
|
+
/**
|
|
358
|
+
* How the admission came to execute. `policyAllowed`: the community's policy admitted it at once. `approved`: the policy referred it, the community parked it, and another administrator approved it. `waived`: the policy referred it, and the community's single-administrator mode waived the approval on the requester's own re-authentication bound to the operation.
|
|
359
|
+
*/
|
|
360
|
+
export type Approval = "policyAllowed" | "approved" | "waived";
|
|
357
361
|
/**
|
|
358
362
|
* An explicit statement of the capabilities a subject may approve. Exactly one of `ceiling` (the role's full approve ceiling), `none`, or `listed` with a NON-EMPTY list of CapabilityRef.
|
|
359
363
|
*/
|
|
@@ -3779,6 +3783,45 @@ export interface AdminRightRow {
|
|
|
3779
3783
|
*/
|
|
3780
3784
|
breakGlass?: BreakGlass;
|
|
3781
3785
|
}
|
|
3786
|
+
/**
|
|
3787
|
+
* A membership admitted directly, with the credentials issued for it — the success payload of vtc/members/admit and vtc/members/make-membership.
|
|
3788
|
+
*/
|
|
3789
|
+
export interface AdmittedMembership {
|
|
3790
|
+
/**
|
|
3791
|
+
* The DID admitted.
|
|
3792
|
+
*/
|
|
3793
|
+
subject: string;
|
|
3794
|
+
/**
|
|
3795
|
+
* The community role the membership holds: for vtc/members/admit the one requested, for vtc/members/make-membership the role the entry already held.
|
|
3796
|
+
*/
|
|
3797
|
+
role: string;
|
|
3798
|
+
/**
|
|
3799
|
+
* The new entry's label, when vtc/members/admit was given one. Absent for vtc/members/make-membership, which writes no entry.
|
|
3800
|
+
*/
|
|
3801
|
+
label?: string;
|
|
3802
|
+
/**
|
|
3803
|
+
* Always `admitted`: a refusal is a trust-task-error, and a referred admission is answered with trust-task-next-step until it executes.
|
|
3804
|
+
*/
|
|
3805
|
+
status: "admitted";
|
|
3806
|
+
/**
|
|
3807
|
+
* True when vtc/members/admit re-admitted a former member (a removed member record, no entry), as a rejoin would re-admit them. Always false for vtc/members/make-membership, which refuses a removed record.
|
|
3808
|
+
*/
|
|
3809
|
+
returning: boolean;
|
|
3810
|
+
approval: Approval;
|
|
3811
|
+
/**
|
|
3812
|
+
* The membership's slot on the community's revocation status list, which the VMC's credentialStatus names.
|
|
3813
|
+
*/
|
|
3814
|
+
statusListIndex: number;
|
|
3815
|
+
/**
|
|
3816
|
+
* The Verifiable Membership Credential issued for the admission, delivered inline as vtc/join-requests/decide delivers it.
|
|
3817
|
+
*/
|
|
3818
|
+
vmc: {};
|
|
3819
|
+
/**
|
|
3820
|
+
* The role credential issued for the admission: a Verifiable Authority Credential issued by the community whose `credentialSubject.authority` is `{ scope: <community DID>, actions: ["role:<name>"] }`, the shape vtc/join-requests/decide returns.
|
|
3821
|
+
*/
|
|
3822
|
+
roleVac: {};
|
|
3823
|
+
ext?: Ext;
|
|
3824
|
+
}
|
|
3782
3825
|
/**
|
|
3783
3826
|
* An agent name bound to a DID. A name is only ever authoritative in the DID→name direction: the DID document's `alsoKnownAs` is what proves the binding, because anyone controlling a domain can point a name at somebody else's DID.
|
|
3784
3827
|
*/
|