@openvtc/trust-tasks 0.28.25 → 0.28.26

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 (223) hide show
  1. package/CHANGELOG.md +84 -0
  2. package/dist/_extends.d.ts.map +1 -1
  3. package/dist/_extends.js +9 -0
  4. package/dist/_extends.js.map +1 -1
  5. package/dist/_shared/components.d.ts +117 -0
  6. package/dist/_shared/components.d.ts.map +1 -1
  7. package/dist/acl/_shared/0.3/acl-entry.d.ts +24 -0
  8. package/dist/acl/_shared/0.3/acl-entry.d.ts.map +1 -0
  9. package/dist/acl/_shared/0.3/acl-entry.js +6 -0
  10. package/dist/acl/_shared/0.3/acl-entry.js.map +1 -0
  11. package/dist/acl/change-role/0.1/payload.d.ts +4 -4
  12. package/dist/acl/change-role/0.1/payload.js +1 -1
  13. package/dist/acl/change-role/0.2/payload.d.ts +14 -2
  14. package/dist/acl/change-role/0.2/payload.d.ts.map +1 -1
  15. package/dist/acl/change-role/0.2/payload.js +1 -1
  16. package/dist/acl/change-role/0.2/payload.js.map +1 -1
  17. package/dist/acl/change-role/0.3/payload.d.ts +1925 -0
  18. package/dist/acl/change-role/0.3/payload.d.ts.map +1 -0
  19. package/dist/acl/change-role/0.3/payload.js +1109 -0
  20. package/dist/acl/change-role/0.3/payload.js.map +1 -0
  21. package/dist/acl/grant/0.1/payload.d.ts +4 -4
  22. package/dist/acl/grant/0.1/payload.js +1 -1
  23. package/dist/acl/grant/0.2/payload.d.ts +14 -2
  24. package/dist/acl/grant/0.2/payload.d.ts.map +1 -1
  25. package/dist/acl/grant/0.2/payload.js +1 -1
  26. package/dist/acl/grant/0.2/payload.js.map +1 -1
  27. package/dist/acl/grant/0.3/payload.d.ts +1895 -0
  28. package/dist/acl/grant/0.3/payload.d.ts.map +1 -0
  29. package/dist/acl/grant/0.3/payload.js +1096 -0
  30. package/dist/acl/grant/0.3/payload.js.map +1 -0
  31. package/dist/acl/list/0.1/payload.d.ts +4 -4
  32. package/dist/acl/list/0.1/payload.js +1 -1
  33. package/dist/acl/list/0.2/payload.d.ts +4 -4
  34. package/dist/acl/list/0.2/payload.js +1 -1
  35. package/dist/acl/list/0.3/payload.d.ts +14 -2
  36. package/dist/acl/list/0.3/payload.d.ts.map +1 -1
  37. package/dist/acl/list/0.3/payload.js +1 -1
  38. package/dist/acl/list/0.3/payload.js.map +1 -1
  39. package/dist/acl/list/0.4/payload.d.ts +2079 -0
  40. package/dist/acl/list/0.4/payload.d.ts.map +1 -0
  41. package/dist/acl/list/0.4/payload.js +1185 -0
  42. package/dist/acl/list/0.4/payload.js.map +1 -0
  43. package/dist/acl/revoke/0.1/payload.d.ts +4 -4
  44. package/dist/acl/revoke/0.1/payload.js +1 -1
  45. package/dist/acl/revoke/0.2/payload.d.ts +14 -2
  46. package/dist/acl/revoke/0.2/payload.d.ts.map +1 -1
  47. package/dist/acl/revoke/0.2/payload.js +1 -1
  48. package/dist/acl/revoke/0.2/payload.js.map +1 -1
  49. package/dist/acl/revoke/0.3/payload.d.ts +2090 -0
  50. package/dist/acl/revoke/0.3/payload.d.ts.map +1 -0
  51. package/dist/acl/revoke/0.3/payload.js +1206 -0
  52. package/dist/acl/revoke/0.3/payload.js.map +1 -0
  53. package/dist/acl/show/0.1/payload.d.ts +4 -4
  54. package/dist/acl/show/0.1/payload.js +1 -1
  55. package/dist/acl/show/0.2/payload.d.ts +14 -2
  56. package/dist/acl/show/0.2/payload.d.ts.map +1 -1
  57. package/dist/acl/show/0.2/payload.js +1 -1
  58. package/dist/acl/show/0.2/payload.js.map +1 -1
  59. package/dist/acl/show/0.3/payload.d.ts +1935 -0
  60. package/dist/acl/show/0.3/payload.d.ts.map +1 -0
  61. package/dist/acl/show/0.3/payload.js +1122 -0
  62. package/dist/acl/show/0.3/payload.js.map +1 -0
  63. package/dist/acl/update/0.1/payload.d.ts +4 -4
  64. package/dist/acl/update/0.1/payload.js +1 -1
  65. package/dist/acl/update/0.2/payload.d.ts +14 -2
  66. package/dist/acl/update/0.2/payload.d.ts.map +1 -1
  67. package/dist/acl/update/0.2/payload.js +1 -1
  68. package/dist/acl/update/0.2/payload.js.map +1 -1
  69. package/dist/acl/update/0.3/payload.d.ts +2042 -0
  70. package/dist/acl/update/0.3/payload.d.ts.map +1 -0
  71. package/dist/acl/update/0.3/payload.js +1163 -0
  72. package/dist/acl/update/0.3/payload.js.map +1 -0
  73. package/dist/index.d.ts +48 -0
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +48 -0
  76. package/dist/index.js.map +1 -1
  77. package/dist/rooms/_shared/0.2/room.d.ts +1 -1
  78. package/dist/rooms/_shared/0.2/room.d.ts.map +1 -1
  79. package/dist/rooms/keys/file-key/0.1/payload.d.ts +4 -4
  80. package/dist/rooms/keys/file-key/0.1/payload.js +1 -1
  81. package/dist/rooms/keys/file-key/0.2/payload.d.ts +14 -2
  82. package/dist/rooms/keys/file-key/0.2/payload.d.ts.map +1 -1
  83. package/dist/rooms/keys/file-key/0.2/payload.js +1 -1
  84. package/dist/rooms/keys/file-key/0.2/payload.js.map +1 -1
  85. package/dist/rooms/keys/file-key/0.3/payload.d.ts +396 -0
  86. package/dist/rooms/keys/file-key/0.3/payload.d.ts.map +1 -0
  87. package/dist/rooms/keys/file-key/0.3/payload.js +223 -0
  88. package/dist/rooms/keys/file-key/0.3/payload.js.map +1 -0
  89. package/dist/rooms/keys/open/0.1/payload.d.ts +4 -4
  90. package/dist/rooms/keys/open/0.1/payload.js +1 -1
  91. package/dist/rooms/keys/open/0.2/payload.d.ts +14 -2
  92. package/dist/rooms/keys/open/0.2/payload.d.ts.map +1 -1
  93. package/dist/rooms/keys/open/0.2/payload.js +1 -1
  94. package/dist/rooms/keys/open/0.2/payload.js.map +1 -1
  95. package/dist/rooms/keys/open/0.3/payload.d.ts +413 -0
  96. package/dist/rooms/keys/open/0.3/payload.d.ts.map +1 -0
  97. package/dist/rooms/keys/open/0.3/payload.js +227 -0
  98. package/dist/rooms/keys/open/0.3/payload.js.map +1 -0
  99. package/dist/rooms/keys/read/0.1/payload.d.ts +4 -4
  100. package/dist/rooms/keys/read/0.1/payload.js +1 -1
  101. package/dist/rooms/keys/read/0.2/payload.d.ts +14 -2
  102. package/dist/rooms/keys/read/0.2/payload.d.ts.map +1 -1
  103. package/dist/rooms/keys/read/0.2/payload.js +1 -1
  104. package/dist/rooms/keys/read/0.2/payload.js.map +1 -1
  105. package/dist/rooms/keys/read/0.3/payload.d.ts +1363 -0
  106. package/dist/rooms/keys/read/0.3/payload.d.ts.map +1 -0
  107. package/dist/rooms/keys/read/0.3/payload.js +731 -0
  108. package/dist/rooms/keys/read/0.3/payload.js.map +1 -0
  109. package/dist/rooms/owner/issue-authority/0.2/payload.d.ts +13 -2
  110. package/dist/rooms/owner/issue-authority/0.2/payload.d.ts.map +1 -1
  111. package/dist/rooms/owner/issue-authority/0.2/payload.js +1 -1
  112. package/dist/rooms/owner/issue-authority/0.2/payload.js.map +1 -1
  113. package/dist/rooms/owner/issue-authority/0.3/payload.d.ts +557 -0
  114. package/dist/rooms/owner/issue-authority/0.3/payload.d.ts.map +1 -0
  115. package/dist/rooms/owner/issue-authority/0.3/payload.js +322 -0
  116. package/dist/rooms/owner/issue-authority/0.3/payload.js.map +1 -0
  117. package/dist/rooms/records/get/0.1/payload.d.ts +4 -4
  118. package/dist/rooms/records/get/0.1/payload.js +1 -1
  119. package/dist/rooms/records/get/0.2/payload.d.ts +4 -4
  120. package/dist/rooms/records/get/0.2/payload.js +1 -1
  121. package/dist/rooms/records/get/0.3/payload.d.ts +13 -2
  122. package/dist/rooms/records/get/0.3/payload.d.ts.map +1 -1
  123. package/dist/rooms/records/get/0.3/payload.js +1 -1
  124. package/dist/rooms/records/get/0.3/payload.js.map +1 -1
  125. package/dist/rooms/records/get/0.4/payload.d.ts +1140 -0
  126. package/dist/rooms/records/get/0.4/payload.d.ts.map +1 -0
  127. package/dist/rooms/records/get/0.4/payload.js +613 -0
  128. package/dist/rooms/records/get/0.4/payload.js.map +1 -0
  129. package/dist/vault/sign-trust-task/0.2/payload.d.ts +5 -5
  130. package/dist/vault/sign-trust-task/0.2/payload.js +2 -2
  131. package/dist/vta/_shared/0.1/memory-record.d.ts +1 -1
  132. package/dist/vta/_shared/0.1/memory-record.d.ts.map +1 -1
  133. package/dist/vta/memory/delete/0.1/payload.d.ts +4 -4
  134. package/dist/vta/memory/delete/0.1/payload.js +1 -1
  135. package/dist/vta/memory/delete/0.2/payload.d.ts +14 -2
  136. package/dist/vta/memory/delete/0.2/payload.d.ts.map +1 -1
  137. package/dist/vta/memory/delete/0.2/payload.js +1 -1
  138. package/dist/vta/memory/delete/0.2/payload.js.map +1 -1
  139. package/dist/vta/memory/delete/0.3/payload.d.ts +491 -0
  140. package/dist/vta/memory/delete/0.3/payload.d.ts.map +1 -0
  141. package/dist/vta/memory/delete/0.3/payload.js +266 -0
  142. package/dist/vta/memory/delete/0.3/payload.js.map +1 -0
  143. package/dist/vta/memory/get/0.1/payload.d.ts +14 -2
  144. package/dist/vta/memory/get/0.1/payload.d.ts.map +1 -1
  145. package/dist/vta/memory/get/0.1/payload.js +1 -1
  146. package/dist/vta/memory/get/0.1/payload.js.map +1 -1
  147. package/dist/vta/memory/get/0.2/payload.d.ts +722 -0
  148. package/dist/vta/memory/get/0.2/payload.d.ts.map +1 -0
  149. package/dist/vta/memory/get/0.2/payload.js +391 -0
  150. package/dist/vta/memory/get/0.2/payload.js.map +1 -0
  151. package/dist/vta/memory/list/0.1/payload.d.ts +4 -4
  152. package/dist/vta/memory/list/0.1/payload.js +1 -1
  153. package/dist/vta/memory/list/0.2/payload.d.ts +14 -2
  154. package/dist/vta/memory/list/0.2/payload.d.ts.map +1 -1
  155. package/dist/vta/memory/list/0.2/payload.js +1 -1
  156. package/dist/vta/memory/list/0.2/payload.js.map +1 -1
  157. package/dist/vta/memory/list/0.3/payload.d.ts +769 -0
  158. package/dist/vta/memory/list/0.3/payload.d.ts.map +1 -0
  159. package/dist/vta/memory/list/0.3/payload.js +405 -0
  160. package/dist/vta/memory/list/0.3/payload.js.map +1 -0
  161. package/dist/vta/memory/put/0.1/payload.d.ts +4 -4
  162. package/dist/vta/memory/put/0.1/payload.js +1 -1
  163. package/dist/vta/memory/put/0.2/payload.d.ts +14 -2
  164. package/dist/vta/memory/put/0.2/payload.d.ts.map +1 -1
  165. package/dist/vta/memory/put/0.2/payload.js +1 -1
  166. package/dist/vta/memory/put/0.2/payload.js.map +1 -1
  167. package/dist/vta/memory/put/0.3/payload.d.ts +566 -0
  168. package/dist/vta/memory/put/0.3/payload.d.ts.map +1 -0
  169. package/dist/vta/memory/put/0.3/payload.js +306 -0
  170. package/dist/vta/memory/put/0.3/payload.js.map +1 -0
  171. package/package.json +1 -1
  172. package/src/_extends.ts +9 -0
  173. package/src/_shared/components.ts +117 -0
  174. package/src/acl/_shared/0.3/acl-entry.ts +25 -0
  175. package/src/acl/change-role/0.1/payload.ts +5 -5
  176. package/src/acl/change-role/0.2/payload.ts +15 -3
  177. package/src/acl/change-role/0.3/payload.ts +1167 -0
  178. package/src/acl/grant/0.1/payload.ts +5 -5
  179. package/src/acl/grant/0.2/payload.ts +15 -3
  180. package/src/acl/grant/0.3/payload.ts +1146 -0
  181. package/src/acl/list/0.1/payload.ts +5 -5
  182. package/src/acl/list/0.2/payload.ts +5 -5
  183. package/src/acl/list/0.3/payload.ts +15 -3
  184. package/src/acl/list/0.4/payload.ts +1267 -0
  185. package/src/acl/revoke/0.1/payload.ts +5 -5
  186. package/src/acl/revoke/0.2/payload.ts +15 -3
  187. package/src/acl/revoke/0.3/payload.ts +1278 -0
  188. package/src/acl/show/0.1/payload.ts +5 -5
  189. package/src/acl/show/0.2/payload.ts +15 -3
  190. package/src/acl/show/0.3/payload.ts +1172 -0
  191. package/src/acl/update/0.1/payload.ts +5 -5
  192. package/src/acl/update/0.2/payload.ts +15 -3
  193. package/src/acl/update/0.3/payload.ts +1258 -0
  194. package/src/index.ts +48 -0
  195. package/src/rooms/_shared/0.2/room.ts +1 -1
  196. package/src/rooms/keys/file-key/0.1/payload.ts +5 -5
  197. package/src/rooms/keys/file-key/0.2/payload.ts +15 -3
  198. package/src/rooms/keys/file-key/0.3/payload.ts +286 -0
  199. package/src/rooms/keys/open/0.1/payload.ts +5 -5
  200. package/src/rooms/keys/open/0.2/payload.ts +15 -3
  201. package/src/rooms/keys/open/0.3/payload.ts +299 -0
  202. package/src/rooms/keys/read/0.1/payload.ts +5 -5
  203. package/src/rooms/keys/read/0.2/payload.ts +15 -3
  204. package/src/rooms/keys/read/0.3/payload.ts +901 -0
  205. package/src/rooms/owner/issue-authority/0.2/payload.ts +14 -3
  206. package/src/rooms/owner/issue-authority/0.3/payload.ts +388 -0
  207. package/src/rooms/records/get/0.1/payload.ts +5 -5
  208. package/src/rooms/records/get/0.2/payload.ts +5 -5
  209. package/src/rooms/records/get/0.3/payload.ts +14 -3
  210. package/src/rooms/records/get/0.4/payload.ts +730 -0
  211. package/src/vault/sign-trust-task/0.2/payload.ts +3 -3
  212. package/src/vta/_shared/0.1/memory-record.ts +1 -1
  213. package/src/vta/memory/delete/0.1/payload.ts +5 -5
  214. package/src/vta/memory/delete/0.2/payload.ts +15 -3
  215. package/src/vta/memory/delete/0.3/payload.ts +334 -0
  216. package/src/vta/memory/get/0.1/payload.ts +15 -3
  217. package/src/vta/memory/get/0.2/payload.ts +460 -0
  218. package/src/vta/memory/list/0.1/payload.ts +5 -5
  219. package/src/vta/memory/list/0.2/payload.ts +15 -3
  220. package/src/vta/memory/list/0.3/payload.ts +491 -0
  221. package/src/vta/memory/put/0.1/payload.ts +5 -5
  222. package/src/vta/memory/put/0.2/payload.ts +15 -3
  223. package/src/vta/memory/put/0.3/payload.ts +379 -0
@@ -38,7 +38,7 @@ export interface UnsignedTrustTaskEnvelope {
38
38
  */
39
39
  threadId?: string;
40
40
  /**
41
- * Type URI of the inner Trust Task (e.g. `https://trusttasks.org/spec/acl/grant/0.2`).
41
+ * Type URI of the inner Trust Task (e.g. `https://trusttasks.org/spec/acl/grant/0.3`).
42
42
  */
43
43
  type: string;
44
44
  /**
@@ -175,7 +175,7 @@ export const PAYLOAD_SCHEMA = {
175
175
  "type": "string",
176
176
  "format": "uri",
177
177
  "minLength": 1,
178
- "description": "Type URI of the inner Trust Task (e.g. `https://trusttasks.org/spec/acl/grant/0.2`)."
178
+ "description": "Type URI of the inner Trust Task (e.g. `https://trusttasks.org/spec/acl/grant/0.3`)."
179
179
  },
180
180
  "issuer": {
181
181
  "type": "string",
@@ -340,7 +340,7 @@ export const RESPONSE_PAYLOAD_SCHEMA = {
340
340
  "type": "string",
341
341
  "format": "uri",
342
342
  "minLength": 1,
343
- "description": "Type URI of the inner Trust Task (e.g. `https://trusttasks.org/spec/acl/grant/0.2`)."
343
+ "description": "Type URI of the inner Trust Task (e.g. `https://trusttasks.org/spec/acl/grant/0.3`)."
344
344
  },
345
345
  "issuer": {
346
346
  "type": "string",
@@ -20,4 +20,4 @@ export interface MemoryRecordSharedDefinitionForVtaMemoryFromPutDeleteList02AndG
20
20
  * The definitions this shared schema publishes, hoisted to one declaration each.
21
21
  * See "../../../_shared/components.js".
22
22
  */
23
- export type { MemoryExpectedVersion, MemoryKey, MemoryRecord, MemoryValue, MemoryVersion } from "../../../_shared/components.js";
23
+ export type { MemoryExpectedVersion, MemoryKey, MemoryPurpose, MemoryRecord, MemoryValue, MemoryVersion } from "../../../_shared/components.js";
@@ -6,7 +6,7 @@
6
6
  import type { Ext } from "../../../../_shared/components.js";
7
7
 
8
8
 
9
- /** @deprecated superseded by vta/memory/delete/0.2 */
9
+ /** @deprecated superseded by vta/memory/delete/0.3 */
10
10
  export interface VTAMemoryDeletePayload {
11
11
  /**
12
12
  * The VTA context the item lives in.
@@ -21,7 +21,7 @@ export interface VTAMemoryDeletePayload {
21
21
  /**
22
22
  * Success response to vta/memory/delete. Type https://trusttasks.org/spec/vta/memory/delete/0.1#response.
23
23
  *
24
- * @deprecated superseded by vta/memory/delete/0.2
24
+ * @deprecated superseded by vta/memory/delete/0.3
25
25
  */
26
26
  export interface VTAMemoryDeleteResponsePayload {
27
27
  /**
@@ -51,12 +51,12 @@ export const EXTENDS: string | null = null;
51
51
  * this package in a later scheduled batch (SPEC "Superseded and Withdrawn
52
52
  * Versions").
53
53
  */
54
- export const DEPRECATION: string | null = "superseded by vta/memory/delete/0.2";
54
+ export const DEPRECATION: string | null = "superseded by vta/memory/delete/0.3";
55
55
 
56
56
  /**
57
57
  * Stable alias for this specification's request payload shape.
58
58
  *
59
- * @deprecated superseded by vta/memory/delete/0.2
59
+ * @deprecated superseded by vta/memory/delete/0.3
60
60
  */
61
61
  export type Payload = VTAMemoryDeletePayload;
62
62
 
@@ -66,7 +66,7 @@ export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/vta/memory/delete/
66
66
  /**
67
67
  * Stable alias for this specification's success-response payload shape.
68
68
  *
69
- * @deprecated superseded by vta/memory/delete/0.2
69
+ * @deprecated superseded by vta/memory/delete/0.3
70
70
  */
71
71
  export type Response = VTAMemoryDeleteResponsePayload;
72
72
 
@@ -8,6 +8,8 @@ import type { Ext, MemoryKey, MemoryVersion } from "../../../../_shared/componen
8
8
 
9
9
  /**
10
10
  * Forget one memory item. The item's value is discarded and a tombstone takes its place for the maintainer's retention window, so that another device syncing the context learns of the deletion instead of keeping a copy forever.
11
+ *
12
+ * @deprecated superseded by vta/memory/delete/0.3
11
13
  */
12
14
  export interface VTAMemoryDeletePayload {
13
15
  /**
@@ -26,6 +28,8 @@ export interface VTAMemoryDeletePayload {
26
28
  }
27
29
  /**
28
30
  * Success response to vta/memory/delete. Type https://trusttasks.org/spec/vta/memory/delete/0.2#response.
31
+ *
32
+ * @deprecated superseded by vta/memory/delete/0.3
29
33
  */
30
34
  export interface VTAMemoryDeleteResponsePayload {
31
35
  /**
@@ -71,15 +75,23 @@ export const EXTENDS: string | null = null;
71
75
  * this package in a later scheduled batch (SPEC "Superseded and Withdrawn
72
76
  * Versions").
73
77
  */
74
- export const DEPRECATION: string | null = null;
78
+ export const DEPRECATION: string | null = "superseded by vta/memory/delete/0.3";
75
79
 
76
- /** Stable alias for this specification's request payload shape. */
80
+ /**
81
+ * Stable alias for this specification's request payload shape.
82
+ *
83
+ * @deprecated superseded by vta/memory/delete/0.3
84
+ */
77
85
  export type Payload = VTAMemoryDeletePayload;
78
86
 
79
87
  /** Trust Task response type URI (request type URI + "#response"). */
80
88
  export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/vta/memory/delete/0.2#response" as const;
81
89
 
82
- /** Stable alias for this specification's success-response payload shape. */
90
+ /**
91
+ * Stable alias for this specification's success-response payload shape.
92
+ *
93
+ * @deprecated superseded by vta/memory/delete/0.3
94
+ */
83
95
  export type Response = VTAMemoryDeleteResponsePayload;
84
96
 
85
97
  /**
@@ -0,0 +1,334 @@
1
+ /**
2
+ * Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
3
+ * Source: specs/vta/memory/delete/0.3/payload.schema.json
4
+ */
5
+
6
+ import type { Ext, MemoryKey, MemoryPurpose, MemoryVersion, Purpose_AclV0_3 as Purpose, Purpose_AclV0_31, Purpose_AclV0_32 } from "../../../../_shared/components.js";
7
+
8
+
9
+ /**
10
+ * Forget one memory item. The item's value is discarded and a tombstone takes its place for the maintainer's retention window, so that another device syncing the context learns of the deletion instead of keeping a copy forever.
11
+ */
12
+ export interface VTAMemoryDeletePayload {
13
+ /**
14
+ * The VTA context the item lives in.
15
+ */
16
+ contextId: string;
17
+ key: MemoryKey;
18
+ /**
19
+ * Optional precondition, on the same terms as vta/memory/put: the live item must be at exactly this version, so a delete cannot discard an edit the caller never saw. Positive only — a create-only precondition on a delete can never be useful, so the schema does not admit 0.
20
+ */
21
+ expectedVersion?: MemoryVersion;
22
+ /**
23
+ * OPTIONAL. The one purpose the caller will use the content this request discloses for (VTI-ACL-103). Granted only as the caller's ACL entry grants it; a purpose the entry does not grant is refused with `purposeNotGranted`. May be omitted where the entry lists exactly one purpose, or states `any`.
24
+ */
25
+ purpose?: MemoryPurpose;
26
+ /**
27
+ * Ecosystem-defined extension members per SPEC.md §4.5.1.
28
+ */
29
+ ext?: Ext;
30
+ }
31
+ /**
32
+ * Success response to vta/memory/delete. Type https://trusttasks.org/spec/vta/memory/delete/0.3#response.
33
+ */
34
+ export interface VTAMemoryDeleteResponsePayload {
35
+ /**
36
+ * Echoed from the request.
37
+ */
38
+ contextId: string;
39
+ key: MemoryKey;
40
+ /**
41
+ * True when a live item was removed by this request. False when the key already held a tombstone, or held nothing at all — both of which are successes, because the caller's intent is satisfied either way.
42
+ */
43
+ existed: boolean;
44
+ /**
45
+ * The tombstone's version — the counter value this delete took, or the value the existing tombstone already held when `existed` is false. Absent only when the key held nothing and no tombstone was written.
46
+ */
47
+ version?: MemoryVersion;
48
+ /**
49
+ * When the deletion was recorded. Absent on the same terms as `version`.
50
+ */
51
+ deletedAt?: string;
52
+ /**
53
+ * Ecosystem-defined extension members per SPEC.md §4.5.1.
54
+ */
55
+ ext?: Ext;
56
+ }
57
+
58
+ /** Shared definitions this specification references, re-exported under the names it used to declare them with. */
59
+ export type { Ext, MemoryKey, MemoryPurpose, MemoryVersion, Purpose, Purpose_AclV0_31, Purpose_AclV0_32 };
60
+
61
+ /** Trust Task type URI. */
62
+ export const TYPE_URI = "https://trusttasks.org/spec/vta/memory/delete/0.3" as const;
63
+
64
+ /**
65
+ * The earlier version of this specification that this one declares it
66
+ * extends (front matter `extends`, SPEC §5.2 "Declared extension"), or
67
+ * `null`. Only the direct declaration — follow the chain with
68
+ * `extendsChain` / `readForSpec`.
69
+ */
70
+ export const EXTENDS: string | null = "0.2";
71
+
72
+ /**
73
+ * Why this version is deprecated, or `null` while it is current. A
74
+ * superseded or retired version is still supported, and is withdrawn from
75
+ * this package in a later scheduled batch (SPEC "Superseded and Withdrawn
76
+ * Versions").
77
+ */
78
+ export const DEPRECATION: string | null = null;
79
+
80
+ /** Stable alias for this specification's request payload shape. */
81
+ export type Payload = VTAMemoryDeletePayload;
82
+
83
+ /** Trust Task response type URI (request type URI + "#response"). */
84
+ export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/vta/memory/delete/0.3#response" as const;
85
+
86
+ /** Stable alias for this specification's success-response payload shape. */
87
+ export type Response = VTAMemoryDeleteResponsePayload;
88
+
89
+ /**
90
+ * This specification's payload schema, as a value.
91
+ *
92
+ * SPEC.md §7.2 item 2 is performed against this. It is shipped as data
93
+ * rather than only as a `.json` file because TypeScript types are erased
94
+ * at runtime: without a schema a consumer has nothing to validate, and
95
+ * every REQUIRED payload member is optional in practice. Cross-file
96
+ * `$ref`s are already inlined, so it needs no resolver.
97
+ */
98
+ export const PAYLOAD_SCHEMA = {
99
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
100
+ "$id": "https://trusttasks.org/spec/vta/memory/delete/0.3",
101
+ "title": "VTA Memory Delete — payload",
102
+ "description": "Forget one memory item. The item's value is discarded and a tombstone takes its place for the maintainer's retention window, so that another device syncing the context learns of the deletion instead of keeping a copy forever.",
103
+ "type": "object",
104
+ "additionalProperties": false,
105
+ "required": [
106
+ "contextId",
107
+ "key"
108
+ ],
109
+ "properties": {
110
+ "contextId": {
111
+ "type": "string",
112
+ "minLength": 1,
113
+ "description": "The VTA context the item lives in."
114
+ },
115
+ "key": {
116
+ "$ref": "#/$defs/MemoryKey"
117
+ },
118
+ "expectedVersion": {
119
+ "$ref": "#/$defs/MemoryVersion",
120
+ "description": "Optional precondition, on the same terms as vta/memory/put: the live item must be at exactly this version, so a delete cannot discard an edit the caller never saw. Positive only — a create-only precondition on a delete can never be useful, so the schema does not admit 0."
121
+ },
122
+ "purpose": {
123
+ "$ref": "#/$defs/MemoryPurpose",
124
+ "description": "OPTIONAL. The one purpose the caller will use the content this request discloses for (VTI-ACL-103). Granted only as the caller's ACL entry grants it; a purpose the entry does not grant is refused with `purposeNotGranted`. May be omitted where the entry lists exactly one purpose, or states `any`."
125
+ },
126
+ "ext": {
127
+ "$ref": "#/$defs/Ext",
128
+ "description": "Ecosystem-defined extension members per SPEC.md §4.5.1."
129
+ }
130
+ },
131
+ "$defs": {
132
+ "Response": {
133
+ "$anchor": "response",
134
+ "title": "VTA Memory Delete — response payload",
135
+ "description": "Success response to vta/memory/delete. Type https://trusttasks.org/spec/vta/memory/delete/0.3#response.",
136
+ "type": "object",
137
+ "additionalProperties": false,
138
+ "required": [
139
+ "contextId",
140
+ "key",
141
+ "existed"
142
+ ],
143
+ "properties": {
144
+ "contextId": {
145
+ "type": "string",
146
+ "minLength": 1,
147
+ "description": "Echoed from the request."
148
+ },
149
+ "key": {
150
+ "$ref": "#/$defs/MemoryKey"
151
+ },
152
+ "existed": {
153
+ "type": "boolean",
154
+ "description": "True when a live item was removed by this request. False when the key already held a tombstone, or held nothing at all — both of which are successes, because the caller's intent is satisfied either way."
155
+ },
156
+ "version": {
157
+ "$ref": "#/$defs/MemoryVersion",
158
+ "description": "The tombstone's version — the counter value this delete took, or the value the existing tombstone already held when `existed` is false. Absent only when the key held nothing and no tombstone was written."
159
+ },
160
+ "deletedAt": {
161
+ "type": "string",
162
+ "format": "date-time",
163
+ "description": "When the deletion was recorded. Absent on the same terms as `version`."
164
+ },
165
+ "ext": {
166
+ "$ref": "#/$defs/Ext",
167
+ "description": "Ecosystem-defined extension members per SPEC.md §4.5.1."
168
+ }
169
+ }
170
+ },
171
+ "Ext": {
172
+ "title": "Ext",
173
+ "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.",
174
+ "type": "object",
175
+ "minProperties": 1,
176
+ "additionalProperties": true,
177
+ "propertyNames": {
178
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
179
+ }
180
+ },
181
+ "MemoryVersion": {
182
+ "title": "MemoryVersion",
183
+ "description": "A value of the context's monotonic write counter (see this schema's description). Server-assigned; a producer never chooses one.",
184
+ "type": "integer",
185
+ "minimum": 1
186
+ },
187
+ "MemoryKey": {
188
+ "title": "MemoryKey",
189
+ "description": "Agent-chosen identifier for an item within a context. Opaque to the maintainer: it MUST NOT be parsed, normalized, or case-folded, and prefix matching in `vta/memory/list` is a byte-prefix comparison over the UTF-8 encoding. Agents SHOULD use `/`-delimited hierarchical keys (`contact/billing`, `preference/timezone`) so that `prefix` can address a family of items, but the delimiter is a convention between an agent and itself. A key is content as well as an address: a key naming a person, a condition or a dispute discloses something to anyone who can list the context, even without its value.",
190
+ "type": "string",
191
+ "minLength": 1,
192
+ "maxLength": 512,
193
+ "pattern": "^[^\\u0000]+$"
194
+ },
195
+ "MemoryPurpose": {
196
+ "title": "MemoryPurpose",
197
+ "description": "The one purpose for which the caller will use the memory content a request discloses (VTI-ACL-103): a name registered in the VTI specification's purpose registry (`personalisation`, `taskExecution`, `analytics`, `modelTraining`) or an absolute IRI. The VTA grants it only if the caller's ACL entry does — `any` grants every purpose but `modelTraining` — refuses it otherwise (`purposeNotGranted`), and records it in the audit record of the read. Optional where the entry lists exactly one purpose (that one applies) or states `any` (the read is recorded as for no stated purpose).",
198
+ "$ref": "#/$defs/Purpose"
199
+ },
200
+ "Purpose": {
201
+ "title": "Purpose",
202
+ "description": "What content is used for: a lowerCamelCase name registered in the VTI specification's purpose registry (Appendix H) — `personalisation`, `taskExecution`, `analytics`, `modelTraining` at the time of writing — or an absolute IRI naming a purpose defined elsewhere, such as a purpose of the W3C Data Privacy Vocabulary (`https://w3id.org/dpv#ServicePersonalisation`). Compared by exact string equality: a consumer MUST NOT treat a purpose it does not recognise as equal to any other, and grants only a request naming exactly a listed purpose (VTI-ACL-109). A registered name is never an IRI, because it contains no `:`.",
203
+ "type": "string",
204
+ "maxLength": 2048,
205
+ "anyOf": [
206
+ {
207
+ "pattern": "^[a-z][a-zA-Z0-9]{0,63}$"
208
+ },
209
+ {
210
+ "pattern": "^[a-zA-Z][a-zA-Z0-9+.-]*:[^\\s]+$"
211
+ }
212
+ ]
213
+ }
214
+ }
215
+ } as const;
216
+
217
+ /** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
218
+ export const RESPONSE_PAYLOAD_SCHEMA = {
219
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
220
+ "$ref": "#/$defs/Response",
221
+ "$defs": {
222
+ "Response": {
223
+ "$anchor": "response",
224
+ "title": "VTA Memory Delete — response payload",
225
+ "description": "Success response to vta/memory/delete. Type https://trusttasks.org/spec/vta/memory/delete/0.3#response.",
226
+ "type": "object",
227
+ "additionalProperties": false,
228
+ "required": [
229
+ "contextId",
230
+ "key",
231
+ "existed"
232
+ ],
233
+ "properties": {
234
+ "contextId": {
235
+ "type": "string",
236
+ "minLength": 1,
237
+ "description": "Echoed from the request."
238
+ },
239
+ "key": {
240
+ "$ref": "#/$defs/MemoryKey"
241
+ },
242
+ "existed": {
243
+ "type": "boolean",
244
+ "description": "True when a live item was removed by this request. False when the key already held a tombstone, or held nothing at all — both of which are successes, because the caller's intent is satisfied either way."
245
+ },
246
+ "version": {
247
+ "$ref": "#/$defs/MemoryVersion",
248
+ "description": "The tombstone's version — the counter value this delete took, or the value the existing tombstone already held when `existed` is false. Absent only when the key held nothing and no tombstone was written."
249
+ },
250
+ "deletedAt": {
251
+ "type": "string",
252
+ "format": "date-time",
253
+ "description": "When the deletion was recorded. Absent on the same terms as `version`."
254
+ },
255
+ "ext": {
256
+ "$ref": "#/$defs/Ext",
257
+ "description": "Ecosystem-defined extension members per SPEC.md §4.5.1."
258
+ }
259
+ }
260
+ },
261
+ "Ext": {
262
+ "title": "Ext",
263
+ "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.",
264
+ "type": "object",
265
+ "minProperties": 1,
266
+ "additionalProperties": true,
267
+ "propertyNames": {
268
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
269
+ }
270
+ },
271
+ "MemoryVersion": {
272
+ "title": "MemoryVersion",
273
+ "description": "A value of the context's monotonic write counter (see this schema's description). Server-assigned; a producer never chooses one.",
274
+ "type": "integer",
275
+ "minimum": 1
276
+ },
277
+ "MemoryKey": {
278
+ "title": "MemoryKey",
279
+ "description": "Agent-chosen identifier for an item within a context. Opaque to the maintainer: it MUST NOT be parsed, normalized, or case-folded, and prefix matching in `vta/memory/list` is a byte-prefix comparison over the UTF-8 encoding. Agents SHOULD use `/`-delimited hierarchical keys (`contact/billing`, `preference/timezone`) so that `prefix` can address a family of items, but the delimiter is a convention between an agent and itself. A key is content as well as an address: a key naming a person, a condition or a dispute discloses something to anyone who can list the context, even without its value.",
280
+ "type": "string",
281
+ "minLength": 1,
282
+ "maxLength": 512,
283
+ "pattern": "^[^\\u0000]+$"
284
+ },
285
+ "MemoryPurpose": {
286
+ "title": "MemoryPurpose",
287
+ "description": "The one purpose for which the caller will use the memory content a request discloses (VTI-ACL-103): a name registered in the VTI specification's purpose registry (`personalisation`, `taskExecution`, `analytics`, `modelTraining`) or an absolute IRI. The VTA grants it only if the caller's ACL entry does — `any` grants every purpose but `modelTraining` — refuses it otherwise (`purposeNotGranted`), and records it in the audit record of the read. Optional where the entry lists exactly one purpose (that one applies) or states `any` (the read is recorded as for no stated purpose).",
288
+ "$ref": "#/$defs/Purpose"
289
+ },
290
+ "Purpose": {
291
+ "title": "Purpose",
292
+ "description": "What content is used for: a lowerCamelCase name registered in the VTI specification's purpose registry (Appendix H) — `personalisation`, `taskExecution`, `analytics`, `modelTraining` at the time of writing — or an absolute IRI naming a purpose defined elsewhere, such as a purpose of the W3C Data Privacy Vocabulary (`https://w3id.org/dpv#ServicePersonalisation`). Compared by exact string equality: a consumer MUST NOT treat a purpose it does not recognise as equal to any other, and grants only a request naming exactly a listed purpose (VTI-ACL-109). A registered name is never an IRI, because it contains no `:`.",
293
+ "type": "string",
294
+ "maxLength": 2048,
295
+ "anyOf": [
296
+ {
297
+ "pattern": "^[a-z][a-zA-Z0-9]{0,63}$"
298
+ },
299
+ {
300
+ "pattern": "^[a-zA-Z][a-zA-Z0-9+.-]*:[^\\s]+$"
301
+ }
302
+ ]
303
+ }
304
+ }
305
+ } as const;
306
+
307
+ /**
308
+ * SPEC.md §7.2 policy for the request variant, from this specification's
309
+ * front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
310
+ * per-specification and cannot be derived from the document alone, and
311
+ * item 2 needs the schema this carries.
312
+ */
313
+ export const SPEC = {
314
+ typeUri: TYPE_URI,
315
+ isBearer: false,
316
+ isProofRequired: true,
317
+ isRecipientRequired: true,
318
+ isIssuedAtRequired: true,
319
+ payloadSchema: PAYLOAD_SCHEMA,
320
+ } as const;
321
+
322
+ /**
323
+ * SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
324
+ * tracks the *issuer* party's requirement because a response swaps the
325
+ * parties (§7.3 item 5).
326
+ */
327
+ export const RESPONSE_SPEC = {
328
+ typeUri: RESPONSE_TYPE_URI,
329
+ isBearer: false,
330
+ isProofRequired: true,
331
+ isRecipientRequired: true,
332
+ isIssuedAtRequired: true,
333
+ payloadSchema: RESPONSE_PAYLOAD_SCHEMA,
334
+ } as const;
@@ -8,6 +8,8 @@ import type { Ext, MemoryKey, MemoryRecord, MemoryValue, MemoryVersion } from ".
8
8
 
9
9
  /**
10
10
  * Recall up to 256 named memory items from one context in a single round trip. The read an agent makes when it knows what it needs, and the one whose audit record says exactly which items it saw.
11
+ *
12
+ * @deprecated superseded by vta/memory/get/0.2
11
13
  */
12
14
  export interface VTAMemoryGetPayload {
13
15
  /**
@@ -32,6 +34,8 @@ export interface VTAMemoryGetPayload {
32
34
  }
33
35
  /**
34
36
  * Success response to vta/memory/get. Type https://trusttasks.org/spec/vta/memory/get/0.1#response. Every requested key appears in exactly one of `items`, `missing` or `deferred`, so a caller can account for all of them without comparing sets itself.
37
+ *
38
+ * @deprecated superseded by vta/memory/get/0.2
35
39
  */
36
40
  export interface VTAMemoryGetResponsePayload {
37
41
  /**
@@ -72,15 +76,23 @@ export const EXTENDS: string | null = null;
72
76
  * this package in a later scheduled batch (SPEC "Superseded and Withdrawn
73
77
  * Versions").
74
78
  */
75
- export const DEPRECATION: string | null = null;
79
+ export const DEPRECATION: string | null = "superseded by vta/memory/get/0.2";
76
80
 
77
- /** Stable alias for this specification's request payload shape. */
81
+ /**
82
+ * Stable alias for this specification's request payload shape.
83
+ *
84
+ * @deprecated superseded by vta/memory/get/0.2
85
+ */
78
86
  export type Payload = VTAMemoryGetPayload;
79
87
 
80
88
  /** Trust Task response type URI (request type URI + "#response"). */
81
89
  export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/vta/memory/get/0.1#response" as const;
82
90
 
83
- /** Stable alias for this specification's success-response payload shape. */
91
+ /**
92
+ * Stable alias for this specification's success-response payload shape.
93
+ *
94
+ * @deprecated superseded by vta/memory/get/0.2
95
+ */
84
96
  export type Response = VTAMemoryGetResponsePayload;
85
97
 
86
98
  /**