@openvtc/trust-tasks 0.27.0 → 0.27.2
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 +267 -0
- package/dist/_runtime/freshness.d.ts +3 -1
- package/dist/_runtime/freshness.d.ts.map +1 -1
- package/dist/_runtime/freshness.js +4 -2
- package/dist/_runtime/freshness.js.map +1 -1
- package/dist/_shared/components.d.ts +361 -24
- package/dist/_shared/components.d.ts.map +1 -1
- package/dist/device/list/0.1/payload.d.ts +4 -4
- package/dist/device/list/0.1/payload.d.ts.map +1 -1
- package/dist/device/list/0.1/payload.js +4 -2
- package/dist/device/list/0.1/payload.js.map +1 -1
- package/dist/device/list/0.2/payload.d.ts +4 -4
- package/dist/device/list/0.2/payload.d.ts.map +1 -1
- package/dist/device/list/0.2/payload.js +4 -2
- package/dist/device/list/0.2/payload.js.map +1 -1
- package/dist/device/register/0.1/payload.d.ts +4 -4
- package/dist/device/register/0.1/payload.d.ts.map +1 -1
- package/dist/device/register/0.1/payload.js +4 -2
- package/dist/device/register/0.1/payload.js.map +1 -1
- package/dist/device/register/0.2/payload.d.ts +4 -4
- package/dist/device/register/0.2/payload.d.ts.map +1 -1
- package/dist/device/register/0.2/payload.js +4 -2
- package/dist/device/register/0.2/payload.js.map +1 -1
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -0
- package/dist/index.js.map +1 -1
- package/dist/rooms/_shared/0.1/room.d.ts +1 -1
- package/dist/rooms/_shared/0.1/room.d.ts.map +1 -1
- package/dist/rooms/create/0.2/payload.d.ts +534 -0
- package/dist/rooms/create/0.2/payload.d.ts.map +1 -0
- package/dist/rooms/create/0.2/payload.js +293 -0
- package/dist/rooms/create/0.2/payload.js.map +1 -0
- package/dist/rooms/epoch/chain/0.2/payload.d.ts +534 -0
- package/dist/rooms/epoch/chain/0.2/payload.d.ts.map +1 -0
- package/dist/rooms/epoch/chain/0.2/payload.js +292 -0
- package/dist/rooms/epoch/chain/0.2/payload.js.map +1 -0
- package/dist/rooms/epoch/prune/0.2/payload.d.ts +467 -0
- package/dist/rooms/epoch/prune/0.2/payload.d.ts.map +1 -0
- package/dist/rooms/epoch/prune/0.2/payload.js +251 -0
- package/dist/rooms/epoch/prune/0.2/payload.js.map +1 -0
- package/dist/rooms/info/0.2/payload.d.ts +1129 -0
- package/dist/rooms/info/0.2/payload.d.ts.map +1 -0
- package/dist/rooms/info/0.2/payload.js +618 -0
- package/dist/rooms/info/0.2/payload.js.map +1 -0
- package/dist/rooms/keys/backfill/0.2/payload.d.ts +380 -0
- package/dist/rooms/keys/backfill/0.2/payload.d.ts.map +1 -0
- package/dist/rooms/keys/backfill/0.2/payload.js +197 -0
- package/dist/rooms/keys/backfill/0.2/payload.js.map +1 -0
- package/dist/rooms/keys/browse/0.1/payload.d.ts +4 -4
- package/dist/rooms/keys/browse/0.1/payload.js +2 -2
- package/dist/rooms/keys/browse/0.1/payload.js.map +1 -1
- package/dist/rooms/keys/browse/0.2/payload.d.ts +941 -0
- package/dist/rooms/keys/browse/0.2/payload.d.ts.map +1 -0
- package/dist/rooms/keys/browse/0.2/payload.js +558 -0
- package/dist/rooms/keys/browse/0.2/payload.js.map +1 -0
- package/dist/rooms/keys/chain/0.2/payload.d.ts +450 -0
- package/dist/rooms/keys/chain/0.2/payload.d.ts.map +1 -0
- package/dist/rooms/keys/chain/0.2/payload.js +248 -0
- package/dist/rooms/keys/chain/0.2/payload.js.map +1 -0
- package/dist/rooms/keys/profile/read/0.1/payload.d.ts +4 -4
- package/dist/rooms/keys/profile/read/0.1/payload.js +2 -2
- package/dist/rooms/keys/profile/read/0.1/payload.js.map +1 -1
- package/dist/rooms/keys/read/0.1/payload.d.ts +4 -4
- package/dist/rooms/keys/read/0.1/payload.js +2 -2
- package/dist/rooms/keys/read/0.1/payload.js.map +1 -1
- package/dist/rooms/owner/anchor/0.1/payload.d.ts +4 -4
- package/dist/rooms/owner/anchor/0.1/payload.js +2 -2
- package/dist/rooms/owner/anchor/0.1/payload.js.map +1 -1
- package/dist/rooms/records/get/0.1/payload.d.ts +4 -4
- package/dist/rooms/records/get/0.1/payload.js +2 -2
- package/dist/rooms/records/get/0.1/payload.js.map +1 -1
- package/dist/rooms/records/get/0.2/payload.d.ts +4 -4
- package/dist/rooms/records/get/0.2/payload.js +2 -2
- package/dist/rooms/records/get/0.2/payload.js.map +1 -1
- package/dist/rooms/records/list/0.1/payload.d.ts +4 -4
- package/dist/rooms/records/list/0.1/payload.js +2 -2
- package/dist/rooms/records/list/0.1/payload.js.map +1 -1
- package/dist/rooms/records/list/0.2/payload.d.ts +4 -4
- package/dist/rooms/records/list/0.2/payload.js +2 -2
- package/dist/rooms/records/list/0.2/payload.js.map +1 -1
- package/dist/rooms/records/list/0.3/payload.d.ts +970 -0
- package/dist/rooms/records/list/0.3/payload.d.ts.map +1 -0
- package/dist/rooms/records/list/0.3/payload.js +526 -0
- package/dist/rooms/records/list/0.3/payload.js.map +1 -0
- package/dist/rooms/records/prune/0.1/payload.d.ts +706 -0
- package/dist/rooms/records/prune/0.1/payload.d.ts.map +1 -0
- package/dist/rooms/records/prune/0.1/payload.js +374 -0
- package/dist/rooms/records/prune/0.1/payload.js.map +1 -0
- package/dist/rooms/records/put/0.3/payload.d.ts +1212 -0
- package/dist/rooms/records/put/0.3/payload.d.ts.map +1 -0
- package/dist/rooms/records/put/0.3/payload.js +646 -0
- package/dist/rooms/records/put/0.3/payload.js.map +1 -0
- package/dist/rooms/records/retention/set/0.1/payload.d.ts +521 -0
- package/dist/rooms/records/retention/set/0.1/payload.d.ts.map +1 -0
- package/dist/rooms/records/retention/set/0.1/payload.js +276 -0
- package/dist/rooms/records/retention/set/0.1/payload.js.map +1 -0
- package/dist/vault/credentials/present/0.1/payload.d.ts +407 -0
- package/dist/vault/credentials/present/0.1/payload.d.ts.map +1 -0
- package/dist/vault/credentials/present/0.1/payload.js +217 -0
- package/dist/vault/credentials/present/0.1/payload.js.map +1 -0
- package/dist/voting/_shared/0.1/voting.d.ts +1 -1
- package/dist/voting/_shared/0.1/voting.d.ts.map +1 -1
- package/dist/voting/board/read/0.1/payload.d.ts +58 -2
- package/dist/voting/board/read/0.1/payload.d.ts.map +1 -1
- package/dist/voting/board/read/0.1/payload.js +36 -0
- package/dist/voting/board/read/0.1/payload.js.map +1 -1
- package/dist/voting/trustees/authorize/0.1/payload.d.ts +617 -0
- package/dist/voting/trustees/authorize/0.1/payload.d.ts.map +1 -0
- package/dist/voting/trustees/authorize/0.1/payload.js +386 -0
- package/dist/voting/trustees/authorize/0.1/payload.js.map +1 -0
- package/dist/voting/trustees/status/0.1/payload.d.ts +106 -2
- package/dist/voting/trustees/status/0.1/payload.d.ts.map +1 -1
- package/dist/voting/trustees/status/0.1/payload.js +48 -0
- package/dist/voting/trustees/status/0.1/payload.js.map +1 -1
- package/dist/vta/pcs/trustee/deal/0.2/payload.d.ts +1832 -0
- package/dist/vta/pcs/trustee/deal/0.2/payload.d.ts.map +1 -0
- package/dist/vta/pcs/trustee/deal/0.2/payload.js +1077 -0
- package/dist/vta/pcs/trustee/deal/0.2/payload.js.map +1 -0
- package/dist/vta/pcs/trustee/decrypt/0.2/payload.d.ts +758 -0
- package/dist/vta/pcs/trustee/decrypt/0.2/payload.d.ts.map +1 -0
- package/dist/vta/pcs/trustee/decrypt/0.2/payload.js +423 -0
- package/dist/vta/pcs/trustee/decrypt/0.2/payload.js.map +1 -0
- package/dist/vta/pcs/trustee/justify/0.2/payload.d.ts +1867 -0
- package/dist/vta/pcs/trustee/justify/0.2/payload.d.ts.map +1 -0
- package/dist/vta/pcs/trustee/justify/0.2/payload.js +1095 -0
- package/dist/vta/pcs/trustee/justify/0.2/payload.js.map +1 -0
- package/dist/vta/pcs/trustee/keys/0.2/payload.d.ts +1912 -0
- package/dist/vta/pcs/trustee/keys/0.2/payload.d.ts.map +1 -0
- package/dist/vta/pcs/trustee/keys/0.2/payload.js +1115 -0
- package/dist/vta/pcs/trustee/keys/0.2/payload.js.map +1 -0
- package/dist/vta/pcs/vote-encrypted/0.2/payload.d.ts +2228 -0
- package/dist/vta/pcs/vote-encrypted/0.2/payload.d.ts.map +1 -0
- package/dist/vta/pcs/vote-encrypted/0.2/payload.js +1300 -0
- package/dist/vta/pcs/vote-encrypted/0.2/payload.js.map +1 -0
- package/dist/vta/webvh/dids/create/1.2/payload.d.ts +961 -0
- package/dist/vta/webvh/dids/create/1.2/payload.d.ts.map +1 -0
- package/dist/vta/webvh/dids/create/1.2/payload.js +480 -0
- package/dist/vta/webvh/dids/create/1.2/payload.js.map +1 -0
- package/dist/vtc/_shared/0.1/room-migration.d.ts +16 -0
- package/dist/vtc/_shared/0.1/room-migration.d.ts.map +1 -0
- package/dist/vtc/_shared/0.1/room-migration.js +6 -0
- package/dist/vtc/_shared/0.1/room-migration.js.map +1 -0
- package/dist/vtc/_shared/0.1/room-storage.d.ts +1 -1
- package/dist/vtc/_shared/0.1/room-storage.d.ts.map +1 -1
- package/dist/vtc/_shared/0.2/room-storage.d.ts +16 -0
- package/dist/vtc/_shared/0.2/room-storage.d.ts.map +1 -0
- package/dist/vtc/_shared/0.2/room-storage.js +6 -0
- package/dist/vtc/_shared/0.2/room-storage.js.map +1 -0
- package/dist/vtc/admin/events/_shared/0.4/topic.d.ts +31 -0
- package/dist/vtc/admin/events/_shared/0.4/topic.d.ts.map +1 -0
- package/dist/vtc/admin/events/_shared/0.4/topic.js +6 -0
- package/dist/vtc/admin/events/_shared/0.4/topic.js.map +1 -0
- package/dist/vtc/admin/events/event/0.4/payload.d.ts +172 -0
- package/dist/vtc/admin/events/event/0.4/payload.d.ts.map +1 -0
- package/dist/vtc/admin/events/event/0.4/payload.js +103 -0
- package/dist/vtc/admin/events/event/0.4/payload.js.map +1 -0
- package/dist/vtc/admin/events/subscribe/0.4/payload.d.ts +409 -0
- package/dist/vtc/admin/events/subscribe/0.4/payload.d.ts.map +1 -0
- package/dist/vtc/admin/events/subscribe/0.4/payload.js +238 -0
- package/dist/vtc/admin/events/subscribe/0.4/payload.js.map +1 -0
- package/dist/vtc/elections/show/0.1/payload.d.ts +86 -2
- package/dist/vtc/elections/show/0.1/payload.d.ts.map +1 -1
- package/dist/vtc/elections/show/0.1/payload.js +40 -0
- package/dist/vtc/elections/show/0.1/payload.js.map +1 -1
- package/dist/vtc/rooms/get/0.2/payload.d.ts +1966 -0
- package/dist/vtc/rooms/get/0.2/payload.d.ts.map +1 -0
- package/dist/vtc/rooms/get/0.2/payload.js +976 -0
- package/dist/vtc/rooms/get/0.2/payload.js.map +1 -0
- package/dist/vtc/rooms/storage/migrate/0.2/payload.d.ts +595 -0
- package/dist/vtc/rooms/storage/migrate/0.2/payload.d.ts.map +1 -0
- package/dist/vtc/rooms/storage/migrate/0.2/payload.js +336 -0
- package/dist/vtc/rooms/storage/migrate/0.2/payload.js.map +1 -0
- package/dist/vtc/storage/configs/create/0.1/payload.d.ts +1 -1
- package/dist/vtc/storage/configs/create/0.1/payload.d.ts.map +1 -1
- package/dist/vtc/storage/configs/create/0.2/payload.d.ts +1360 -0
- package/dist/vtc/storage/configs/create/0.2/payload.d.ts.map +1 -0
- package/dist/vtc/storage/configs/create/0.2/payload.js +783 -0
- package/dist/vtc/storage/configs/create/0.2/payload.js.map +1 -0
- package/dist/vtc/storage/configs/get/0.1/payload.d.ts +1 -1
- package/dist/vtc/storage/configs/get/0.1/payload.d.ts.map +1 -1
- package/dist/vtc/storage/configs/get/0.2/payload.d.ts +1854 -0
- package/dist/vtc/storage/configs/get/0.2/payload.d.ts.map +1 -0
- package/dist/vtc/storage/configs/get/0.2/payload.js +1075 -0
- package/dist/vtc/storage/configs/get/0.2/payload.js.map +1 -0
- package/dist/vtc/storage/configs/list/0.1/payload.d.ts +1 -1
- package/dist/vtc/storage/configs/list/0.1/payload.d.ts.map +1 -1
- package/dist/vtc/storage/configs/list/0.2/payload.d.ts +1955 -0
- package/dist/vtc/storage/configs/list/0.2/payload.d.ts.map +1 -0
- package/dist/vtc/storage/configs/list/0.2/payload.js +1125 -0
- package/dist/vtc/storage/configs/list/0.2/payload.js.map +1 -0
- package/dist/vtc/storage/configs/update/0.1/payload.d.ts +1 -1
- package/dist/vtc/storage/configs/update/0.1/payload.d.ts.map +1 -1
- package/dist/vtc/storage/configs/update/0.2/payload.d.ts +1362 -0
- package/dist/vtc/storage/configs/update/0.2/payload.d.ts.map +1 -0
- package/dist/vtc/storage/configs/update/0.2/payload.js +782 -0
- package/dist/vtc/storage/configs/update/0.2/payload.js.map +1 -0
- package/dist/vtc/storage/credentials/set/0.1/payload.d.ts +1 -1
- package/dist/vtc/storage/credentials/set/0.1/payload.d.ts.map +1 -1
- package/dist/vtc/storage/credentials/set/0.2/payload.d.ts +979 -0
- package/dist/vtc/storage/credentials/set/0.2/payload.d.ts.map +1 -0
- package/dist/vtc/storage/credentials/set/0.2/payload.js +573 -0
- package/dist/vtc/storage/credentials/set/0.2/payload.js.map +1 -0
- package/package.json +1 -1
- package/src/_runtime/freshness.ts +4 -2
- package/src/_shared/components.ts +388 -24
- package/src/device/list/0.1/payload.ts +4 -2
- package/src/device/list/0.2/payload.ts +4 -2
- package/src/device/register/0.1/payload.ts +4 -2
- package/src/device/register/0.2/payload.ts +4 -2
- package/src/index.ts +31 -0
- package/src/rooms/_shared/0.1/room.ts +1 -1
- package/src/rooms/create/0.2/payload.ts +364 -0
- package/src/rooms/epoch/chain/0.2/payload.ts +347 -0
- package/src/rooms/epoch/prune/0.2/payload.ts +315 -0
- package/src/rooms/info/0.2/payload.ts +700 -0
- package/src/rooms/keys/backfill/0.2/payload.ts +260 -0
- package/src/rooms/keys/browse/0.1/payload.ts +2 -2
- package/src/rooms/keys/browse/0.2/payload.ts +628 -0
- package/src/rooms/keys/chain/0.2/payload.ts +308 -0
- package/src/rooms/keys/profile/read/0.1/payload.ts +2 -2
- package/src/rooms/keys/read/0.1/payload.ts +2 -2
- package/src/rooms/owner/anchor/0.1/payload.ts +2 -2
- package/src/rooms/records/get/0.1/payload.ts +2 -2
- package/src/rooms/records/get/0.2/payload.ts +2 -2
- package/src/rooms/records/list/0.1/payload.ts +2 -2
- package/src/rooms/records/list/0.2/payload.ts +2 -2
- package/src/rooms/records/list/0.3/payload.ts +601 -0
- package/src/rooms/records/prune/0.1/payload.ts +451 -0
- package/src/rooms/records/put/0.3/payload.ts +741 -0
- package/src/rooms/records/retention/set/0.1/payload.ts +338 -0
- package/src/vault/credentials/present/0.1/payload.ts +283 -0
- package/src/voting/_shared/0.1/voting.ts +1 -1
- package/src/voting/board/read/0.1/payload.ts +38 -2
- package/src/voting/trustees/authorize/0.1/payload.ts +434 -0
- package/src/voting/trustees/status/0.1/payload.ts +58 -2
- package/src/vta/pcs/trustee/deal/0.2/payload.ts +1148 -0
- package/src/vta/pcs/trustee/decrypt/0.2/payload.ts +500 -0
- package/src/vta/pcs/trustee/justify/0.2/payload.ts +1167 -0
- package/src/vta/pcs/trustee/keys/0.2/payload.ts +1194 -0
- package/src/vta/pcs/vote-encrypted/0.2/payload.ts +1369 -0
- package/src/vta/webvh/dids/create/1.2/payload.ts +660 -0
- package/src/vtc/_shared/0.1/room-migration.ts +17 -0
- package/src/vtc/_shared/0.1/room-storage.ts +1 -1
- package/src/vtc/_shared/0.2/room-storage.ts +17 -0
- package/src/vtc/admin/events/_shared/0.4/topic.ts +32 -0
- package/src/vtc/admin/events/event/0.4/payload.ts +137 -0
- package/src/vtc/admin/events/subscribe/0.4/payload.ts +318 -0
- package/src/vtc/elections/show/0.1/payload.ts +46 -2
- package/src/vtc/rooms/get/0.2/payload.ts +1372 -0
- package/src/vtc/rooms/storage/migrate/0.2/payload.ts +408 -0
- package/src/vtc/storage/configs/create/0.1/payload.ts +1 -1
- package/src/vtc/storage/configs/create/0.2/payload.ts +830 -0
- package/src/vtc/storage/configs/get/0.1/payload.ts +1 -1
- package/src/vtc/storage/configs/get/0.2/payload.ts +1110 -0
- package/src/vtc/storage/configs/list/0.1/payload.ts +1 -1
- package/src/vtc/storage/configs/list/0.2/payload.ts +1177 -0
- package/src/vtc/storage/configs/update/0.1/payload.ts +1 -1
- package/src/vtc/storage/configs/update/0.2/payload.ts +829 -0
- package/src/vtc/storage/credentials/set/0.1/payload.ts +1 -1
- package/src/vtc/storage/credentials/set/0.2/payload.ts +619 -0
|
@@ -227,7 +227,8 @@ export const PAYLOAD_SCHEMA = {
|
|
|
227
227
|
"pcs-applicant",
|
|
228
228
|
"witness-request",
|
|
229
229
|
"pcs-voter",
|
|
230
|
-
"pcs-trustee"
|
|
230
|
+
"pcs-trustee",
|
|
231
|
+
"credential-present"
|
|
231
232
|
],
|
|
232
233
|
"description": "Fine-grained capability flag scoped to the device's allowed contexts. See SPEC.md for the full semantics of each. Capability values are additive: a consumer MUST ignore a value it does not recognise rather than reject the binding, and MUST NOT treat an unrecognised value as conferring anything."
|
|
233
234
|
},
|
|
@@ -567,7 +568,8 @@ export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
|
567
568
|
"pcs-applicant",
|
|
568
569
|
"witness-request",
|
|
569
570
|
"pcs-voter",
|
|
570
|
-
"pcs-trustee"
|
|
571
|
+
"pcs-trustee",
|
|
572
|
+
"credential-present"
|
|
571
573
|
],
|
|
572
574
|
"description": "Fine-grained capability flag scoped to the device's allowed contexts. See SPEC.md for the full semantics of each. Capability values are additive: a consumer MUST ignore a value it does not recognise rather than reject the binding, and MUST NOT treat an unrecognised value as conferring anything."
|
|
573
575
|
},
|
|
@@ -227,7 +227,8 @@ export const PAYLOAD_SCHEMA = {
|
|
|
227
227
|
"pcsApplicant",
|
|
228
228
|
"witnessRequest",
|
|
229
229
|
"pcsVoter",
|
|
230
|
-
"pcsTrustee"
|
|
230
|
+
"pcsTrustee",
|
|
231
|
+
"credentialPresent"
|
|
231
232
|
],
|
|
232
233
|
"description": "Fine-grained capability flag scoped to the device's allowed contexts. See SPEC.md for the full semantics of each. Capability values are additive: a consumer MUST ignore a value it does not recognise rather than reject the binding, and MUST NOT treat an unrecognised value as conferring anything."
|
|
233
234
|
},
|
|
@@ -567,7 +568,8 @@ export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
|
567
568
|
"pcsApplicant",
|
|
568
569
|
"witnessRequest",
|
|
569
570
|
"pcsVoter",
|
|
570
|
-
"pcsTrustee"
|
|
571
|
+
"pcsTrustee",
|
|
572
|
+
"credentialPresent"
|
|
571
573
|
],
|
|
572
574
|
"description": "Fine-grained capability flag scoped to the device's allowed contexts. See SPEC.md for the full semantics of each. Capability values are additive: a consumer MUST ignore a value it does not recognise rather than reject the binding, and MUST NOT treat an unrecognised value as conferring anything."
|
|
573
575
|
},
|
package/src/index.ts
CHANGED
|
@@ -452,11 +452,15 @@ export * as RoomsBlobsUploadChunk_v0_2 from "./rooms/blobs/upload/chunk/0.2/payl
|
|
|
452
452
|
export * as RoomsBlobsUploadCommit_v0_1 from "./rooms/blobs/upload/commit/0.1/payload.js";
|
|
453
453
|
export * as RoomsBlobsUploadCommit_v0_2 from "./rooms/blobs/upload/commit/0.2/payload.js";
|
|
454
454
|
export * as RoomsCreate_v0_1 from "./rooms/create/0.1/payload.js";
|
|
455
|
+
export * as RoomsCreate_v0_2 from "./rooms/create/0.2/payload.js";
|
|
455
456
|
export * as RoomsEpochChain_v0_1 from "./rooms/epoch/chain/0.1/payload.js";
|
|
457
|
+
export * as RoomsEpochChain_v0_2 from "./rooms/epoch/chain/0.2/payload.js";
|
|
456
458
|
export * as RoomsEpochCommits_v0_1 from "./rooms/epoch/commits/0.1/payload.js";
|
|
457
459
|
export * as RoomsEpochMint_v0_1 from "./rooms/epoch/mint/0.1/payload.js";
|
|
458
460
|
export * as RoomsEpochPrune_v0_1 from "./rooms/epoch/prune/0.1/payload.js";
|
|
461
|
+
export * as RoomsEpochPrune_v0_2 from "./rooms/epoch/prune/0.2/payload.js";
|
|
459
462
|
export * as RoomsInfo_v0_1 from "./rooms/info/0.1/payload.js";
|
|
463
|
+
export * as RoomsInfo_v0_2 from "./rooms/info/0.2/payload.js";
|
|
460
464
|
export * as RoomsKeysAct_v0_1 from "./rooms/keys/act/0.1/payload.js";
|
|
461
465
|
export * as RoomsKeysAct_v0_2 from "./rooms/keys/act/0.2/payload.js";
|
|
462
466
|
export * as RoomsKeysAct_v0_3 from "./rooms/keys/act/0.3/payload.js";
|
|
@@ -464,8 +468,11 @@ export * as RoomsKeysAct_v0_4 from "./rooms/keys/act/0.4/payload.js";
|
|
|
464
468
|
export * as RoomsKeysAct_v0_5 from "./rooms/keys/act/0.5/payload.js";
|
|
465
469
|
export * as RoomsKeysAct_v0_6 from "./rooms/keys/act/0.6/payload.js";
|
|
466
470
|
export * as RoomsKeysBackfill_v0_1 from "./rooms/keys/backfill/0.1/payload.js";
|
|
471
|
+
export * as RoomsKeysBackfill_v0_2 from "./rooms/keys/backfill/0.2/payload.js";
|
|
467
472
|
export * as RoomsKeysBrowse_v0_1 from "./rooms/keys/browse/0.1/payload.js";
|
|
473
|
+
export * as RoomsKeysBrowse_v0_2 from "./rooms/keys/browse/0.2/payload.js";
|
|
468
474
|
export * as RoomsKeysChain_v0_1 from "./rooms/keys/chain/0.1/payload.js";
|
|
475
|
+
export * as RoomsKeysChain_v0_2 from "./rooms/keys/chain/0.2/payload.js";
|
|
469
476
|
export * as RoomsKeysCommit_v0_1 from "./rooms/keys/commit/0.1/payload.js";
|
|
470
477
|
export * as RoomsKeysFileKey_v0_1 from "./rooms/keys/file-key/0.1/payload.js";
|
|
471
478
|
export * as RoomsKeysFileKey_v0_2 from "./rooms/keys/file-key/0.2/payload.js";
|
|
@@ -508,8 +515,12 @@ export * as RoomsRecordsGet_v0_1 from "./rooms/records/get/0.1/payload.js";
|
|
|
508
515
|
export * as RoomsRecordsGet_v0_2 from "./rooms/records/get/0.2/payload.js";
|
|
509
516
|
export * as RoomsRecordsList_v0_1 from "./rooms/records/list/0.1/payload.js";
|
|
510
517
|
export * as RoomsRecordsList_v0_2 from "./rooms/records/list/0.2/payload.js";
|
|
518
|
+
export * as RoomsRecordsList_v0_3 from "./rooms/records/list/0.3/payload.js";
|
|
519
|
+
export * as RoomsRecordsPrune_v0_1 from "./rooms/records/prune/0.1/payload.js";
|
|
511
520
|
export * as RoomsRecordsPut_v0_1 from "./rooms/records/put/0.1/payload.js";
|
|
512
521
|
export * as RoomsRecordsPut_v0_2 from "./rooms/records/put/0.2/payload.js";
|
|
522
|
+
export * as RoomsRecordsPut_v0_3 from "./rooms/records/put/0.3/payload.js";
|
|
523
|
+
export * as RoomsRecordsRetentionSet_v0_1 from "./rooms/records/retention/set/0.1/payload.js";
|
|
513
524
|
export * as RoomsRevocationsGet_v0_1 from "./rooms/revocations/get/0.1/payload.js";
|
|
514
525
|
export * as RoomsRevocationsPut_v0_1 from "./rooms/revocations/put/0.1/payload.js";
|
|
515
526
|
export * as RoomsUsage_v0_1 from "./rooms/usage/0.1/payload.js";
|
|
@@ -552,6 +563,7 @@ export * as VaultSecretShared_v0_3 from "./vault/_shared/0.3/vault-secret.js";
|
|
|
552
563
|
export * as VaultCredentialsArchive_v0_1 from "./vault/credentials/archive/0.1/payload.js";
|
|
553
564
|
export * as VaultCredentialsDelete_v0_1 from "./vault/credentials/delete/0.1/payload.js";
|
|
554
565
|
export * as VaultCredentialsGet_v0_1 from "./vault/credentials/get/0.1/payload.js";
|
|
566
|
+
export * as VaultCredentialsPresent_v0_1 from "./vault/credentials/present/0.1/payload.js";
|
|
555
567
|
export * as VaultCredentialsPurge_v0_1 from "./vault/credentials/purge/0.1/payload.js";
|
|
556
568
|
export * as VaultCredentialsQuery_v0_1 from "./vault/credentials/query/0.1/payload.js";
|
|
557
569
|
export * as VaultCredentialsReceive_v0_1 from "./vault/credentials/receive/0.1/payload.js";
|
|
@@ -597,6 +609,7 @@ export * as VotingElectionClose_v0_1 from "./voting/election/close/0.1/payload.j
|
|
|
597
609
|
export * as VotingElectionRegister_v0_1 from "./voting/election/register/0.1/payload.js";
|
|
598
610
|
export * as VotingElectionShow_v0_1 from "./voting/election/show/0.1/payload.js";
|
|
599
611
|
export * as VotingResultShow_v0_1 from "./voting/result/show/0.1/payload.js";
|
|
612
|
+
export * as VotingTrusteesAuthorize_v0_1 from "./voting/trustees/authorize/0.1/payload.js";
|
|
600
613
|
export * as VotingTrusteesConfirm_v0_1 from "./voting/trustees/confirm/0.1/payload.js";
|
|
601
614
|
export * as VotingTrusteesDeal_v0_1 from "./voting/trustees/deal/0.1/payload.js";
|
|
602
615
|
export * as VotingTrusteesDecrypt_v0_1 from "./voting/trustees/decrypt/0.1/payload.js";
|
|
@@ -694,14 +707,19 @@ export * as VtaPcsTokensAbandon_v0_1 from "./vta/pcs/tokens/abandon/0.1/payload.
|
|
|
694
707
|
export * as VtaPcsTokensAccept_v0_1 from "./vta/pcs/tokens/accept/0.1/payload.js";
|
|
695
708
|
export * as VtaPcsTokensRequest_v0_1 from "./vta/pcs/tokens/request/0.1/payload.js";
|
|
696
709
|
export * as VtaPcsTrusteeDeal_v0_1 from "./vta/pcs/trustee/deal/0.1/payload.js";
|
|
710
|
+
export * as VtaPcsTrusteeDeal_v0_2 from "./vta/pcs/trustee/deal/0.2/payload.js";
|
|
697
711
|
export * as VtaPcsTrusteeDecrypt_v0_1 from "./vta/pcs/trustee/decrypt/0.1/payload.js";
|
|
712
|
+
export * as VtaPcsTrusteeDecrypt_v0_2 from "./vta/pcs/trustee/decrypt/0.2/payload.js";
|
|
698
713
|
export * as VtaPcsTrusteeEnrol_v0_1 from "./vta/pcs/trustee/enrol/0.1/payload.js";
|
|
699
714
|
export * as VtaPcsTrusteeJustify_v0_1 from "./vta/pcs/trustee/justify/0.1/payload.js";
|
|
715
|
+
export * as VtaPcsTrusteeJustify_v0_2 from "./vta/pcs/trustee/justify/0.2/payload.js";
|
|
700
716
|
export * as VtaPcsTrusteeKeys_v0_1 from "./vta/pcs/trustee/keys/0.1/payload.js";
|
|
717
|
+
export * as VtaPcsTrusteeKeys_v0_2 from "./vta/pcs/trustee/keys/0.2/payload.js";
|
|
701
718
|
export * as VtaPcsTrusteeRead_v0_1 from "./vta/pcs/trustee/read/0.1/payload.js";
|
|
702
719
|
export * as VtaPcsVerifyAttestation_v0_1 from "./vta/pcs/verify-attestation/0.1/payload.js";
|
|
703
720
|
export * as VtaPcsVetterShow_v0_1 from "./vta/pcs/vetter/show/0.1/payload.js";
|
|
704
721
|
export * as VtaPcsVoteEncrypted_v0_1 from "./vta/pcs/vote-encrypted/0.1/payload.js";
|
|
722
|
+
export * as VtaPcsVoteEncrypted_v0_2 from "./vta/pcs/vote-encrypted/0.2/payload.js";
|
|
705
723
|
export * as VtaPcsVote_v0_1 from "./vta/pcs/vote/0.1/payload.js";
|
|
706
724
|
export * as VtaPcsVoterAccept_v0_1 from "./vta/pcs/voter/accept/0.1/payload.js";
|
|
707
725
|
export * as VtaPcsVoterRead_v0_1 from "./vta/pcs/voter/read/0.1/payload.js";
|
|
@@ -727,6 +745,7 @@ export * as VtaWebvhAgentNameRemove_v1_0 from "./vta/webvh/agent-name/remove/1.0
|
|
|
727
745
|
export * as VtaWebvhAgentNameSet_v1_0 from "./vta/webvh/agent-name/set/1.0/payload.js";
|
|
728
746
|
export * as VtaWebvhDidsCreate_v1_0 from "./vta/webvh/dids/create/1.0/payload.js";
|
|
729
747
|
export * as VtaWebvhDidsCreate_v1_1 from "./vta/webvh/dids/create/1.1/payload.js";
|
|
748
|
+
export * as VtaWebvhDidsCreate_v1_2 from "./vta/webvh/dids/create/1.2/payload.js";
|
|
730
749
|
export * as VtaWebvhDidsDelete_v1_0 from "./vta/webvh/dids/delete/1.0/payload.js";
|
|
731
750
|
export * as VtaWebvhDidsGet_v1_0 from "./vta/webvh/dids/get/1.0/payload.js";
|
|
732
751
|
export * as VtaWebvhDidsKeysAdd_v1_0 from "./vta/webvh/dids/keys/add/1.0/payload.js";
|
|
@@ -768,11 +787,13 @@ export * as InviteShared_v0_1 from "./vtc/_shared/0.1/invite.js";
|
|
|
768
787
|
export * as JoinRequestShared_v0_1 from "./vtc/_shared/0.1/join-request.js";
|
|
769
788
|
export * as MemberShared_v0_1 from "./vtc/_shared/0.1/member.js";
|
|
770
789
|
export * as RelationshipLifecycleShared_v0_1 from "./vtc/_shared/0.1/relationship-lifecycle.js";
|
|
790
|
+
export * as RoomMigrationShared_v0_1 from "./vtc/_shared/0.1/room-migration.js";
|
|
771
791
|
export * as RoomStorageShared_v0_1 from "./vtc/_shared/0.1/room-storage.js";
|
|
772
792
|
export * as SchemaRegistryShared_v0_1 from "./vtc/_shared/0.1/schema-registry.js";
|
|
773
793
|
export * as VetterProfileShared_v0_1 from "./vtc/_shared/0.1/vetter-profile.js";
|
|
774
794
|
export * as VettingAutoGrantShared_v0_1 from "./vtc/_shared/0.1/vetting-auto-grant.js";
|
|
775
795
|
export * as WebsiteTransferShared_v0_1 from "./vtc/_shared/0.1/website-transfer.js";
|
|
796
|
+
export * as RoomStorageShared_v0_2 from "./vtc/_shared/0.2/room-storage.js";
|
|
776
797
|
export * as SchemaRegistryShared_v0_2 from "./vtc/_shared/0.2/schema-registry.js";
|
|
777
798
|
export * as ActionShared_v0_1 from "./vtc/admin/actions/_shared/0.1/action.js";
|
|
778
799
|
export * as ActionShared_v0_2 from "./vtc/admin/actions/_shared/0.2/action.js";
|
|
@@ -788,12 +809,15 @@ export * as VtcAdminBootstrap_v0_1 from "./vtc/admin/bootstrap/0.1/payload.js";
|
|
|
788
809
|
export * as TopicShared_v0_1 from "./vtc/admin/events/_shared/0.1/topic.js";
|
|
789
810
|
export * as TopicShared_v0_2 from "./vtc/admin/events/_shared/0.2/topic.js";
|
|
790
811
|
export * as TopicShared_v0_3 from "./vtc/admin/events/_shared/0.3/topic.js";
|
|
812
|
+
export * as TopicShared_v0_4 from "./vtc/admin/events/_shared/0.4/topic.js";
|
|
791
813
|
export * as VtcAdminEventsEvent_v0_1 from "./vtc/admin/events/event/0.1/payload.js";
|
|
792
814
|
export * as VtcAdminEventsEvent_v0_2 from "./vtc/admin/events/event/0.2/payload.js";
|
|
793
815
|
export * as VtcAdminEventsEvent_v0_3 from "./vtc/admin/events/event/0.3/payload.js";
|
|
816
|
+
export * as VtcAdminEventsEvent_v0_4 from "./vtc/admin/events/event/0.4/payload.js";
|
|
794
817
|
export * as VtcAdminEventsSubscribe_v0_1 from "./vtc/admin/events/subscribe/0.1/payload.js";
|
|
795
818
|
export * as VtcAdminEventsSubscribe_v0_2 from "./vtc/admin/events/subscribe/0.2/payload.js";
|
|
796
819
|
export * as VtcAdminEventsSubscribe_v0_3 from "./vtc/admin/events/subscribe/0.3/payload.js";
|
|
820
|
+
export * as VtcAdminEventsSubscribe_v0_4 from "./vtc/admin/events/subscribe/0.4/payload.js";
|
|
797
821
|
export * as VtcAdminInvitesCreate_v0_1 from "./vtc/admin/invites/create/0.1/payload.js";
|
|
798
822
|
export * as VtcAdminInvitesList_v0_1 from "./vtc/admin/invites/list/0.1/payload.js";
|
|
799
823
|
export * as VtcAdminInvitesRevoke_v0_1 from "./vtc/admin/invites/revoke/0.1/payload.js";
|
|
@@ -974,6 +998,7 @@ export * as VtcRoomsCommunityMembersRemove_v0_2 from "./vtc/rooms/community/memb
|
|
|
974
998
|
export * as VtcRoomsCommunityUpdate_v0_1 from "./vtc/rooms/community/update/0.1/payload.js";
|
|
975
999
|
export * as VtcRoomsCommunityUpdate_v0_2 from "./vtc/rooms/community/update/0.2/payload.js";
|
|
976
1000
|
export * as VtcRoomsGet_v0_1 from "./vtc/rooms/get/0.1/payload.js";
|
|
1001
|
+
export * as VtcRoomsGet_v0_2 from "./vtc/rooms/get/0.2/payload.js";
|
|
977
1002
|
export * as VtcRoomsLimitsSet_v0_1 from "./vtc/rooms/limits/set/0.1/payload.js";
|
|
978
1003
|
export * as VtcRoomsList_v0_1 from "./vtc/rooms/list/0.1/payload.js";
|
|
979
1004
|
export * as VtcRoomsMembershipsList_v0_1 from "./vtc/rooms/memberships/list/0.1/payload.js";
|
|
@@ -983,6 +1008,7 @@ export * as VtcRoomsOffersList_v0_2 from "./vtc/rooms/offers/list/0.2/payload.js
|
|
|
983
1008
|
export * as VtcRoomsOffersList_v0_3 from "./vtc/rooms/offers/list/0.3/payload.js";
|
|
984
1009
|
export * as VtcRoomsStorageAssign_v0_1 from "./vtc/rooms/storage/assign/0.1/payload.js";
|
|
985
1010
|
export * as VtcRoomsStorageMigrate_v0_1 from "./vtc/rooms/storage/migrate/0.1/payload.js";
|
|
1011
|
+
export * as VtcRoomsStorageMigrate_v0_2 from "./vtc/rooms/storage/migrate/0.2/payload.js";
|
|
986
1012
|
export * as VtcRoomsUsage_v0_1 from "./vtc/rooms/usage/0.1/payload.js";
|
|
987
1013
|
export * as VtcSchemasAcceptsDelete_v0_1 from "./vtc/schemas/accepts/delete/0.1/payload.js";
|
|
988
1014
|
export * as VtcSchemasAcceptsList_v0_1 from "./vtc/schemas/accepts/list/0.1/payload.js";
|
|
@@ -996,12 +1022,17 @@ export * as VtcSchemasList_v0_1 from "./vtc/schemas/list/0.1/payload.js";
|
|
|
996
1022
|
export * as VtcSchemasRegister_v0_1 from "./vtc/schemas/register/0.1/payload.js";
|
|
997
1023
|
export * as VtcSchemasShow_v0_1 from "./vtc/schemas/show/0.1/payload.js";
|
|
998
1024
|
export * as VtcStorageConfigsCreate_v0_1 from "./vtc/storage/configs/create/0.1/payload.js";
|
|
1025
|
+
export * as VtcStorageConfigsCreate_v0_2 from "./vtc/storage/configs/create/0.2/payload.js";
|
|
999
1026
|
export * as VtcStorageConfigsGet_v0_1 from "./vtc/storage/configs/get/0.1/payload.js";
|
|
1027
|
+
export * as VtcStorageConfigsGet_v0_2 from "./vtc/storage/configs/get/0.2/payload.js";
|
|
1000
1028
|
export * as VtcStorageConfigsList_v0_1 from "./vtc/storage/configs/list/0.1/payload.js";
|
|
1029
|
+
export * as VtcStorageConfigsList_v0_2 from "./vtc/storage/configs/list/0.2/payload.js";
|
|
1001
1030
|
export * as VtcStorageConfigsProbe_v0_1 from "./vtc/storage/configs/probe/0.1/payload.js";
|
|
1002
1031
|
export * as VtcStorageConfigsRetire_v0_1 from "./vtc/storage/configs/retire/0.1/payload.js";
|
|
1003
1032
|
export * as VtcStorageConfigsUpdate_v0_1 from "./vtc/storage/configs/update/0.1/payload.js";
|
|
1033
|
+
export * as VtcStorageConfigsUpdate_v0_2 from "./vtc/storage/configs/update/0.2/payload.js";
|
|
1004
1034
|
export * as VtcStorageCredentialsSet_v0_1 from "./vtc/storage/credentials/set/0.1/payload.js";
|
|
1035
|
+
export * as VtcStorageCredentialsSet_v0_2 from "./vtc/storage/credentials/set/0.2/payload.js";
|
|
1005
1036
|
export * as VtcVettingAutoGrantShow_v0_1 from "./vtc/vetting/auto-grant/show/0.1/payload.js";
|
|
1006
1037
|
export * as VtcVettingAutoGrantUpdate_v0_1 from "./vtc/vetting/auto-grant/update/0.1/payload.js";
|
|
1007
1038
|
export * as VtcVettingHiddenPublish_v0_1 from "./vtc/vetting/hidden/publish/0.1/payload.js";
|
|
@@ -14,4 +14,4 @@ export interface RoomsSharedTypes {
|
|
|
14
14
|
* The definitions this shared schema publishes, hoisted to one declaration each.
|
|
15
15
|
* See "../../../_shared/components.js".
|
|
16
16
|
*/
|
|
17
|
-
export type { AnchorCadence, AuthorityPresentation, CredentialRevocation, DataCommitment, EpochAnchor, EpochLink, HeadVersion, ReadVerification, RecordCount, RecordMetadata, RecordMetadataV2, RecordTrace, RetentionPolicy, RevocationEntry, RevocationHead, RevocationList, RoomProfile, RoomRevocation, SealedRecord, SubjectRevocation, Visibility } from "../../../_shared/components.js";
|
|
17
|
+
export type { AnchorCadence, AuthorityPresentation, CredentialRevocation, DataCommitment, EpochAnchor, EpochFloor, EpochLink, HeadVersion, PermittedUse, ReadVerification, RecordBasis, RecordConfidence, RecordCount, RecordEvidence, RecordEvidenceCredential, RecordEvidenceList, RecordEvidenceRecord, RecordMetadata, RecordMetadataV2, RecordPrune, RecordRetention, RecordTrace, RecordValidUntil, RetentionPolicy, RevocationEntry, RevocationHead, RevocationList, RoomProfile, RoomRevocation, SealedRecord, SubjectRevocation, Visibility } from "../../../_shared/components.js";
|
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
|
|
3
|
+
* Source: specs/rooms/create/0.2/payload.schema.json
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import type { AnchorCadence, Ext, RecordRetention, RetentionPolicy, Visibility } from "../../../_shared/components.js";
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* An owner registers a data room with a host. 0.2 adds `recordRetention`: how long the room keeps its records by age, stated at creation so that no record is ever removed under a rule its readers could not have read.
|
|
11
|
+
*/
|
|
12
|
+
export interface RoomsCreatePayload {
|
|
13
|
+
/**
|
|
14
|
+
* The room's identifier, minted by its owner before this call. A host is told the identifier; it does not assign one, because a room whose identity the host chose could not move to another host.
|
|
15
|
+
*/
|
|
16
|
+
roomId: string;
|
|
17
|
+
visibility: Visibility;
|
|
18
|
+
/**
|
|
19
|
+
* The room's accountable party: the controller of the room's identifier, the issuer of every credential in it, and the party a host addresses about quota, abuse, or lifecycle. Visible at every visibility, including `private` — a room has someone answerable for it.
|
|
20
|
+
*/
|
|
21
|
+
ownerDid: string;
|
|
22
|
+
/**
|
|
23
|
+
* Whether this room keeps its history readable across a membership change. Absent means `chained`, which is the choice a room wants unless it has a reason not to: joining a room should mean being able to read it. A host MUST reject an epoch link for a room whose policy is `fromJoin` rather than storing one it declared it would not have.
|
|
24
|
+
*/
|
|
25
|
+
retentionPolicy?: RetentionPolicy;
|
|
26
|
+
/**
|
|
27
|
+
* How long the host will hold the room after its epoch lapses without renewal, before storage may be reclaimed. Stated at creation rather than discovered: reclamation that surprises a member is a failure of the design, not of the member.
|
|
28
|
+
*/
|
|
29
|
+
retentionDays?: number;
|
|
30
|
+
/**
|
|
31
|
+
* What this room intends about anchoring. OPTIONAL; absent reads as `manual`, which draws no expectation and is the honest default for a room whose owner has not decided. A host stores it and serves it back — it constrains nothing the host does.
|
|
32
|
+
*/
|
|
33
|
+
anchorCadence?: AnchorCadence;
|
|
34
|
+
/**
|
|
35
|
+
* How long the room keeps its records, by age: which records `rooms/records/prune` may remove. OPTIONAL; absent means no record is ever eligible by age. Unlike `retentionPolicy` it is not fixed: a holder of `admin` changes it with `rooms/records/retention/set`.
|
|
36
|
+
*/
|
|
37
|
+
recordRetention?: RecordRetention;
|
|
38
|
+
/**
|
|
39
|
+
* Ecosystem-defined extension members per SPEC.md §4.5.1.
|
|
40
|
+
*/
|
|
41
|
+
ext?: Ext;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Success response to rooms/create. Type https://trusttasks.org/spec/rooms/create/0.2#response.
|
|
45
|
+
*/
|
|
46
|
+
export interface RoomsCreateResponsePayload {
|
|
47
|
+
roomId: string;
|
|
48
|
+
/**
|
|
49
|
+
* Always 1 for a new room.
|
|
50
|
+
*/
|
|
51
|
+
epoch: number;
|
|
52
|
+
/**
|
|
53
|
+
* Echoed so a caller knows what was recorded rather than what was asked — the two differ on a host that predates this member.
|
|
54
|
+
*/
|
|
55
|
+
anchorCadence?: AnchorCadence;
|
|
56
|
+
/**
|
|
57
|
+
* The record retention the host recorded, echoed for the same reason `anchorCadence` is: a caller learns what is in force rather than what it asked for. Absent when none was recorded.
|
|
58
|
+
*/
|
|
59
|
+
recordRetention?: RecordRetention;
|
|
60
|
+
ext?: Ext;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/** Shared definitions this specification references, re-exported under the names it used to declare them with. */
|
|
64
|
+
export type { AnchorCadence, Ext, RecordRetention, RetentionPolicy, Visibility };
|
|
65
|
+
|
|
66
|
+
/** Trust Task type URI. */
|
|
67
|
+
export const TYPE_URI = "https://trusttasks.org/spec/rooms/create/0.2" as const;
|
|
68
|
+
|
|
69
|
+
/** Stable alias for this specification's request payload shape. */
|
|
70
|
+
export type Payload = RoomsCreatePayload;
|
|
71
|
+
|
|
72
|
+
/** Trust Task response type URI (request type URI + "#response"). */
|
|
73
|
+
export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/rooms/create/0.2#response" as const;
|
|
74
|
+
|
|
75
|
+
/** Stable alias for this specification's success-response payload shape. */
|
|
76
|
+
export type Response = RoomsCreateResponsePayload;
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* This specification's payload schema, as a value.
|
|
80
|
+
*
|
|
81
|
+
* SPEC.md §7.2 item 2 is performed against this. It is shipped as data
|
|
82
|
+
* rather than only as a `.json` file because TypeScript types are erased
|
|
83
|
+
* at runtime: without a schema a consumer has nothing to validate, and
|
|
84
|
+
* every REQUIRED payload member is optional in practice. Cross-file
|
|
85
|
+
* `$ref`s are already inlined, so it needs no resolver.
|
|
86
|
+
*/
|
|
87
|
+
export const PAYLOAD_SCHEMA = {
|
|
88
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
89
|
+
"$id": "https://trusttasks.org/spec/rooms/create/0.2",
|
|
90
|
+
"title": "Rooms Create — payload",
|
|
91
|
+
"type": "object",
|
|
92
|
+
"additionalProperties": false,
|
|
93
|
+
"required": [
|
|
94
|
+
"roomId",
|
|
95
|
+
"visibility",
|
|
96
|
+
"ownerDid"
|
|
97
|
+
],
|
|
98
|
+
"properties": {
|
|
99
|
+
"roomId": {
|
|
100
|
+
"type": "string",
|
|
101
|
+
"description": "The room's identifier, minted by its owner before this call. A host is told the identifier; it does not assign one, because a room whose identity the host chose could not move to another host."
|
|
102
|
+
},
|
|
103
|
+
"visibility": {
|
|
104
|
+
"$ref": "#/$defs/Visibility"
|
|
105
|
+
},
|
|
106
|
+
"ownerDid": {
|
|
107
|
+
"type": "string",
|
|
108
|
+
"description": "The room's accountable party: the controller of the room's identifier, the issuer of every credential in it, and the party a host addresses about quota, abuse, or lifecycle. Visible at every visibility, including `private` — a room has someone answerable for it."
|
|
109
|
+
},
|
|
110
|
+
"retentionPolicy": {
|
|
111
|
+
"$ref": "#/$defs/RetentionPolicy",
|
|
112
|
+
"description": "Whether this room keeps its history readable across a membership change. Absent means `chained`, which is the choice a room wants unless it has a reason not to: joining a room should mean being able to read it. A host MUST reject an epoch link for a room whose policy is `fromJoin` rather than storing one it declared it would not have."
|
|
113
|
+
},
|
|
114
|
+
"retentionDays": {
|
|
115
|
+
"type": "integer",
|
|
116
|
+
"minimum": 1,
|
|
117
|
+
"description": "How long the host will hold the room after its epoch lapses without renewal, before storage may be reclaimed. Stated at creation rather than discovered: reclamation that surprises a member is a failure of the design, not of the member."
|
|
118
|
+
},
|
|
119
|
+
"anchorCadence": {
|
|
120
|
+
"$ref": "#/$defs/AnchorCadence",
|
|
121
|
+
"description": "What this room intends about anchoring. OPTIONAL; absent reads as `manual`, which draws no expectation and is the honest default for a room whose owner has not decided. A host stores it and serves it back — it constrains nothing the host does."
|
|
122
|
+
},
|
|
123
|
+
"recordRetention": {
|
|
124
|
+
"$ref": "#/$defs/RecordRetention",
|
|
125
|
+
"description": "How long the room keeps its records, by age: which records `rooms/records/prune` may remove. OPTIONAL; absent means no record is ever eligible by age. Unlike `retentionPolicy` it is not fixed: a holder of `admin` changes it with `rooms/records/retention/set`."
|
|
126
|
+
},
|
|
127
|
+
"ext": {
|
|
128
|
+
"$ref": "#/$defs/Ext",
|
|
129
|
+
"description": "Ecosystem-defined extension members per SPEC.md §4.5.1."
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
"$defs": {
|
|
133
|
+
"Response": {
|
|
134
|
+
"$anchor": "response",
|
|
135
|
+
"title": "Rooms Create — response payload",
|
|
136
|
+
"description": "Success response to rooms/create. Type https://trusttasks.org/spec/rooms/create/0.2#response.",
|
|
137
|
+
"type": "object",
|
|
138
|
+
"additionalProperties": false,
|
|
139
|
+
"required": [
|
|
140
|
+
"roomId",
|
|
141
|
+
"epoch"
|
|
142
|
+
],
|
|
143
|
+
"properties": {
|
|
144
|
+
"roomId": {
|
|
145
|
+
"type": "string"
|
|
146
|
+
},
|
|
147
|
+
"epoch": {
|
|
148
|
+
"type": "integer",
|
|
149
|
+
"minimum": 1,
|
|
150
|
+
"description": "Always 1 for a new room."
|
|
151
|
+
},
|
|
152
|
+
"anchorCadence": {
|
|
153
|
+
"$ref": "#/$defs/AnchorCadence",
|
|
154
|
+
"description": "Echoed so a caller knows what was recorded rather than what was asked — the two differ on a host that predates this member."
|
|
155
|
+
},
|
|
156
|
+
"recordRetention": {
|
|
157
|
+
"$ref": "#/$defs/RecordRetention",
|
|
158
|
+
"description": "The record retention the host recorded, echoed for the same reason `anchorCadence` is: a caller learns what is in force rather than what it asked for. Absent when none was recorded."
|
|
159
|
+
},
|
|
160
|
+
"ext": {
|
|
161
|
+
"$ref": "#/$defs/Ext"
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
"Ext": {
|
|
166
|
+
"title": "Ext",
|
|
167
|
+
"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.",
|
|
168
|
+
"type": "object",
|
|
169
|
+
"minProperties": 1,
|
|
170
|
+
"additionalProperties": true,
|
|
171
|
+
"propertyNames": {
|
|
172
|
+
"pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
|
|
173
|
+
}
|
|
174
|
+
},
|
|
175
|
+
"RecordRetention": {
|
|
176
|
+
"title": "RecordRetention",
|
|
177
|
+
"type": "object",
|
|
178
|
+
"additionalProperties": false,
|
|
179
|
+
"description": "How long a room keeps its records, by age: the room's **record retention**. Records older than it states become **eligible** to be removed by `rooms/records/prune`; nothing is removed until a holder of `admin` asks for a prune, and nothing a prune removes can be brought back.\n\n**Not `retentionPolicy`, and not `retentionDays`.** Both names are taken in this family and mean other things. `retentionPolicy` (`RetentionPolicy`) is whether a room's *key chain* lets a member read epochs from before they joined, fixed at creation because key material either exists for an epoch or it does not. `retentionDays` (`rooms/create`) is how long a host keeps a whole room after it lapses unrenewed. This is a third question — how long the room keeps its *records* while it is live — and unlike the first it is a decision a room revisits, so it is changeable (`rooms/records/retention/set`). A name sharing either's would invite a reader to apply one's rules to the other.\n\n**Age is the host's to measure, so age is `updatedAt`.** On the sealed tiers a host can read nothing of a record but its key, version, status, pinning and when it last changed, so a policy the host applies can only be stated in those terms. That is also why it cannot use a record's own `validUntil`, which is sealed: expiry is a reader's rule, retention a host's. A curation is a change, so it restarts a record's age — a retraction starts a tombstone's.\n\n**Absent, or `{}`, means no record is ever eligible by age**, and that is the reading a host MUST apply whenever it cannot read a policy: removing data under a rule nobody stated is the failure this member exists to prevent. Every member can read the policy in force (`rooms/info`), so a record is never removed under a rule its readers could not have known.",
|
|
180
|
+
"properties": {
|
|
181
|
+
"tombstoneDays": {
|
|
182
|
+
"type": "integer",
|
|
183
|
+
"minimum": 1,
|
|
184
|
+
"maximum": 36500,
|
|
185
|
+
"description": "Days a retracted record's tombstone is kept after its retraction. A tombstone whose `updatedAt` is more than this long ago is eligible. Tombstones exist so that a member syncing incrementally learns of a retraction (`rooms/records/curate`); this is how long a member may stay away and still learn of one that way rather than by rebuilding their copy of the room. Absent means tombstones are never eligible."
|
|
186
|
+
},
|
|
187
|
+
"recordDays": {
|
|
188
|
+
"type": "integer",
|
|
189
|
+
"minimum": 1,
|
|
190
|
+
"maximum": 36500,
|
|
191
|
+
"description": "Days a record is kept after it last changed, whatever its standing. A record — `active`, `deprecated` or `retracted` — whose `updatedAt` is more than this long ago is eligible, **unless it is pinned**: pinning says what matters in the room, and a room that wants a pinned record gone unpins it first. Absent means records are never eligible by age."
|
|
192
|
+
},
|
|
193
|
+
"ext": {
|
|
194
|
+
"$ref": "#/$defs/Ext",
|
|
195
|
+
"description": "Ecosystem-defined extension members per SPEC.md §4.5.1. A host MUST NOT treat a member here as making more records eligible: a removal rule a member's reader cannot understand is one they were never told about."
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
},
|
|
199
|
+
"AnchorCadence": {
|
|
200
|
+
"title": "AnchorCadence",
|
|
201
|
+
"type": "string",
|
|
202
|
+
"enum": [
|
|
203
|
+
"never",
|
|
204
|
+
"renewal",
|
|
205
|
+
"manual"
|
|
206
|
+
],
|
|
207
|
+
"description": "How often this room intends to write an `EpochAnchor`. **A statement of intent, not a schedule anything enforces** — nothing in this family can make an owner anchor.\n\nIt is worth stating anyway, and the reason is the interesting part: it makes **silence legible**. A room that says `renewal` and has not anchored in ten epochs is telling a member something, and a member who did not know what to expect could not have noticed. A room that says `never` is telling them not to wait for one.\n\n - `never` — no anchor is intended. Honest, and cheap: anchoring costs a witnessed update and a rotation of the room DID's update key each time.\n - `renewal` — one anchor per epoch change, which is the cadence §9's lifecycle already moves at.\n - `manual` — the owner anchors when they decide to. A member should draw no freshness expectation from this at all, which is exactly what it is for: it is the honest answer where there is no rule.\n\nDeliberately 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."
|
|
208
|
+
},
|
|
209
|
+
"RetentionPolicy": {
|
|
210
|
+
"title": "RetentionPolicy",
|
|
211
|
+
"type": "string",
|
|
212
|
+
"enum": [
|
|
213
|
+
"chained",
|
|
214
|
+
"fromJoin"
|
|
215
|
+
],
|
|
216
|
+
"description": "Whether a room keeps its history readable across a membership change, fixed at creation and immutable thereafter — like `Visibility`, and for the same reason: the rungs of an epoch key chain either exist for an epoch or they do not, and no later change of mind can seal key material that was never sealed or unseal what was already severed. `chained`: each advance produces an `EpochLink`, so every member reads the room's whole retained history however long they have been in it — what a **library** wants, at the cost of post-compromise security for record content, since a compromised current key then reaches every retained epoch. `fromJoin`: no rungs are produced, so a member reads only from the epoch their group state is at — what a **stream** wants, and what a room under a strict forward-secrecy obligation wants, at the cost that a joining member finds an empty-looking room and nobody can reread a record once their group state has moved past the epoch it was sealed under. Absent means `chained`; see the prose on why the absent case is the readable one.",
|
|
217
|
+
"$comment": "Deliberately no JSON Schema `default`. A declared default is materialised by the generated bindings — the member becomes non-optional with a serde default — so an absent value would reappear as an explicit one on re-serialisation and break round-trip idempotence for every document written before this member existed. The meaning of absence is stated in prose, where a binding cannot act on it."
|
|
218
|
+
},
|
|
219
|
+
"Visibility": {
|
|
220
|
+
"title": "Visibility",
|
|
221
|
+
"type": "string",
|
|
222
|
+
"enum": [
|
|
223
|
+
"open",
|
|
224
|
+
"attributed",
|
|
225
|
+
"private"
|
|
226
|
+
],
|
|
227
|
+
"description": "How much of a room its host can see, fixed at creation and immutable thereafter. `open`: records are cleartext, searchable and fully audited. `attributed`: record content is sealed, and the host still learns which member acted. `private`: content is sealed and membership is presented in zero knowledge, so the host verifies that a member acted without learning which. Immutable because a downgrade cannot un-see cleartext and an upgrade would protect only what came after while presenting as though it protected everything."
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
"description": "An owner registers a data room with a host. 0.2 adds `recordRetention`: how long the room keeps its records by age, stated at creation so that no record is ever removed under a rule its readers could not have read."
|
|
231
|
+
} as const;
|
|
232
|
+
|
|
233
|
+
/** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
|
|
234
|
+
export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
235
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
236
|
+
"$ref": "#/$defs/Response",
|
|
237
|
+
"$defs": {
|
|
238
|
+
"Response": {
|
|
239
|
+
"$anchor": "response",
|
|
240
|
+
"title": "Rooms Create — response payload",
|
|
241
|
+
"description": "Success response to rooms/create. Type https://trusttasks.org/spec/rooms/create/0.2#response.",
|
|
242
|
+
"type": "object",
|
|
243
|
+
"additionalProperties": false,
|
|
244
|
+
"required": [
|
|
245
|
+
"roomId",
|
|
246
|
+
"epoch"
|
|
247
|
+
],
|
|
248
|
+
"properties": {
|
|
249
|
+
"roomId": {
|
|
250
|
+
"type": "string"
|
|
251
|
+
},
|
|
252
|
+
"epoch": {
|
|
253
|
+
"type": "integer",
|
|
254
|
+
"minimum": 1,
|
|
255
|
+
"description": "Always 1 for a new room."
|
|
256
|
+
},
|
|
257
|
+
"anchorCadence": {
|
|
258
|
+
"$ref": "#/$defs/AnchorCadence",
|
|
259
|
+
"description": "Echoed so a caller knows what was recorded rather than what was asked — the two differ on a host that predates this member."
|
|
260
|
+
},
|
|
261
|
+
"recordRetention": {
|
|
262
|
+
"$ref": "#/$defs/RecordRetention",
|
|
263
|
+
"description": "The record retention the host recorded, echoed for the same reason `anchorCadence` is: a caller learns what is in force rather than what it asked for. Absent when none was recorded."
|
|
264
|
+
},
|
|
265
|
+
"ext": {
|
|
266
|
+
"$ref": "#/$defs/Ext"
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
},
|
|
270
|
+
"Ext": {
|
|
271
|
+
"title": "Ext",
|
|
272
|
+
"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.",
|
|
273
|
+
"type": "object",
|
|
274
|
+
"minProperties": 1,
|
|
275
|
+
"additionalProperties": true,
|
|
276
|
+
"propertyNames": {
|
|
277
|
+
"pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
|
|
278
|
+
}
|
|
279
|
+
},
|
|
280
|
+
"RecordRetention": {
|
|
281
|
+
"title": "RecordRetention",
|
|
282
|
+
"type": "object",
|
|
283
|
+
"additionalProperties": false,
|
|
284
|
+
"description": "How long a room keeps its records, by age: the room's **record retention**. Records older than it states become **eligible** to be removed by `rooms/records/prune`; nothing is removed until a holder of `admin` asks for a prune, and nothing a prune removes can be brought back.\n\n**Not `retentionPolicy`, and not `retentionDays`.** Both names are taken in this family and mean other things. `retentionPolicy` (`RetentionPolicy`) is whether a room's *key chain* lets a member read epochs from before they joined, fixed at creation because key material either exists for an epoch or it does not. `retentionDays` (`rooms/create`) is how long a host keeps a whole room after it lapses unrenewed. This is a third question — how long the room keeps its *records* while it is live — and unlike the first it is a decision a room revisits, so it is changeable (`rooms/records/retention/set`). A name sharing either's would invite a reader to apply one's rules to the other.\n\n**Age is the host's to measure, so age is `updatedAt`.** On the sealed tiers a host can read nothing of a record but its key, version, status, pinning and when it last changed, so a policy the host applies can only be stated in those terms. That is also why it cannot use a record's own `validUntil`, which is sealed: expiry is a reader's rule, retention a host's. A curation is a change, so it restarts a record's age — a retraction starts a tombstone's.\n\n**Absent, or `{}`, means no record is ever eligible by age**, and that is the reading a host MUST apply whenever it cannot read a policy: removing data under a rule nobody stated is the failure this member exists to prevent. Every member can read the policy in force (`rooms/info`), so a record is never removed under a rule its readers could not have known.",
|
|
285
|
+
"properties": {
|
|
286
|
+
"tombstoneDays": {
|
|
287
|
+
"type": "integer",
|
|
288
|
+
"minimum": 1,
|
|
289
|
+
"maximum": 36500,
|
|
290
|
+
"description": "Days a retracted record's tombstone is kept after its retraction. A tombstone whose `updatedAt` is more than this long ago is eligible. Tombstones exist so that a member syncing incrementally learns of a retraction (`rooms/records/curate`); this is how long a member may stay away and still learn of one that way rather than by rebuilding their copy of the room. Absent means tombstones are never eligible."
|
|
291
|
+
},
|
|
292
|
+
"recordDays": {
|
|
293
|
+
"type": "integer",
|
|
294
|
+
"minimum": 1,
|
|
295
|
+
"maximum": 36500,
|
|
296
|
+
"description": "Days a record is kept after it last changed, whatever its standing. A record — `active`, `deprecated` or `retracted` — whose `updatedAt` is more than this long ago is eligible, **unless it is pinned**: pinning says what matters in the room, and a room that wants a pinned record gone unpins it first. Absent means records are never eligible by age."
|
|
297
|
+
},
|
|
298
|
+
"ext": {
|
|
299
|
+
"$ref": "#/$defs/Ext",
|
|
300
|
+
"description": "Ecosystem-defined extension members per SPEC.md §4.5.1. A host MUST NOT treat a member here as making more records eligible: a removal rule a member's reader cannot understand is one they were never told about."
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
},
|
|
304
|
+
"AnchorCadence": {
|
|
305
|
+
"title": "AnchorCadence",
|
|
306
|
+
"type": "string",
|
|
307
|
+
"enum": [
|
|
308
|
+
"never",
|
|
309
|
+
"renewal",
|
|
310
|
+
"manual"
|
|
311
|
+
],
|
|
312
|
+
"description": "How often this room intends to write an `EpochAnchor`. **A statement of intent, not a schedule anything enforces** — nothing in this family can make an owner anchor.\n\nIt is worth stating anyway, and the reason is the interesting part: it makes **silence legible**. A room that says `renewal` and has not anchored in ten epochs is telling a member something, and a member who did not know what to expect could not have noticed. A room that says `never` is telling them not to wait for one.\n\n - `never` — no anchor is intended. Honest, and cheap: anchoring costs a witnessed update and a rotation of the room DID's update key each time.\n - `renewal` — one anchor per epoch change, which is the cadence §9's lifecycle already moves at.\n - `manual` — the owner anchors when they decide to. A member should draw no freshness expectation from this at all, which is exactly what it is for: it is the honest answer where there is no rule.\n\nDeliberately 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."
|
|
313
|
+
},
|
|
314
|
+
"RetentionPolicy": {
|
|
315
|
+
"title": "RetentionPolicy",
|
|
316
|
+
"type": "string",
|
|
317
|
+
"enum": [
|
|
318
|
+
"chained",
|
|
319
|
+
"fromJoin"
|
|
320
|
+
],
|
|
321
|
+
"description": "Whether a room keeps its history readable across a membership change, fixed at creation and immutable thereafter — like `Visibility`, and for the same reason: the rungs of an epoch key chain either exist for an epoch or they do not, and no later change of mind can seal key material that was never sealed or unseal what was already severed. `chained`: each advance produces an `EpochLink`, so every member reads the room's whole retained history however long they have been in it — what a **library** wants, at the cost of post-compromise security for record content, since a compromised current key then reaches every retained epoch. `fromJoin`: no rungs are produced, so a member reads only from the epoch their group state is at — what a **stream** wants, and what a room under a strict forward-secrecy obligation wants, at the cost that a joining member finds an empty-looking room and nobody can reread a record once their group state has moved past the epoch it was sealed under. Absent means `chained`; see the prose on why the absent case is the readable one.",
|
|
322
|
+
"$comment": "Deliberately no JSON Schema `default`. A declared default is materialised by the generated bindings — the member becomes non-optional with a serde default — so an absent value would reappear as an explicit one on re-serialisation and break round-trip idempotence for every document written before this member existed. The meaning of absence is stated in prose, where a binding cannot act on it."
|
|
323
|
+
},
|
|
324
|
+
"Visibility": {
|
|
325
|
+
"title": "Visibility",
|
|
326
|
+
"type": "string",
|
|
327
|
+
"enum": [
|
|
328
|
+
"open",
|
|
329
|
+
"attributed",
|
|
330
|
+
"private"
|
|
331
|
+
],
|
|
332
|
+
"description": "How much of a room its host can see, fixed at creation and immutable thereafter. `open`: records are cleartext, searchable and fully audited. `attributed`: record content is sealed, and the host still learns which member acted. `private`: content is sealed and membership is presented in zero knowledge, so the host verifies that a member acted without learning which. Immutable because a downgrade cannot un-see cleartext and an upgrade would protect only what came after while presenting as though it protected everything."
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
} as const;
|
|
336
|
+
|
|
337
|
+
/**
|
|
338
|
+
* SPEC.md §7.2 policy for the request variant, from this specification's
|
|
339
|
+
* front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
|
|
340
|
+
* per-specification and cannot be derived from the document alone, and
|
|
341
|
+
* item 2 needs the schema this carries.
|
|
342
|
+
*/
|
|
343
|
+
export const SPEC = {
|
|
344
|
+
typeUri: TYPE_URI,
|
|
345
|
+
isBearer: false,
|
|
346
|
+
isProofRequired: true,
|
|
347
|
+
isRecipientRequired: true,
|
|
348
|
+
isIssuedAtRequired: true,
|
|
349
|
+
payloadSchema: PAYLOAD_SCHEMA,
|
|
350
|
+
} as const;
|
|
351
|
+
|
|
352
|
+
/**
|
|
353
|
+
* SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
|
|
354
|
+
* tracks the *issuer* party's requirement because a response swaps the
|
|
355
|
+
* parties (§7.3 item 5).
|
|
356
|
+
*/
|
|
357
|
+
export const RESPONSE_SPEC = {
|
|
358
|
+
typeUri: RESPONSE_TYPE_URI,
|
|
359
|
+
isBearer: false,
|
|
360
|
+
isProofRequired: true,
|
|
361
|
+
isRecipientRequired: true,
|
|
362
|
+
isIssuedAtRequired: true,
|
|
363
|
+
payloadSchema: RESPONSE_PAYLOAD_SCHEMA,
|
|
364
|
+
} as const;
|