@openvtc/trust-tasks 0.27.6 → 0.27.7
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 +2 -0
- package/README.md +16 -13
- package/dist/_runtime/consume.d.ts +2 -2
- package/dist/_runtime/consume.js +2 -2
- package/dist/_shared/components.d.ts +29 -0
- package/dist/_shared/components.d.ts.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/registry/_shared/0.2/registry.d.ts +16 -0
- package/dist/registry/_shared/0.2/registry.d.ts.map +1 -0
- package/dist/registry/_shared/0.2/registry.js +6 -0
- package/dist/registry/_shared/0.2/registry.js.map +1 -0
- package/dist/registry/authorization/0.1/payload.d.ts +13 -2
- package/dist/registry/authorization/0.1/payload.d.ts.map +1 -1
- package/dist/registry/authorization/0.1/payload.js +1 -1
- package/dist/registry/authorization/0.1/payload.js.map +1 -1
- package/dist/registry/authorization/0.2/payload.d.ts +494 -0
- package/dist/registry/authorization/0.2/payload.d.ts.map +1 -0
- package/dist/registry/authorization/0.2/payload.js +270 -0
- package/dist/registry/authorization/0.2/payload.js.map +1 -0
- package/dist/registry/did/rotate/0.1/payload.d.ts +13 -2
- package/dist/registry/did/rotate/0.1/payload.d.ts.map +1 -1
- package/dist/registry/did/rotate/0.1/payload.js +1 -1
- package/dist/registry/did/rotate/0.1/payload.js.map +1 -1
- package/dist/registry/did/rotate/0.2/payload.d.ts +292 -0
- package/dist/registry/did/rotate/0.2/payload.d.ts.map +1 -0
- package/dist/registry/did/rotate/0.2/payload.js +167 -0
- package/dist/registry/did/rotate/0.2/payload.js.map +1 -0
- package/dist/registry/recognition/0.1/payload.d.ts +13 -2
- package/dist/registry/recognition/0.1/payload.d.ts.map +1 -1
- package/dist/registry/recognition/0.1/payload.js +1 -1
- package/dist/registry/recognition/0.1/payload.js.map +1 -1
- package/dist/registry/recognition/0.2/payload.d.ts +494 -0
- package/dist/registry/recognition/0.2/payload.d.ts.map +1 -0
- package/dist/registry/recognition/0.2/payload.js +270 -0
- package/dist/registry/recognition/0.2/payload.js.map +1 -0
- package/dist/registry/record/create/0.1/payload.d.ts +4 -4
- package/dist/registry/record/create/0.1/payload.js +1 -1
- package/dist/registry/record/delete/0.1/payload.d.ts +13 -2
- package/dist/registry/record/delete/0.1/payload.d.ts.map +1 -1
- package/dist/registry/record/delete/0.1/payload.js +1 -1
- package/dist/registry/record/delete/0.1/payload.js.map +1 -1
- package/dist/registry/record/delete/0.2/payload.d.ts +278 -0
- package/dist/registry/record/delete/0.2/payload.d.ts.map +1 -0
- package/dist/registry/record/delete/0.2/payload.js +165 -0
- package/dist/registry/record/delete/0.2/payload.js.map +1 -0
- package/dist/registry/record/list/0.1/payload.d.ts +4 -4
- package/dist/registry/record/list/0.1/payload.js +1 -1
- package/dist/registry/record/put/0.1/payload.d.ts +4 -4
- package/dist/registry/record/put/0.1/payload.js +1 -1
- package/dist/registry/record/put/0.2/payload.d.ts +13 -2
- package/dist/registry/record/put/0.2/payload.d.ts.map +1 -1
- package/dist/registry/record/put/0.2/payload.js +1 -1
- package/dist/registry/record/put/0.2/payload.js.map +1 -1
- package/dist/registry/record/put/0.3/payload.d.ts +497 -0
- package/dist/registry/record/put/0.3/payload.d.ts.map +1 -0
- package/dist/registry/record/put/0.3/payload.js +289 -0
- package/dist/registry/record/put/0.3/payload.js.map +1 -0
- package/dist/registry/record/query/0.1/payload.d.ts +4 -4
- package/dist/registry/record/query/0.1/payload.js +1 -1
- package/dist/registry/record/query/0.2/payload.d.ts +13 -2
- package/dist/registry/record/query/0.2/payload.d.ts.map +1 -1
- package/dist/registry/record/query/0.2/payload.js +1 -1
- package/dist/registry/record/query/0.2/payload.js.map +1 -1
- package/dist/registry/record/query/0.3/payload.d.ts +540 -0
- package/dist/registry/record/query/0.3/payload.d.ts.map +1 -0
- package/dist/registry/record/query/0.3/payload.js +299 -0
- package/dist/registry/record/query/0.3/payload.js.map +1 -0
- package/dist/registry/record/read/0.1/payload.d.ts +4 -4
- package/dist/registry/record/read/0.1/payload.js +1 -1
- package/dist/registry/record/update/0.1/payload.d.ts +4 -4
- package/dist/registry/record/update/0.1/payload.js +1 -1
- package/package.json +1 -1
- package/src/_runtime/consume.ts +2 -2
- package/src/_shared/components.ts +29 -0
- package/src/index.ts +7 -0
- package/src/registry/_shared/0.2/registry.ts +17 -0
- package/src/registry/authorization/0.1/payload.ts +14 -3
- package/src/registry/authorization/0.2/payload.ts +337 -0
- package/src/registry/did/rotate/0.1/payload.ts +14 -3
- package/src/registry/did/rotate/0.2/payload.ts +216 -0
- package/src/registry/recognition/0.1/payload.ts +14 -3
- package/src/registry/recognition/0.2/payload.ts +337 -0
- package/src/registry/record/create/0.1/payload.ts +5 -5
- package/src/registry/record/delete/0.1/payload.ts +14 -3
- package/src/registry/record/delete/0.2/payload.ts +206 -0
- package/src/registry/record/list/0.1/payload.ts +5 -5
- package/src/registry/record/put/0.1/payload.ts +5 -5
- package/src/registry/record/put/0.2/payload.ts +14 -3
- package/src/registry/record/put/0.3/payload.ts +335 -0
- package/src/registry/record/query/0.1/payload.ts +5 -5
- package/src/registry/record/query/0.2/payload.ts +14 -3
- package/src/registry/record/query/0.3/payload.ts +360 -0
- package/src/registry/record/read/0.1/payload.ts +5 -5
- package/src/registry/record/update/0.1/payload.ts +5 -5
package/CHANGELOG.md
CHANGED
package/README.md
CHANGED
|
@@ -31,16 +31,19 @@ npm install @openvtc/trust-tasks
|
|
|
31
31
|
## Usage
|
|
32
32
|
|
|
33
33
|
```ts
|
|
34
|
-
import {
|
|
34
|
+
import { AclGrant_v0_2, DidManagementDidRegister_v0_1 } from "@openvtc/trust-tasks";
|
|
35
35
|
|
|
36
36
|
// Compose a request payload, type-checked against the spec's
|
|
37
37
|
// payload.schema.json. `Payload` is a stable alias every module
|
|
38
38
|
// exports, so you never have to look up the title-derived interface
|
|
39
|
-
// name (here, `
|
|
40
|
-
const grant:
|
|
39
|
+
// name (here, `ACLGrant02Payload`).
|
|
40
|
+
const grant: AclGrant_v0_2.Payload = {
|
|
41
41
|
entry: {
|
|
42
42
|
subject: "did:key:z6MkAlice",
|
|
43
43
|
role: "admin",
|
|
44
|
+
act: { scope: "contexts", contexts: ["ctx/payments"] },
|
|
45
|
+
keys: { scope: "all" },
|
|
46
|
+
capabilities: { scope: "ceiling" },
|
|
44
47
|
},
|
|
45
48
|
reason: "onboarding",
|
|
46
49
|
};
|
|
@@ -50,7 +53,7 @@ const grant: AclGrant_v0_1.Payload = {
|
|
|
50
53
|
// Fire-and-forget specs export neither `Response` nor
|
|
51
54
|
// `RESPONSE_TYPE_URI`, because SPEC.md §4.4.1 forbids emitting a
|
|
52
55
|
// `#response` document for them.
|
|
53
|
-
const reply:
|
|
56
|
+
const reply: AclGrant_v0_2.Response = {
|
|
54
57
|
entry: { /* … */ },
|
|
55
58
|
};
|
|
56
59
|
|
|
@@ -71,11 +74,11 @@ Each spec lands at a stable path:
|
|
|
71
74
|
|
|
72
75
|
```
|
|
73
76
|
src/
|
|
74
|
-
├── acl/grant/0.
|
|
75
|
-
├── auth/authenticate/0.
|
|
77
|
+
├── acl/grant/0.2/payload.ts // AclGrant_v0_2
|
|
78
|
+
├── auth/authenticate/0.3/payload.ts // AuthAuthenticate_v0_3
|
|
76
79
|
├── did-management/did/register/0.1/
|
|
77
80
|
│ └── payload.ts // DidManagementDidRegister_v0_1
|
|
78
|
-
├── vault/proxy-login/0.
|
|
81
|
+
├── vault/proxy-login/0.2/payload.ts // VaultProxyLogin_v0_2
|
|
79
82
|
└── …
|
|
80
83
|
```
|
|
81
84
|
|
|
@@ -90,11 +93,11 @@ distinct names — there is no "latest" alias by design.
|
|
|
90
93
|
A definition several specs `$ref` — `Ext` (the SPEC §4.5.1 extension object),
|
|
91
94
|
`AclEntry`, `VaultEntry`, `DigestMultibase` — is declared **once**, in
|
|
92
95
|
`src/_shared/components.ts`, and re-exported from every spec module that uses
|
|
93
|
-
it under the name that module has always used. So `
|
|
94
|
-
`
|
|
96
|
+
it under the name that module has always used. So `AclGrant_v0_2.AclEntry` and
|
|
97
|
+
`AclShow_v0_2.AclEntry` are the same type, not two copies of one shape:
|
|
95
98
|
|
|
96
99
|
```ts
|
|
97
|
-
import { SharedComponents, type
|
|
100
|
+
import { SharedComponents, type AclGrant_v0_2 } from "@openvtc/trust-tasks";
|
|
98
101
|
|
|
99
102
|
// Write a helper once, over the shared definition, and it takes any spec's.
|
|
100
103
|
const namespaces = (ext: SharedComponents.Ext) => Object.keys(ext);
|
|
@@ -132,16 +135,16 @@ import {
|
|
|
132
135
|
InMemoryReplayGuard,
|
|
133
136
|
respondWith,
|
|
134
137
|
StaticTransport,
|
|
135
|
-
|
|
138
|
+
AclGrant_v0_2,
|
|
136
139
|
} from "@openvtc/trust-tasks";
|
|
137
140
|
|
|
138
141
|
// The guard *is* the duplicate-execution record — one per consumer, held for
|
|
139
142
|
// the process's lifetime. Back it with a shared store if you run replicas.
|
|
140
143
|
const guard = new InMemoryReplayGuard();
|
|
141
144
|
|
|
142
|
-
const outcome = await consumeInbound<
|
|
145
|
+
const outcome = await consumeInbound<AclGrant_v0_2.Payload, AclGrant_v0_2.Response>({
|
|
143
146
|
transport: new StaticTransport({ issuer: peerVid }), // what the transport authenticated
|
|
144
|
-
spec:
|
|
147
|
+
spec: AclGrant_v0_2.SPEC,
|
|
145
148
|
proofPolicy: { kind: "verify", verify: myVerifier },
|
|
146
149
|
payloadPolicy: { kind: "validate", validate: myValidator }, // or acceptUnvalidated
|
|
147
150
|
// acl/grant is consequential: a replayed envelope must not grant twice.
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* ```ts
|
|
11
11
|
* import {
|
|
12
12
|
* consequentialChecks, consumeInbound, InMemoryReplayGuard,
|
|
13
|
-
* StaticTransport,
|
|
13
|
+
* StaticTransport, AclGrant_v0_2,
|
|
14
14
|
* } from "@openvtc/trust-tasks";
|
|
15
15
|
*
|
|
16
16
|
* // One guard per consumer, not one per document: it *is* the record.
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
*
|
|
19
19
|
* const outcome = await consumeInbound({
|
|
20
20
|
* transport,
|
|
21
|
-
* spec:
|
|
21
|
+
* spec: AclGrant_v0_2.SPEC,
|
|
22
22
|
* proofPolicy: { kind: "verify", verify: myVerifier },
|
|
23
23
|
* // ajv, or whatever validator you already run — see PayloadPolicy.
|
|
24
24
|
* payloadPolicy: { kind: "validate", validate: myValidator },
|
package/dist/_runtime/consume.js
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* ```ts
|
|
11
11
|
* import {
|
|
12
12
|
* consequentialChecks, consumeInbound, InMemoryReplayGuard,
|
|
13
|
-
* StaticTransport,
|
|
13
|
+
* StaticTransport, AclGrant_v0_2,
|
|
14
14
|
* } from "@openvtc/trust-tasks";
|
|
15
15
|
*
|
|
16
16
|
* // One guard per consumer, not one per document: it *is* the record.
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
*
|
|
19
19
|
* const outcome = await consumeInbound({
|
|
20
20
|
* transport,
|
|
21
|
-
* spec:
|
|
21
|
+
* spec: AclGrant_v0_2.SPEC,
|
|
22
22
|
* proofPolicy: { kind: "verify", verify: myVerifier },
|
|
23
23
|
* // ajv, or whatever validator you already run — see PayloadPolicy.
|
|
24
24
|
* payloadPolicy: { kind: "validate", validate: myValidator },
|
|
@@ -12282,6 +12282,35 @@ export interface TrustRecord {
|
|
|
12282
12282
|
};
|
|
12283
12283
|
record_type: RecordType;
|
|
12284
12284
|
}
|
|
12285
|
+
export interface TrustRecord_RegistryV0_2 {
|
|
12286
|
+
entityId: string;
|
|
12287
|
+
authorityId: string;
|
|
12288
|
+
action: string;
|
|
12289
|
+
resource: string;
|
|
12290
|
+
/**
|
|
12291
|
+
* Present on recognition records: whether the action+resource is recognised.
|
|
12292
|
+
*/
|
|
12293
|
+
recognized?: boolean;
|
|
12294
|
+
/**
|
|
12295
|
+
* Present on authorization records: whether the action+resource authorization is confirmed.
|
|
12296
|
+
*/
|
|
12297
|
+
authorized?: boolean;
|
|
12298
|
+
/**
|
|
12299
|
+
* Opaque governance context attached to the record.
|
|
12300
|
+
*/
|
|
12301
|
+
context?: {
|
|
12302
|
+
[k: string]: unknown | undefined;
|
|
12303
|
+
};
|
|
12304
|
+
recordType: RecordType;
|
|
12305
|
+
/**
|
|
12306
|
+
* The first instant at which the authority statement holds (inclusive). Absent: no lower bound.
|
|
12307
|
+
*/
|
|
12308
|
+
validFrom?: string;
|
|
12309
|
+
/**
|
|
12310
|
+
* The instant at which the authority statement stops holding (exclusive). Absent: no upper bound. When both bounds are present, `validFrom` MUST be earlier than `validUntil`.
|
|
12311
|
+
*/
|
|
12312
|
+
validUntil?: string;
|
|
12313
|
+
}
|
|
12285
12314
|
/**
|
|
12286
12315
|
* The trustees of a sealed or tallied-encrypted election and the number of them decryption needs (VTI-VOT-062). Neither the community nor the ballot box may be one.
|
|
12287
12316
|
*/
|