@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.
Files changed (97) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +16 -13
  3. package/dist/_runtime/consume.d.ts +2 -2
  4. package/dist/_runtime/consume.js +2 -2
  5. package/dist/_shared/components.d.ts +29 -0
  6. package/dist/_shared/components.d.ts.map +1 -1
  7. package/dist/index.d.ts +7 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +7 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/registry/_shared/0.2/registry.d.ts +16 -0
  12. package/dist/registry/_shared/0.2/registry.d.ts.map +1 -0
  13. package/dist/registry/_shared/0.2/registry.js +6 -0
  14. package/dist/registry/_shared/0.2/registry.js.map +1 -0
  15. package/dist/registry/authorization/0.1/payload.d.ts +13 -2
  16. package/dist/registry/authorization/0.1/payload.d.ts.map +1 -1
  17. package/dist/registry/authorization/0.1/payload.js +1 -1
  18. package/dist/registry/authorization/0.1/payload.js.map +1 -1
  19. package/dist/registry/authorization/0.2/payload.d.ts +494 -0
  20. package/dist/registry/authorization/0.2/payload.d.ts.map +1 -0
  21. package/dist/registry/authorization/0.2/payload.js +270 -0
  22. package/dist/registry/authorization/0.2/payload.js.map +1 -0
  23. package/dist/registry/did/rotate/0.1/payload.d.ts +13 -2
  24. package/dist/registry/did/rotate/0.1/payload.d.ts.map +1 -1
  25. package/dist/registry/did/rotate/0.1/payload.js +1 -1
  26. package/dist/registry/did/rotate/0.1/payload.js.map +1 -1
  27. package/dist/registry/did/rotate/0.2/payload.d.ts +292 -0
  28. package/dist/registry/did/rotate/0.2/payload.d.ts.map +1 -0
  29. package/dist/registry/did/rotate/0.2/payload.js +167 -0
  30. package/dist/registry/did/rotate/0.2/payload.js.map +1 -0
  31. package/dist/registry/recognition/0.1/payload.d.ts +13 -2
  32. package/dist/registry/recognition/0.1/payload.d.ts.map +1 -1
  33. package/dist/registry/recognition/0.1/payload.js +1 -1
  34. package/dist/registry/recognition/0.1/payload.js.map +1 -1
  35. package/dist/registry/recognition/0.2/payload.d.ts +494 -0
  36. package/dist/registry/recognition/0.2/payload.d.ts.map +1 -0
  37. package/dist/registry/recognition/0.2/payload.js +270 -0
  38. package/dist/registry/recognition/0.2/payload.js.map +1 -0
  39. package/dist/registry/record/create/0.1/payload.d.ts +4 -4
  40. package/dist/registry/record/create/0.1/payload.js +1 -1
  41. package/dist/registry/record/delete/0.1/payload.d.ts +13 -2
  42. package/dist/registry/record/delete/0.1/payload.d.ts.map +1 -1
  43. package/dist/registry/record/delete/0.1/payload.js +1 -1
  44. package/dist/registry/record/delete/0.1/payload.js.map +1 -1
  45. package/dist/registry/record/delete/0.2/payload.d.ts +278 -0
  46. package/dist/registry/record/delete/0.2/payload.d.ts.map +1 -0
  47. package/dist/registry/record/delete/0.2/payload.js +165 -0
  48. package/dist/registry/record/delete/0.2/payload.js.map +1 -0
  49. package/dist/registry/record/list/0.1/payload.d.ts +4 -4
  50. package/dist/registry/record/list/0.1/payload.js +1 -1
  51. package/dist/registry/record/put/0.1/payload.d.ts +4 -4
  52. package/dist/registry/record/put/0.1/payload.js +1 -1
  53. package/dist/registry/record/put/0.2/payload.d.ts +13 -2
  54. package/dist/registry/record/put/0.2/payload.d.ts.map +1 -1
  55. package/dist/registry/record/put/0.2/payload.js +1 -1
  56. package/dist/registry/record/put/0.2/payload.js.map +1 -1
  57. package/dist/registry/record/put/0.3/payload.d.ts +497 -0
  58. package/dist/registry/record/put/0.3/payload.d.ts.map +1 -0
  59. package/dist/registry/record/put/0.3/payload.js +289 -0
  60. package/dist/registry/record/put/0.3/payload.js.map +1 -0
  61. package/dist/registry/record/query/0.1/payload.d.ts +4 -4
  62. package/dist/registry/record/query/0.1/payload.js +1 -1
  63. package/dist/registry/record/query/0.2/payload.d.ts +13 -2
  64. package/dist/registry/record/query/0.2/payload.d.ts.map +1 -1
  65. package/dist/registry/record/query/0.2/payload.js +1 -1
  66. package/dist/registry/record/query/0.2/payload.js.map +1 -1
  67. package/dist/registry/record/query/0.3/payload.d.ts +540 -0
  68. package/dist/registry/record/query/0.3/payload.d.ts.map +1 -0
  69. package/dist/registry/record/query/0.3/payload.js +299 -0
  70. package/dist/registry/record/query/0.3/payload.js.map +1 -0
  71. package/dist/registry/record/read/0.1/payload.d.ts +4 -4
  72. package/dist/registry/record/read/0.1/payload.js +1 -1
  73. package/dist/registry/record/update/0.1/payload.d.ts +4 -4
  74. package/dist/registry/record/update/0.1/payload.js +1 -1
  75. package/package.json +1 -1
  76. package/src/_runtime/consume.ts +2 -2
  77. package/src/_shared/components.ts +29 -0
  78. package/src/index.ts +7 -0
  79. package/src/registry/_shared/0.2/registry.ts +17 -0
  80. package/src/registry/authorization/0.1/payload.ts +14 -3
  81. package/src/registry/authorization/0.2/payload.ts +337 -0
  82. package/src/registry/did/rotate/0.1/payload.ts +14 -3
  83. package/src/registry/did/rotate/0.2/payload.ts +216 -0
  84. package/src/registry/recognition/0.1/payload.ts +14 -3
  85. package/src/registry/recognition/0.2/payload.ts +337 -0
  86. package/src/registry/record/create/0.1/payload.ts +5 -5
  87. package/src/registry/record/delete/0.1/payload.ts +14 -3
  88. package/src/registry/record/delete/0.2/payload.ts +206 -0
  89. package/src/registry/record/list/0.1/payload.ts +5 -5
  90. package/src/registry/record/put/0.1/payload.ts +5 -5
  91. package/src/registry/record/put/0.2/payload.ts +14 -3
  92. package/src/registry/record/put/0.3/payload.ts +335 -0
  93. package/src/registry/record/query/0.1/payload.ts +5 -5
  94. package/src/registry/record/query/0.2/payload.ts +14 -3
  95. package/src/registry/record/query/0.3/payload.ts +360 -0
  96. package/src/registry/record/read/0.1/payload.ts +5 -5
  97. package/src/registry/record/update/0.1/payload.ts +5 -5
package/CHANGELOG.md CHANGED
@@ -11,6 +11,8 @@ The package versions over **its own API** — what a consumer compiles against
11
11
  not over `SPEC.md`. Below 1.0 a breaking change bumps the leading non-zero
12
12
  component.
13
13
 
14
+ ## 0.27.7 — 2026-10-26
15
+
14
16
  ## 0.27.6 — 2026-10-26
15
17
 
16
18
 
package/README.md CHANGED
@@ -31,16 +31,19 @@ npm install @openvtc/trust-tasks
31
31
  ## Usage
32
32
 
33
33
  ```ts
34
- import { AclGrant_v0_1, DidManagementDidRegister_v0_1 } from "@openvtc/trust-tasks";
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, `ACLGrantPayload`).
40
- const grant: AclGrant_v0_1.Payload = {
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: AclGrant_v0_1.Response = {
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.1/payload.ts // AclGrant_v0_1
75
- ├── auth/authenticate/0.1/payload.ts // AuthAuthenticate_v0_1
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.1/payload.ts // VaultProxyLogin_v0_1
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 `AclGrant_v0_1.AclEntry` and
94
- `AclShow_v0_1.AclEntry` are the same type, not two copies of one shape:
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 AclGrant_v0_1 } from "@openvtc/trust-tasks";
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
- AclGrant_v0_1,
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<AclGrant_v0_1.Payload, AclGrant_v0_1.Response>({
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: AclGrant_v0_1.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, AclGrant_v0_1,
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: AclGrant_v0_1.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 },
@@ -10,7 +10,7 @@
10
10
  * ```ts
11
11
  * import {
12
12
  * consequentialChecks, consumeInbound, InMemoryReplayGuard,
13
- * StaticTransport, AclGrant_v0_1,
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: AclGrant_v0_1.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
  */