@interop/wallet-core 0.66.0 → 0.67.0

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 (241) hide show
  1. package/README.md +12 -8
  2. package/dist/clientAnnex/credentialAnchoredGenesis.d.ts +5 -4
  3. package/dist/clientAnnex/credentialAnchoredGenesis.d.ts.map +1 -1
  4. package/dist/clientAnnex/credentialAnchoredGenesis.js +32 -50
  5. package/dist/clientAnnex/credentialAnchoredGenesis.js.map +1 -1
  6. package/dist/clientAnnex/establish.d.ts +46 -18
  7. package/dist/clientAnnex/establish.d.ts.map +1 -1
  8. package/dist/clientAnnex/establish.js +112 -65
  9. package/dist/clientAnnex/establish.js.map +1 -1
  10. package/dist/clientAnnex/forget.d.ts.map +1 -1
  11. package/dist/clientAnnex/forget.js +5 -6
  12. package/dist/clientAnnex/forget.js.map +1 -1
  13. package/dist/clientAnnex/forgetLast.d.ts +26 -113
  14. package/dist/clientAnnex/forgetLast.d.ts.map +1 -1
  15. package/dist/clientAnnex/forgetLast.js +26 -150
  16. package/dist/clientAnnex/forgetLast.js.map +1 -1
  17. package/dist/clientAnnex/heal.d.ts +79 -13
  18. package/dist/clientAnnex/heal.d.ts.map +1 -1
  19. package/dist/clientAnnex/heal.js +67 -122
  20. package/dist/clientAnnex/heal.js.map +1 -1
  21. package/dist/clientAnnex/index.d.ts +6 -6
  22. package/dist/clientAnnex/index.d.ts.map +1 -1
  23. package/dist/clientAnnex/index.js +4 -4
  24. package/dist/clientAnnex/index.js.map +1 -1
  25. package/dist/clientAnnex/ladder.d.ts +51 -4
  26. package/dist/clientAnnex/ladder.d.ts.map +1 -1
  27. package/dist/clientAnnex/ladder.js +283 -47
  28. package/dist/clientAnnex/ladder.js.map +1 -1
  29. package/dist/clientAnnex/ladderAnchored.d.ts +37 -3
  30. package/dist/clientAnnex/ladderAnchored.d.ts.map +1 -1
  31. package/dist/clientAnnex/ladderAnchored.js +69 -34
  32. package/dist/clientAnnex/ladderAnchored.js.map +1 -1
  33. package/dist/clientAnnex/log.d.ts +68 -57
  34. package/dist/clientAnnex/log.d.ts.map +1 -1
  35. package/dist/clientAnnex/log.js +96 -126
  36. package/dist/clientAnnex/log.js.map +1 -1
  37. package/dist/clientAnnex/mend.js +44 -20
  38. package/dist/clientAnnex/mend.js.map +1 -1
  39. package/dist/clientAnnex/recoveryLadderAnchored.d.ts +20 -1
  40. package/dist/clientAnnex/recoveryLadderAnchored.d.ts.map +1 -1
  41. package/dist/clientAnnex/recoveryLadderAnchored.js +77 -294
  42. package/dist/clientAnnex/recoveryLadderAnchored.js.map +1 -1
  43. package/dist/clientAnnex/rosterDeliveredEpochs.d.ts +13 -5
  44. package/dist/clientAnnex/rosterDeliveredEpochs.d.ts.map +1 -1
  45. package/dist/clientAnnex/rosterDeliveredEpochs.js +18 -9
  46. package/dist/clientAnnex/rosterDeliveredEpochs.js.map +1 -1
  47. package/dist/clientAnnex/selfEnroll.js +1 -1
  48. package/dist/clientAnnex/selfEnroll.js.map +1 -1
  49. package/dist/clientAnnex/zcap.d.ts +19 -0
  50. package/dist/clientAnnex/zcap.d.ts.map +1 -1
  51. package/dist/clientAnnex/zcap.js +80 -12
  52. package/dist/clientAnnex/zcap.js.map +1 -1
  53. package/dist/clients/index.d.ts +3 -2
  54. package/dist/clients/index.d.ts.map +1 -1
  55. package/dist/clients/index.js +3 -2
  56. package/dist/clients/index.js.map +1 -1
  57. package/dist/clients/listing.d.ts.map +1 -1
  58. package/dist/clients/listing.js +33 -15
  59. package/dist/clients/listing.js.map +1 -1
  60. package/dist/clients/policy.d.ts +18 -0
  61. package/dist/clients/policy.d.ts.map +1 -1
  62. package/dist/clients/policy.js +22 -8
  63. package/dist/clients/policy.js.map +1 -1
  64. package/dist/clients/revocation.d.ts +18 -30
  65. package/dist/clients/revocation.d.ts.map +1 -1
  66. package/dist/clients/revocation.js +12 -27
  67. package/dist/clients/revocation.js.map +1 -1
  68. package/dist/clients/rosterPolicy.d.ts +6 -1
  69. package/dist/clients/rosterPolicy.d.ts.map +1 -1
  70. package/dist/clients/rosterPolicy.js +27 -30
  71. package/dist/clients/rosterPolicy.js.map +1 -1
  72. package/dist/descriptors/errors.d.ts +6 -5
  73. package/dist/descriptors/errors.d.ts.map +1 -1
  74. package/dist/descriptors/errors.js +6 -5
  75. package/dist/descriptors/errors.js.map +1 -1
  76. package/dist/descriptors/index.d.ts +7 -3
  77. package/dist/descriptors/index.d.ts.map +1 -1
  78. package/dist/descriptors/index.js +7 -3
  79. package/dist/descriptors/index.js.map +1 -1
  80. package/dist/descriptors/logSource.d.ts +28 -6
  81. package/dist/descriptors/logSource.d.ts.map +1 -1
  82. package/dist/descriptors/logSource.js +33 -7
  83. package/dist/descriptors/logSource.js.map +1 -1
  84. package/dist/enrollment/enrollment.d.ts.map +1 -1
  85. package/dist/enrollment/enrollment.js +3 -7
  86. package/dist/enrollment/enrollment.js.map +1 -1
  87. package/dist/genesis/accountGenesis.d.ts +8 -10
  88. package/dist/genesis/accountGenesis.d.ts.map +1 -1
  89. package/dist/genesis/accountGenesis.js +39 -41
  90. package/dist/genesis/accountGenesis.js.map +1 -1
  91. package/dist/genesis/kmsAuthentication.d.ts +50 -0
  92. package/dist/genesis/kmsAuthentication.d.ts.map +1 -0
  93. package/dist/genesis/kmsAuthentication.js +49 -0
  94. package/dist/genesis/kmsAuthentication.js.map +1 -0
  95. package/dist/keyring/kdf.d.ts +16 -20
  96. package/dist/keyring/kdf.d.ts.map +1 -1
  97. package/dist/keyring/kdf.js +2 -2
  98. package/dist/keyring/kdf.js.map +1 -1
  99. package/dist/keyring/unlockSpace.d.ts +8 -30
  100. package/dist/keyring/unlockSpace.d.ts.map +1 -1
  101. package/dist/keyring/unlockSpace.js +8 -31
  102. package/dist/keyring/unlockSpace.js.map +1 -1
  103. package/dist/keys/clientKeyRecord.d.ts +2 -1
  104. package/dist/keys/clientKeyRecord.d.ts.map +1 -1
  105. package/dist/keys/clientKeyRecord.js +28 -11
  106. package/dist/keys/clientKeyRecord.js.map +1 -1
  107. package/dist/keys/index.d.ts +6 -2
  108. package/dist/keys/index.d.ts.map +1 -1
  109. package/dist/keys/index.js +5 -1
  110. package/dist/keys/index.js.map +1 -1
  111. package/dist/keys/rosterLogStore.d.ts.map +1 -1
  112. package/dist/keys/rosterLogStore.js +14 -5
  113. package/dist/keys/rosterLogStore.js.map +1 -1
  114. package/dist/keys/spaceEpochs.d.ts +92 -3
  115. package/dist/keys/spaceEpochs.d.ts.map +1 -1
  116. package/dist/keys/spaceEpochs.js +110 -4
  117. package/dist/keys/spaceEpochs.js.map +1 -1
  118. package/dist/keys/userKeyRoster.d.ts +30 -3
  119. package/dist/keys/userKeyRoster.d.ts.map +1 -1
  120. package/dist/keys/userKeyRoster.js +90 -15
  121. package/dist/keys/userKeyRoster.js.map +1 -1
  122. package/dist/keys/userKeyRosterCascade.d.ts.map +1 -1
  123. package/dist/keys/userKeyRosterCascade.js +5 -1
  124. package/dist/keys/userKeyRosterCascade.js.map +1 -1
  125. package/dist/recovery/continuation.d.ts +255 -0
  126. package/dist/recovery/continuation.d.ts.map +1 -0
  127. package/dist/recovery/continuation.js +471 -0
  128. package/dist/recovery/continuation.js.map +1 -0
  129. package/dist/recovery/index.d.ts +12 -8
  130. package/dist/recovery/index.d.ts.map +1 -1
  131. package/dist/recovery/index.js +11 -7
  132. package/dist/recovery/index.js.map +1 -1
  133. package/dist/recovery/recoveryDelegation.d.ts +23 -126
  134. package/dist/recovery/recoveryDelegation.d.ts.map +1 -1
  135. package/dist/recovery/recoveryDelegation.js +1 -266
  136. package/dist/recovery/recoveryDelegation.js.map +1 -1
  137. package/dist/recovery/recoveryWebvh.d.ts +42 -83
  138. package/dist/recovery/recoveryWebvh.d.ts.map +1 -1
  139. package/dist/recovery/recoveryWebvh.js +44 -380
  140. package/dist/recovery/recoveryWebvh.js.map +1 -1
  141. package/dist/request/classify.d.ts +3 -14
  142. package/dist/request/classify.d.ts.map +1 -1
  143. package/dist/request/classify.js +19 -40
  144. package/dist/request/classify.js.map +1 -1
  145. package/dist/request/index.d.ts +1 -0
  146. package/dist/request/index.d.ts.map +1 -1
  147. package/dist/request/index.js +1 -0
  148. package/dist/request/index.js.map +1 -1
  149. package/dist/request/onboarding.d.ts.map +1 -1
  150. package/dist/request/onboarding.js +19 -27
  151. package/dist/request/onboarding.js.map +1 -1
  152. package/dist/request/parse.d.ts +5 -3
  153. package/dist/request/parse.d.ts.map +1 -1
  154. package/dist/request/parse.js +7 -6
  155. package/dist/request/parse.js.map +1 -1
  156. package/dist/request/processRequest.d.ts.map +1 -1
  157. package/dist/request/processRequest.js +2 -1
  158. package/dist/request/processRequest.js.map +1 -1
  159. package/dist/request/queryPredicates.d.ts +98 -0
  160. package/dist/request/queryPredicates.d.ts.map +1 -0
  161. package/dist/request/queryPredicates.js +107 -0
  162. package/dist/request/queryPredicates.js.map +1 -0
  163. package/dist/resourceLog/document.d.ts +39 -0
  164. package/dist/resourceLog/document.d.ts.map +1 -1
  165. package/dist/resourceLog/document.js +41 -0
  166. package/dist/resourceLog/document.js.map +1 -1
  167. package/dist/resourceLog/ladderRungs.d.ts.map +1 -1
  168. package/dist/resourceLog/ladderRungs.js +3 -2
  169. package/dist/resourceLog/ladderRungs.js.map +1 -1
  170. package/dist/sync/contactsConflict.d.ts.map +1 -1
  171. package/dist/sync/contactsConflict.js +8 -2
  172. package/dist/sync/contactsConflict.js.map +1 -1
  173. package/dist/sync/engine.d.ts +38 -23
  174. package/dist/sync/engine.d.ts.map +1 -1
  175. package/dist/sync/engine.js +36 -5
  176. package/dist/sync/engine.js.map +1 -1
  177. package/dist/sync/index.d.ts +9 -12
  178. package/dist/sync/index.d.ts.map +1 -1
  179. package/dist/sync/index.js +8 -11
  180. package/dist/sync/index.js.map +1 -1
  181. package/dist/sync/push.d.ts.map +1 -1
  182. package/dist/sync/push.js +1 -2
  183. package/dist/sync/push.js.map +1 -1
  184. package/dist/sync/remint.d.ts +0 -31
  185. package/dist/sync/remint.d.ts.map +1 -1
  186. package/dist/sync/remint.js +32 -1
  187. package/dist/sync/remint.js.map +1 -1
  188. package/dist/sync/types.d.ts +4 -41
  189. package/dist/sync/types.d.ts.map +1 -1
  190. package/dist/sync/types.js +4 -47
  191. package/dist/sync/types.js.map +1 -1
  192. package/dist/unlock/index.d.ts +1 -1
  193. package/dist/unlock/index.d.ts.map +1 -1
  194. package/dist/unlock/index.js +1 -1
  195. package/dist/unlock/index.js.map +1 -1
  196. package/dist/unlock/retire.d.ts +16 -56
  197. package/dist/unlock/retire.d.ts.map +1 -1
  198. package/dist/unlock/retire.js +7 -76
  199. package/dist/unlock/retire.js.map +1 -1
  200. package/dist/unlock/standingWebvh.d.ts +20 -40
  201. package/dist/unlock/standingWebvh.d.ts.map +1 -1
  202. package/dist/unlock/standingWebvh.js +35 -76
  203. package/dist/unlock/standingWebvh.js.map +1 -1
  204. package/dist/unlock/unlockRecord.d.ts.map +1 -1
  205. package/dist/unlock/unlockRecord.js +69 -44
  206. package/dist/unlock/unlockRecord.js.map +1 -1
  207. package/dist/webvh/accountEntry.d.ts +63 -7
  208. package/dist/webvh/accountEntry.d.ts.map +1 -1
  209. package/dist/webvh/accountEntry.js +110 -19
  210. package/dist/webvh/accountEntry.js.map +1 -1
  211. package/dist/webvh/delegatedLogStore.d.ts +18 -12
  212. package/dist/webvh/delegatedLogStore.d.ts.map +1 -1
  213. package/dist/webvh/delegatedLogStore.js +32 -11
  214. package/dist/webvh/delegatedLogStore.js.map +1 -1
  215. package/dist/webvh/didWebvh.d.ts +39 -23
  216. package/dist/webvh/didWebvh.d.ts.map +1 -1
  217. package/dist/webvh/didWebvh.js +63 -45
  218. package/dist/webvh/didWebvh.js.map +1 -1
  219. package/dist/webvh/enrollClient.d.ts.map +1 -1
  220. package/dist/webvh/enrollClient.js +19 -23
  221. package/dist/webvh/enrollClient.js.map +1 -1
  222. package/dist/webvh/index.d.ts +11 -7
  223. package/dist/webvh/index.d.ts.map +1 -1
  224. package/dist/webvh/index.js +9 -6
  225. package/dist/webvh/index.js.map +1 -1
  226. package/dist/webvh/listClients.d.ts.map +1 -1
  227. package/dist/webvh/listClients.js +102 -65
  228. package/dist/webvh/listClients.js.map +1 -1
  229. package/dist/webvh/mergeMethods.d.ts +84 -0
  230. package/dist/webvh/mergeMethods.d.ts.map +1 -0
  231. package/dist/webvh/mergeMethods.js +46 -0
  232. package/dist/webvh/mergeMethods.js.map +1 -0
  233. package/dist/webvh/revokeClient.d.ts +12 -2
  234. package/dist/webvh/revokeClient.d.ts.map +1 -1
  235. package/dist/webvh/revokeClient.js +126 -48
  236. package/dist/webvh/revokeClient.js.map +1 -1
  237. package/dist/webvh/verifyLog.d.ts +21 -0
  238. package/dist/webvh/verifyLog.d.ts.map +1 -1
  239. package/dist/webvh/verifyLog.js +36 -14
  240. package/dist/webvh/verifyLog.js.map +1 -1
  241. package/package.json +11 -11
package/README.md CHANGED
@@ -27,11 +27,12 @@ The subpaths:
27
27
 
28
28
  - **`@interop/wallet-core/sync`** -- the Wallet Attached Storage (WAS)
29
29
  replication engine core: the `SyncEngine` orchestration (single-flight,
30
- migrate-once, backoff), the `runPull` / `runPush` algorithms, the replica-side
31
- `SyncStore` seam, and the generic `SyncedCollectionSpec` shape. The wire
32
- contract and port (`WasSyncPort`, `WireDoc`, `DocCipher`, ...) are re-exported
33
- from [`@interop/was-client`](https://npm.im/@interop/was-client) so an engine
34
- consumer imports one package.
30
+ migrate-once, memoized provisioning invalidated on demand via
31
+ `invalidateProvisioning`, backoff), the `runPull` / `runPush` algorithms, the
32
+ replica-side `SyncStore` seam, and the generic `SyncedCollectionSpec` shape.
33
+ The wire contract and port (`WasSyncPort`, `WireDoc`, `DocCipher`, ...) are
34
+ re-exported from [`@interop/was-client`](https://npm.im/@interop/was-client)
35
+ so an engine consumer imports one package.
35
36
 
36
37
  - **`@interop/wallet-core/space`** -- the wallet Space layout contract: the
37
38
  shared collection ids and descriptive specs (`private-credentials`,
@@ -109,7 +110,9 @@ The subpaths:
109
110
  the account document no longer keys. Also `ensureWalletSpaceEpochs`, the
110
111
  provision-time install of each encrypted wallet collection's key epoch[0] (a
111
112
  fresh random epoch key wrapped to the user key) -- the EDV-bearing second step
112
- of `provisionWalletSpace`. Also the enrolled-client display labels
113
+ of `provisionWalletSpace`. Also `walletSpaceProvisioner`, which builds the
114
+ sync engine's `ensureProvisioned` closure over both steps, single-flight
115
+ across concurrent callers. Also the enrolled-client display labels
113
116
  (`key-map/client-labels.json`) and their WAS-backed store. Also the client-key
114
117
  record codec: the contents and strict validation of the local record each
115
118
  wallet client keeps its own key material in (storage and wrapping stay
@@ -124,8 +127,9 @@ The subpaths:
124
127
 
125
128
  - **`@interop/wallet-core/descriptors`** -- collection encryption-descriptor
126
129
  acquisition (fetch / cache / offline fallback), the log-governed descriptor
127
- source (every read re-verifies the governing resource log), and the
128
- unknown-epoch refresh policy, including a self-refreshing EDV document cipher.
130
+ source (every read re-verifies the governing resource log, keyed per
131
+ collection by `collectionDescriptorLogPinId`), and the unknown-epoch refresh
132
+ policy, including a self-refreshing EDV document cipher.
129
133
 
130
134
  - **`@interop/wallet-core/keyring`** -- the unlock layer: the unlock derivation,
131
135
  the signed `{ version, encryption, wrapped, proof }` account-pointer record
@@ -41,10 +41,11 @@
41
41
  * installing epoch[0] under it on a collection the earlier run never
42
42
  * reached would key that collection to nothing, permanently, since the
43
43
  * install is create-if-absent and every later ensure adopts it. So the
44
- * stage is skipped whole and reported on `epochsSkipped`; the caller
45
- * that recovers the roster's real key is the one installer. With both
46
- * gates the tear heal is always clean: no roster means no epochs, and a
47
- * fresh user key re-runs both.
44
+ * stage is refused whole by `ensureWalletSpaceEpochs`'s mint gate (the
45
+ * roster descriptor is handed to it) and reported on `epochsSkipped`;
46
+ * the caller that recovers the roster's real key is the one installer.
47
+ * With both gates the tear heal is always clean: no roster means no
48
+ * epochs, and a fresh user key re-runs both.
48
49
  * 6. Space-controller promotion, last -- every earlier stage ran under the
49
50
  * bootstrap did:key the Space's stored controller authorizes.
50
51
  *
@@ -1 +1 @@
1
- {"version":3,"file":"credentialAnchoredGenesis.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/credentialAnchoredGenesis.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAwB,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAIxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EACV,wBAAwB,EACxB,iBAAiB,EACjB,YAAY,EACb,MAAM,sBAAsB,CAAA;AAE7B,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAA;AAC/E,OAAO,EAGL,KAAK,OAAO,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAM7D;;;;;;;;GAQG;AACH,wBAAsB,mCAAmC,IAAI,OAAO,CAAC;IACnE,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;CAC3B,CAAC,CAED;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,wBAAsB,sCAAsC,CAAC,EAC3D,GAAG,EACH,YAAY,EACZ,OAAO,EACP,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,OAAO,EACP,cAAc,EACd,wBAAwB,EACxB,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,iBAAwB,EACxB,OAAO,EACR,EAAE;IACD,GAAG,EAAE,SAAS,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,EAAE,6BAA6B,CAAA;IAC3C,iBAAiB,EAAE,kBAAkB,CAAA;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,YAAY,CAAA;IACrB,cAAc,EAAE,CAAC,OAAO,EAAE;QACxB,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;KACZ,KAAK,yBAAyB,CAAA;IAC/B,wBAAwB,CAAC,EAAE,CAAC,OAAO,EAAE;QACnC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;KAC7B,KAAK,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC,CAAA;IACnD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;IACxC,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9D,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB,GAAG,OAAO,CACT,oBAAoB,GAAG;IAAE,SAAS,EAAE,iBAAiB,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAC5E,CAwJA"}
1
+ {"version":3,"file":"credentialAnchoredGenesis.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/credentialAnchoredGenesis.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAwB,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAIxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EACV,wBAAwB,EACxB,iBAAiB,EACjB,YAAY,EACb,MAAM,sBAAsB,CAAA;AAE7B,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAA;AAC/E,OAAO,EAGL,KAAK,OAAO,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,8BAA8B,CAAA;AAErC,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAM7D;;;;;;;;GAQG;AACH,wBAAsB,mCAAmC,IAAI,OAAO,CAAC;IACnE,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;CAC3B,CAAC,CAED;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,wBAAsB,sCAAsC,CAAC,EAC3D,GAAG,EACH,YAAY,EACZ,OAAO,EACP,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,OAAO,EACP,cAAc,EACd,wBAAwB,EACxB,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,iBAAwB,EACxB,OAAO,EACR,EAAE;IACD,GAAG,EAAE,SAAS,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,EAAE,6BAA6B,CAAA;IAC3C,iBAAiB,EAAE,kBAAkB,CAAA;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,YAAY,CAAA;IACrB,cAAc,EAAE,CAAC,OAAO,EAAE;QACxB,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;KACZ,KAAK,yBAAyB,CAAA;IAC/B,wBAAwB,CAAC,EAAE,CAAC,OAAO,EAAE;QACnC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;KAC7B,KAAK,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC,CAAA;IACnD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;IACxC,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9D,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB,GAAG,OAAO,CACT,oBAAoB,GAAG;IAAE,SAAS,EAAE,iBAAiB,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAC5E,CAsIA"}
@@ -41,10 +41,11 @@
41
41
  * installing epoch[0] under it on a collection the earlier run never
42
42
  * reached would key that collection to nothing, permanently, since the
43
43
  * install is create-if-absent and every later ensure adopts it. So the
44
- * stage is skipped whole and reported on `epochsSkipped`; the caller
45
- * that recovers the roster's real key is the one installer. With both
46
- * gates the tear heal is always clean: no roster means no epochs, and a
47
- * fresh user key re-runs both.
44
+ * stage is refused whole by `ensureWalletSpaceEpochs`'s mint gate (the
45
+ * roster descriptor is handed to it) and reported on `epochsSkipped`;
46
+ * the caller that recovers the roster's real key is the one installer.
47
+ * With both gates the tear heal is always clean: no roster means no
48
+ * epochs, and a fresh user key re-runs both.
48
49
  * 6. Space-controller promotion, last -- every earlier stage ran under the
49
50
  * bootstrap did:key the Space's stored controller authorizes.
50
51
  *
@@ -58,6 +59,7 @@ import { ladderVmAgent } from './zcap.js';
58
59
  import { ensureLadderAnchoredDidWebvh } from './ladderAnchored.js';
59
60
  import { ensureWalletSpaceEpochs, mintUserKey } from '../keys/index.js';
60
61
  import { AccountGenesisSpaceError, ensurePromotedSpaceController, mintSpaceId } from '../genesis/accountGenesis.js';
62
+ import { startKmsAuthentication } from '../genesis/kmsAuthentication.js';
61
63
  import { stageNotifier } from '../log.js';
62
64
  import { CONTROLLER_PROMOTION_STAGE } from './stages.js';
63
65
  /**
@@ -156,24 +158,10 @@ export async function ensureCredentialAnchoredAccountGenesis({ was, wasServerUrl
156
158
  // the ladder-and-credential-only genesis rather than aborting: every later
157
159
  // ceremony anchors in the ladder, and the document simply publishes no
158
160
  // `authentication` relation.
159
- // Started inside the same guard the join uses, so a thunk that throws
160
- // synchronously is collected like one that rejects.
161
- let kmsRun;
162
- // The flag rather than the value decides whether the stage is reported, so
163
- // a thunk rejecting with `undefined` is still a collected failure.
164
- let kmsFailed = false;
165
- let kmsFailure;
166
- try {
167
- kmsRun = provideKmsAuthentication?.({ spaceReady });
168
- }
169
- catch (err) {
170
- kmsFailed = true;
171
- kmsFailure = err;
172
- }
173
- // A Space that never came up returns below while the thunk is still in
174
- // flight, so its rejection is claimed here rather than surfacing as an
175
- // unhandled one.
176
- kmsRun?.catch(() => { });
161
+ const kms = startKmsAuthentication({
162
+ ...(provideKmsAuthentication ? { provideKmsAuthentication } : {}),
163
+ spaceReady
164
+ });
177
165
  try {
178
166
  await spaceReady;
179
167
  }
@@ -183,21 +171,12 @@ export async function ensureCredentialAnchoredAccountGenesis({ was, wasServerUrl
183
171
  stage('space-provisioning');
184
172
  // The join: the genesis entry carries the KMS binding, so it waits on the
185
173
  // whole stage even though the Space no longer does.
186
- let kmsAuthentication;
187
- if (kmsRun) {
188
- try {
189
- kmsAuthentication = await kmsRun;
190
- }
191
- catch (err) {
192
- kmsFailed = true;
193
- kmsFailure = err;
194
- }
195
- }
196
- if (kmsFailed) {
197
- failed.push({ stage: 'kmsAuthentication', error: kmsFailure });
174
+ const kmsAuthentication = await kms.join();
175
+ if (kmsAuthentication.failed) {
176
+ failed.push({ stage: 'kmsAuthentication', error: kmsAuthentication.error });
198
177
  }
199
178
  stage('kms-authentication');
200
- const didWebKeys = kmsAuthentication?.keys;
179
+ const didWebKeys = kmsAuthentication.binding?.keys;
201
180
  // 3. The ladder-anchored did:webvh genesis -- probe, adopt
202
181
  // (ladder-attributed), or create-and-publish. Fatal on failure, like the
203
182
  // enrolled-client stage.
@@ -206,8 +185,8 @@ export async function ensureCredentialAnchoredAccountGenesis({ was, wasServerUrl
206
185
  wasServerUrl,
207
186
  spaceId,
208
187
  ...(didWebKeys ? { didWebKeys } : {}),
209
- ...(kmsAuthentication?.etag !== undefined && {
210
- keysJsonEtag: kmsAuthentication.etag
188
+ ...(kmsAuthentication.binding?.etag !== undefined && {
189
+ keysJsonEtag: kmsAuthentication.binding.etag
211
190
  }),
212
191
  ladderSeed,
213
192
  keyAgreement,
@@ -237,25 +216,28 @@ export async function ensureCredentialAnchoredAccountGenesis({ was, wasServerUrl
237
216
  }
238
217
  stage('roster-genesis');
239
218
  // 5. Epoch[0] on every encrypted roster collection, only behind a landed
240
- // roster whose current epoch IS this run's user key (see the module doc:
241
- // the user key is memory-only here, and an adopted roster keyed to another
242
- // run's key would have the collections installed under a throwaway).
219
+ // roster and through the fan-out's mint gate: the user key is memory-only
220
+ // here, and an adopted roster keyed to another run's key would otherwise
221
+ // have the collections installed under a throwaway (see the module doc).
243
222
  let epochs;
244
223
  let epochsSkipped;
245
224
  if (rosterDescriptor) {
246
- if (rosterDescriptor.currentEpoch === userKey.id) {
247
- try {
248
- epochs = await ensureWalletSpaceEpochs({ was, spaceId, userKey });
225
+ try {
226
+ const fanOut = await ensureWalletSpaceEpochs({
227
+ was,
228
+ spaceId,
229
+ userKey,
230
+ rosterDescriptor
231
+ });
232
+ if (fanOut.skipped) {
233
+ epochsSkipped = fanOut.skipped;
249
234
  }
250
- catch (err) {
251
- failed.push({ stage: 'epochs', error: err });
235
+ else {
236
+ epochs = fanOut;
252
237
  }
253
238
  }
254
- else {
255
- epochsSkipped =
256
- rosterDescriptor.currentEpoch !== undefined
257
- ? { rosterEpochId: rosterDescriptor.currentEpoch }
258
- : {};
239
+ catch (err) {
240
+ failed.push({ stage: 'epochs', error: err });
259
241
  }
260
242
  }
261
243
  stage('collection-epochs');
@@ -1 +1 @@
1
- {"version":3,"file":"credentialAnchoredGenesis.js","sourceRoot":"","sources":["../../src/clientAnnex/credentialAnchoredGenesis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credentialAnchoredGenesis.js","sourceRoot":"","sources":["../../src/clientAnnex/credentialAnchoredGenesis.ts"],"names":[],"mappings":"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"}
@@ -51,17 +51,21 @@
51
51
  * identity, the ladder-VM-signed generation delegation embedded while
52
52
  * the auxiliary Space still answers to the bootstrap did:key, the
53
53
  * Space's controller flipped to the account DID, and the pointer entry
54
- * appended -- signed by ladder attribution of the currently revealed
55
- * rung, under the caller's chain-head pin. Within THIS ceremony the
54
+ * appended -- moved as the ladder (`movePointerAsLadder`): each attempt
55
+ * attributes the ladder's current rung, reveals it when only its hash
56
+ * stands committed, and signs with it, under the caller's chain-head
57
+ * pin, so a sibling self-enrollment that spends the rung mid-run is
58
+ * climbed past rather than refused. Within THIS ceremony the
56
59
  * sibling arm never fires: the sibling is only written by stage 4,
57
60
  * strictly after the pointer entry, so a stage-3 tear leaves no
58
61
  * sibling; the arm serves callers holding a standing invocation
59
62
  * authority (the add/change-method fold), and the establishment's own
60
63
  * bootstrap authority falls back to a fresh mint when a sibling-named
61
64
  * Space refuses it.
62
- * The revealed-rung attribution runs before this block and strictly
63
- * before the re-bind: an account whose document no longer anchors this
64
- * ladder refuses while the record is still in its pre-re-bind shape.
65
+ * The primitive's pre-mint rung attribution runs before anything is
66
+ * minted and strictly before the re-bind: an account whose document no
67
+ * longer anchors this ladder refuses while the record is still in its
68
+ * pre-re-bind shape.
65
69
  * 4. The re-bind, through the same `bindRecord` hook: the full pointer (DID
66
70
  * in), the ladder-VM-signed bridge and annex-Space sibling, and the
67
71
  * management delegation to the account DID -- durably written BEFORE
@@ -98,11 +102,12 @@ import type { ClientWebvhUpdateKeys, KmsAuthenticationBinding, PublishedWebvhLog
98
102
  import type { ICapabilityAgent } from '../webvh/zcap.js';
99
103
  import type { AccountPointer } from '../keyring/record.js';
100
104
  import { type UserKey } from '../keys/index.js';
105
+ import { type LadderRung } from './ladder.js';
101
106
  import { type StageNotifier } from '../log.js';
102
107
  /**
103
108
  * The standing members an unlock-methods registry entry records for the
104
109
  * established credential: its roster kid and key-agreement multibase, the
105
- * bind-time revealed rung, the standing client's did:key, the bridge and
110
+ * ladder's standing rung, the standing client's did:key, the bridge and
106
111
  * sibling delegations' signer key ids and expiries, and the unlock
107
112
  * key-agreement members the re-bind reported. The member names are the ones
108
113
  * the registry already records; nothing here mints a new field.
@@ -188,9 +193,15 @@ export type CredentialAnchoredBindRecordHook = (options: {
188
193
  * delegation while the Space still answers to its creation controller, flip
189
194
  * the Space's controller to the account DID, then append the pointer entry
190
195
  * -- strictly last in the block, so pointer-present implies every prior
191
- * sub-step landed. The pointer entry signs by ladder attribution of the
192
- * currently revealed rung, and every log touch rides the caller's chain-head
193
- * pin store.
196
+ * sub-step landed. The pointer entry signs on the arm the caller states: an
197
+ * enrolled client's own update keys, or the ladder (attributed, revealed,
198
+ * and signed per attempt); every log touch rides the caller's chain-head pin
199
+ * store. On the ladder arm the rung is attributed BEFORE anything is minted,
200
+ * the pre-flight every pointer-moving arm runs: a ladder the log carries no
201
+ * rung of, and an ambiguous attribution, throw the ladder's own
202
+ * `LadderAttributionError` with no Space or generation minted, so a torn
203
+ * establishment never orphans an annex Space on an account that no longer
204
+ * anchors this ladder.
194
205
  *
195
206
  * Two invocation authorities, heal's pattern. A caller holding a standing
196
207
  * invocation authority (`invocation`: an enrolled client's storage handle
@@ -226,9 +237,18 @@ export type CredentialAnchoredBindRecordHook = (options: {
226
237
  * `({ clientAnnexDid }) => Promise<IZcap>` -- the generation-delegation
227
238
  * minter (ladder-VM-signed on a ladder-anchored account)
228
239
  * @param options.idStore {WebvhIdStore} the ACCOUNT log's store
229
- * @param [options.updateKeys] {ClientWebvhUpdateKeys} the pointer entry's
230
- * signing pair; absent, it is recovered by ladder attribution of the
231
- * supplied log's current parameters
240
+ * @param options.signer {object} who signs the pointer entry:
241
+ * `{ kind: 'client', updateKeys }`, an enrolled client's own update keys
242
+ * (freewallet's remembered-login fold), or `{ kind: 'ladder' }`, under
243
+ * which the entry is moved as the ladder with the supplied `ladderSeed`
244
+ * (`movePointerAsLadder`): every attempt of its conflict retry attributes
245
+ * the ladder's current rung from the head it reads, reveals it when only
246
+ * its hash stands committed, and signs with it -- so a racing ceremony that
247
+ * spends the rung is climbed past. A pair fixed by the caller could not be,
248
+ * since the client arm's not-authorized refusal is not a conflict the retry
249
+ * re-runs on. Stated explicitly rather than read off `updateKeys`'
250
+ * absence, since the ladder arm reveals a rung into the world-readable
251
+ * `updateKeys` and an omission must not select it silently
232
252
  * @param [options.delegatedClients] {IZcap} the record's sibling
233
253
  * delegation, for the Space resolution's settled order
234
254
  * @param [options.invocation] {object} a standing invocation authority for
@@ -248,12 +268,14 @@ export type CredentialAnchoredBindRecordHook = (options: {
248
268
  * compare-and-swap falls through to a fresh pinned read
249
269
  * @param [options.now] {number} epoch milliseconds, for tests
250
270
  * @returns {Promise<object>} the pointed (or freshly minted) annex DID,
251
- * the generation delegation when one was installed here, what ran, and --
252
- * on `accountLog` -- the account head this block leaves standing: the
271
+ * the generation delegation when one was installed here, what ran, on
272
+ * `accountLog` the account head this block leaves standing (the
253
273
  * post-pointer-entry one when it wrote, the supplied `published` verbatim
254
- * when the document already pointed at a generation
274
+ * when the document already pointed at a generation), and on the ladder
275
+ * arm `rung`: the rung the pointer entry was signed with when this call
276
+ * wrote one, else the ladder's currently attributed rung
255
277
  */
256
- export declare function ensurePointedClientAnnexGeneration({ account, wasServerUrl, accountSpaceId, ladderSeed, was, mintController, mintGenerationDelegation, idStore, updateKeys, delegatedClients, invocation, logOnly, pinStore, published, now }: {
278
+ export declare function ensurePointedClientAnnexGeneration({ account, wasServerUrl, accountSpaceId, ladderSeed, was, mintController, mintGenerationDelegation, idStore, signer, delegatedClients, invocation, logOnly, pinStore, published, now }: {
257
279
  account: Pick<PublishedWebvhLog, 'did' | 'doc' | 'log'>;
258
280
  wasServerUrl: string;
259
281
  accountSpaceId: string;
@@ -264,7 +286,12 @@ export declare function ensurePointedClientAnnexGeneration({ account, wasServerU
264
286
  clientAnnexDid: string;
265
287
  }) => Promise<IZcap>;
266
288
  idStore: WebvhIdStore;
267
- updateKeys?: ClientWebvhUpdateKeys;
289
+ signer: {
290
+ kind: 'client';
291
+ updateKeys: ClientWebvhUpdateKeys;
292
+ } | {
293
+ kind: 'ladder';
294
+ };
268
295
  delegatedClients?: IZcap;
269
296
  invocation?: {
270
297
  was: WasClient;
@@ -280,6 +307,7 @@ export declare function ensurePointedClientAnnexGeneration({ account, wasServerU
280
307
  generationMinted: boolean;
281
308
  spaceMinted: boolean;
282
309
  accountLog?: PublishedWebvhLog;
310
+ rung?: LadderRung;
283
311
  }>;
284
312
  /**
285
313
  * Runs the whole credential-anchored establishment for one unlock credential
@@ -459,7 +487,7 @@ export declare function rebindCredentialAnchoredRecord({ accountDid, pointer, la
459
487
  * @param options {object}
460
488
  * @param options.standing {object} the credential's standing client:
461
489
  * `clientDid`, `keyAgreementKeyMultibase`, `recipientKid`
462
- * @param options.updateKeyMultibase {string} the attributed revealed rung
490
+ * @param options.updateKeyMultibase {string} the ladder's attributed rung
463
491
  * @param [options.bridge] {IZcap} the record's bridge delegation
464
492
  * @param [options.sibling] {IZcap} the record's `delegatedClients` sibling
465
493
  * @param [options.unlock] {object} the unlock key-agreement members, from
@@ -1 +1 @@
1
- {"version":3,"file":"establish.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/establish.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"establish.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/establish.ts"],"names":[],"mappings":"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"}