@interop/wallet-core 0.65.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.
- package/README.md +12 -8
- package/dist/clientAnnex/credentialAnchoredGenesis.d.ts +5 -4
- package/dist/clientAnnex/credentialAnchoredGenesis.d.ts.map +1 -1
- package/dist/clientAnnex/credentialAnchoredGenesis.js +32 -50
- package/dist/clientAnnex/credentialAnchoredGenesis.js.map +1 -1
- package/dist/clientAnnex/establish.d.ts +112 -21
- package/dist/clientAnnex/establish.d.ts.map +1 -1
- package/dist/clientAnnex/establish.js +248 -180
- package/dist/clientAnnex/establish.js.map +1 -1
- package/dist/clientAnnex/forget.d.ts +2 -6
- package/dist/clientAnnex/forget.d.ts.map +1 -1
- package/dist/clientAnnex/forget.js +31 -61
- package/dist/clientAnnex/forget.js.map +1 -1
- package/dist/clientAnnex/forgetLast.d.ts +48 -132
- package/dist/clientAnnex/forgetLast.d.ts.map +1 -1
- package/dist/clientAnnex/forgetLast.js +88 -221
- package/dist/clientAnnex/forgetLast.js.map +1 -1
- package/dist/clientAnnex/gc.d.ts.map +1 -1
- package/dist/clientAnnex/gc.js +9 -0
- package/dist/clientAnnex/gc.js.map +1 -1
- package/dist/clientAnnex/heal.d.ts +97 -13
- package/dist/clientAnnex/heal.d.ts.map +1 -1
- package/dist/clientAnnex/heal.js +108 -174
- package/dist/clientAnnex/heal.js.map +1 -1
- package/dist/clientAnnex/index.d.ts +8 -8
- package/dist/clientAnnex/index.d.ts.map +1 -1
- package/dist/clientAnnex/index.js +6 -6
- package/dist/clientAnnex/index.js.map +1 -1
- package/dist/clientAnnex/ladder.d.ts +51 -4
- package/dist/clientAnnex/ladder.d.ts.map +1 -1
- package/dist/clientAnnex/ladder.js +310 -55
- package/dist/clientAnnex/ladder.js.map +1 -1
- package/dist/clientAnnex/ladderAnchored.d.ts +37 -3
- package/dist/clientAnnex/ladderAnchored.d.ts.map +1 -1
- package/dist/clientAnnex/ladderAnchored.js +69 -34
- package/dist/clientAnnex/ladderAnchored.js.map +1 -1
- package/dist/clientAnnex/log.d.ts +148 -72
- package/dist/clientAnnex/log.d.ts.map +1 -1
- package/dist/clientAnnex/log.js +211 -137
- package/dist/clientAnnex/log.js.map +1 -1
- package/dist/clientAnnex/mend.d.ts.map +1 -1
- package/dist/clientAnnex/mend.js +63 -81
- package/dist/clientAnnex/mend.js.map +1 -1
- package/dist/clientAnnex/recoveryLadderAnchored.d.ts +20 -1
- package/dist/clientAnnex/recoveryLadderAnchored.d.ts.map +1 -1
- package/dist/clientAnnex/recoveryLadderAnchored.js +77 -294
- package/dist/clientAnnex/recoveryLadderAnchored.js.map +1 -1
- package/dist/clientAnnex/rosterDeliveredEpochs.d.ts +13 -5
- package/dist/clientAnnex/rosterDeliveredEpochs.d.ts.map +1 -1
- package/dist/clientAnnex/rosterDeliveredEpochs.js +18 -9
- package/dist/clientAnnex/rosterDeliveredEpochs.js.map +1 -1
- package/dist/clientAnnex/selfEnroll.js +1 -1
- package/dist/clientAnnex/selfEnroll.js.map +1 -1
- package/dist/clientAnnex/zcap.d.ts +19 -0
- package/dist/clientAnnex/zcap.d.ts.map +1 -1
- package/dist/clientAnnex/zcap.js +80 -12
- package/dist/clientAnnex/zcap.js.map +1 -1
- package/dist/clients/index.d.ts +3 -2
- package/dist/clients/index.d.ts.map +1 -1
- package/dist/clients/index.js +3 -2
- package/dist/clients/index.js.map +1 -1
- package/dist/clients/listing.d.ts.map +1 -1
- package/dist/clients/listing.js +33 -15
- package/dist/clients/listing.js.map +1 -1
- package/dist/clients/policy.d.ts +18 -0
- package/dist/clients/policy.d.ts.map +1 -1
- package/dist/clients/policy.js +22 -8
- package/dist/clients/policy.js.map +1 -1
- package/dist/clients/revocation.d.ts +18 -30
- package/dist/clients/revocation.d.ts.map +1 -1
- package/dist/clients/revocation.js +12 -27
- package/dist/clients/revocation.js.map +1 -1
- package/dist/clients/rosterPolicy.d.ts +6 -1
- package/dist/clients/rosterPolicy.d.ts.map +1 -1
- package/dist/clients/rosterPolicy.js +27 -30
- package/dist/clients/rosterPolicy.js.map +1 -1
- package/dist/descriptors/errors.d.ts +6 -5
- package/dist/descriptors/errors.d.ts.map +1 -1
- package/dist/descriptors/errors.js +6 -5
- package/dist/descriptors/errors.js.map +1 -1
- package/dist/descriptors/index.d.ts +7 -3
- package/dist/descriptors/index.d.ts.map +1 -1
- package/dist/descriptors/index.js +7 -3
- package/dist/descriptors/index.js.map +1 -1
- package/dist/descriptors/logSource.d.ts +28 -6
- package/dist/descriptors/logSource.d.ts.map +1 -1
- package/dist/descriptors/logSource.js +33 -7
- package/dist/descriptors/logSource.js.map +1 -1
- package/dist/enrollment/enrollment.d.ts.map +1 -1
- package/dist/enrollment/enrollment.js +3 -7
- package/dist/enrollment/enrollment.js.map +1 -1
- package/dist/genesis/accountGenesis.d.ts +8 -10
- package/dist/genesis/accountGenesis.d.ts.map +1 -1
- package/dist/genesis/accountGenesis.js +39 -41
- package/dist/genesis/accountGenesis.js.map +1 -1
- package/dist/genesis/kmsAuthentication.d.ts +50 -0
- package/dist/genesis/kmsAuthentication.d.ts.map +1 -0
- package/dist/genesis/kmsAuthentication.js +49 -0
- package/dist/genesis/kmsAuthentication.js.map +1 -0
- package/dist/keyring/kdf.d.ts +16 -20
- package/dist/keyring/kdf.d.ts.map +1 -1
- package/dist/keyring/kdf.js +2 -2
- package/dist/keyring/kdf.js.map +1 -1
- package/dist/keyring/unlockSpace.d.ts +8 -30
- package/dist/keyring/unlockSpace.d.ts.map +1 -1
- package/dist/keyring/unlockSpace.js +8 -31
- package/dist/keyring/unlockSpace.js.map +1 -1
- package/dist/keys/clientKeyRecord.d.ts +2 -1
- package/dist/keys/clientKeyRecord.d.ts.map +1 -1
- package/dist/keys/clientKeyRecord.js +28 -11
- package/dist/keys/clientKeyRecord.js.map +1 -1
- package/dist/keys/index.d.ts +19 -5
- package/dist/keys/index.d.ts.map +1 -1
- package/dist/keys/index.js +17 -3
- package/dist/keys/index.js.map +1 -1
- package/dist/keys/rosterLogStore.d.ts +3 -1
- package/dist/keys/rosterLogStore.d.ts.map +1 -1
- package/dist/keys/rosterLogStore.js +20 -8
- package/dist/keys/rosterLogStore.js.map +1 -1
- package/dist/keys/spaceEpochs.d.ts +92 -3
- package/dist/keys/spaceEpochs.d.ts.map +1 -1
- package/dist/keys/spaceEpochs.js +110 -4
- package/dist/keys/spaceEpochs.js.map +1 -1
- package/dist/keys/userKeyCascade.d.ts +8 -5
- package/dist/keys/userKeyCascade.d.ts.map +1 -1
- package/dist/keys/userKeyCascade.js +7 -6
- package/dist/keys/userKeyCascade.js.map +1 -1
- package/dist/keys/userKeyRoster.d.ts +68 -4
- package/dist/keys/userKeyRoster.d.ts.map +1 -1
- package/dist/keys/userKeyRoster.js +146 -33
- package/dist/keys/userKeyRoster.js.map +1 -1
- package/dist/keys/userKeyRosterCascade.d.ts +110 -10
- package/dist/keys/userKeyRosterCascade.d.ts.map +1 -1
- package/dist/keys/userKeyRosterCascade.js +184 -40
- package/dist/keys/userKeyRosterCascade.js.map +1 -1
- package/dist/recovery/continuation.d.ts +255 -0
- package/dist/recovery/continuation.d.ts.map +1 -0
- package/dist/recovery/continuation.js +471 -0
- package/dist/recovery/continuation.js.map +1 -0
- package/dist/recovery/index.d.ts +12 -8
- package/dist/recovery/index.d.ts.map +1 -1
- package/dist/recovery/index.js +11 -7
- package/dist/recovery/index.js.map +1 -1
- package/dist/recovery/recoveryDelegation.d.ts +40 -120
- package/dist/recovery/recoveryDelegation.d.ts.map +1 -1
- package/dist/recovery/recoveryDelegation.js +36 -268
- package/dist/recovery/recoveryDelegation.js.map +1 -1
- package/dist/recovery/recoveryWebvh.d.ts +42 -83
- package/dist/recovery/recoveryWebvh.d.ts.map +1 -1
- package/dist/recovery/recoveryWebvh.js +44 -380
- package/dist/recovery/recoveryWebvh.js.map +1 -1
- package/dist/request/appKey.d.ts +35 -1
- package/dist/request/appKey.d.ts.map +1 -1
- package/dist/request/appKey.js +29 -10
- package/dist/request/appKey.js.map +1 -1
- package/dist/request/classify.d.ts +3 -14
- package/dist/request/classify.d.ts.map +1 -1
- package/dist/request/classify.js +19 -40
- package/dist/request/classify.js.map +1 -1
- package/dist/request/index.d.ts +1 -0
- package/dist/request/index.d.ts.map +1 -1
- package/dist/request/index.js +1 -0
- package/dist/request/index.js.map +1 -1
- package/dist/request/onboarding.d.ts.map +1 -1
- package/dist/request/onboarding.js +19 -27
- package/dist/request/onboarding.js.map +1 -1
- package/dist/request/parse.d.ts +5 -3
- package/dist/request/parse.d.ts.map +1 -1
- package/dist/request/parse.js +7 -6
- package/dist/request/parse.js.map +1 -1
- package/dist/request/processRequest.d.ts.map +1 -1
- package/dist/request/processRequest.js +2 -1
- package/dist/request/processRequest.js.map +1 -1
- package/dist/request/queryPredicates.d.ts +98 -0
- package/dist/request/queryPredicates.d.ts.map +1 -0
- package/dist/request/queryPredicates.js +107 -0
- package/dist/request/queryPredicates.js.map +1 -0
- package/dist/resourceLog/document.d.ts +39 -0
- package/dist/resourceLog/document.d.ts.map +1 -1
- package/dist/resourceLog/document.js +41 -0
- package/dist/resourceLog/document.js.map +1 -1
- package/dist/resourceLog/ladderRungs.d.ts.map +1 -1
- package/dist/resourceLog/ladderRungs.js +3 -2
- package/dist/resourceLog/ladderRungs.js.map +1 -1
- package/dist/sync/contactsConflict.d.ts.map +1 -1
- package/dist/sync/contactsConflict.js +8 -2
- package/dist/sync/contactsConflict.js.map +1 -1
- package/dist/sync/engine.d.ts +38 -23
- package/dist/sync/engine.d.ts.map +1 -1
- package/dist/sync/engine.js +36 -5
- package/dist/sync/engine.js.map +1 -1
- package/dist/sync/index.d.ts +9 -12
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +8 -11
- package/dist/sync/index.js.map +1 -1
- package/dist/sync/push.d.ts.map +1 -1
- package/dist/sync/push.js +1 -2
- package/dist/sync/push.js.map +1 -1
- package/dist/sync/remint.d.ts +0 -31
- package/dist/sync/remint.d.ts.map +1 -1
- package/dist/sync/remint.js +32 -1
- package/dist/sync/remint.js.map +1 -1
- package/dist/sync/types.d.ts +4 -41
- package/dist/sync/types.d.ts.map +1 -1
- package/dist/sync/types.js +4 -47
- package/dist/sync/types.js.map +1 -1
- package/dist/unlock/index.d.ts +1 -1
- package/dist/unlock/index.d.ts.map +1 -1
- package/dist/unlock/index.js +1 -1
- package/dist/unlock/index.js.map +1 -1
- package/dist/unlock/retire.d.ts +16 -56
- package/dist/unlock/retire.d.ts.map +1 -1
- package/dist/unlock/retire.js +7 -76
- package/dist/unlock/retire.js.map +1 -1
- package/dist/unlock/standingWebvh.d.ts +20 -40
- package/dist/unlock/standingWebvh.d.ts.map +1 -1
- package/dist/unlock/standingWebvh.js +35 -76
- package/dist/unlock/standingWebvh.js.map +1 -1
- package/dist/unlock/unlockRecord.d.ts.map +1 -1
- package/dist/unlock/unlockRecord.js +69 -44
- package/dist/unlock/unlockRecord.js.map +1 -1
- package/dist/webvh/accountEntry.d.ts +63 -7
- package/dist/webvh/accountEntry.d.ts.map +1 -1
- package/dist/webvh/accountEntry.js +110 -19
- package/dist/webvh/accountEntry.js.map +1 -1
- package/dist/webvh/delegatedLogStore.d.ts +18 -12
- package/dist/webvh/delegatedLogStore.d.ts.map +1 -1
- package/dist/webvh/delegatedLogStore.js +32 -11
- package/dist/webvh/delegatedLogStore.js.map +1 -1
- package/dist/webvh/didWebvh.d.ts +39 -23
- package/dist/webvh/didWebvh.d.ts.map +1 -1
- package/dist/webvh/didWebvh.js +63 -45
- package/dist/webvh/didWebvh.js.map +1 -1
- package/dist/webvh/enrollClient.d.ts.map +1 -1
- package/dist/webvh/enrollClient.js +19 -23
- package/dist/webvh/enrollClient.js.map +1 -1
- package/dist/webvh/index.d.ts +11 -7
- package/dist/webvh/index.d.ts.map +1 -1
- package/dist/webvh/index.js +9 -6
- package/dist/webvh/index.js.map +1 -1
- package/dist/webvh/listClients.d.ts.map +1 -1
- package/dist/webvh/listClients.js +102 -65
- package/dist/webvh/listClients.js.map +1 -1
- package/dist/webvh/mergeMethods.d.ts +84 -0
- package/dist/webvh/mergeMethods.d.ts.map +1 -0
- package/dist/webvh/mergeMethods.js +46 -0
- package/dist/webvh/mergeMethods.js.map +1 -0
- package/dist/webvh/revokeClient.d.ts +12 -2
- package/dist/webvh/revokeClient.d.ts.map +1 -1
- package/dist/webvh/revokeClient.js +126 -48
- package/dist/webvh/revokeClient.js.map +1 -1
- package/dist/webvh/verifyLog.d.ts +21 -0
- package/dist/webvh/verifyLog.d.ts.map +1 -1
- package/dist/webvh/verifyLog.js +36 -14
- package/dist/webvh/verifyLog.js.map +1 -1
- package/package.json +11 -11
|
@@ -80,8 +80,22 @@ import type { IZcap } from '@interop/data-integrity-core';
|
|
|
80
80
|
import type { ZcapClient } from '@interop/ezcap';
|
|
81
81
|
import { WasClient } from '@interop/was-client';
|
|
82
82
|
import type { ResourceLogPinStore } from '@interop/vh-resource-log';
|
|
83
|
-
import type {
|
|
83
|
+
import type { PublishedWebvhLog, WebvhIdStore } from '../webvh/didWebvh.js';
|
|
84
84
|
import type { ICapabilityAgent } from '../webvh/zcap.js';
|
|
85
|
+
import { attributeLadderRung } from './ladder.js';
|
|
86
|
+
import type { PointerEntryOutcome } from './log.js';
|
|
87
|
+
/**
|
|
88
|
+
* The HTTP status a raw signed request's rejection carries, when it carries
|
|
89
|
+
* one. `WasClient.request` applies no error mapping, so the status is all a
|
|
90
|
+
* caller has to dispatch on, and different transports hang it in different
|
|
91
|
+
* places (`status`, or `response.status`). Exported as the one reader of
|
|
92
|
+
* those two places, shared with the establishment's authorization-refusal
|
|
93
|
+
* check.
|
|
94
|
+
*
|
|
95
|
+
* @param err {unknown}
|
|
96
|
+
* @returns {number | undefined}
|
|
97
|
+
*/
|
|
98
|
+
export declare function rawRequestStatus(err: unknown): number | undefined;
|
|
85
99
|
/**
|
|
86
100
|
* Why the visit cannot mend the annex.
|
|
87
101
|
*
|
|
@@ -289,23 +303,93 @@ export declare function resolveClientAnnexSpaceId({ doc, delegatedClients }: {
|
|
|
289
303
|
annexSpaceId?: string;
|
|
290
304
|
};
|
|
291
305
|
/**
|
|
292
|
-
* The pre-flight rung attribution
|
|
293
|
-
*
|
|
294
|
-
*
|
|
295
|
-
*
|
|
296
|
-
*
|
|
297
|
-
*
|
|
298
|
-
* {@link ClientAnnexGenerationUnavailableError} before
|
|
299
|
-
*
|
|
300
|
-
*
|
|
306
|
+
* The pre-flight rung attribution every pointer-moving arm runs before
|
|
307
|
+
* minting anything: this ladder has a rung the pointer entry will be able to
|
|
308
|
+
* sign with, either standing in `updateKeys` already (`revealed`) or
|
|
309
|
+
* committed in `nextKeyHashes` and revealable by {@link movePointerAsLadder}
|
|
310
|
+
* (`committed`). A ladder the log carries no rung of at all, and an
|
|
311
|
+
* ambiguous attribution, refuse with
|
|
312
|
+
* {@link ClientAnnexGenerationUnavailableError} before a generation or a
|
|
313
|
+
* Space is minted -- the one place the ladder's `LadderAttributionError`
|
|
314
|
+
* maps onto that refusal.
|
|
301
315
|
*
|
|
302
316
|
* @param options {object}
|
|
303
317
|
* @param options.ladderSeed {Uint8Array}
|
|
304
318
|
* @param options.log {DIDLog} the VERIFIED account log
|
|
305
|
-
* @returns {Promise<
|
|
319
|
+
* @returns {Promise<{ rung: LadderRung, state: LadderRungState }>}
|
|
306
320
|
*/
|
|
307
|
-
export declare function
|
|
321
|
+
export declare function attributePointerEntryRung({ ladderSeed, log }: {
|
|
308
322
|
ladderSeed: Uint8Array;
|
|
309
323
|
log: PublishedWebvhLog['log'];
|
|
310
|
-
}): Promise<
|
|
324
|
+
}): Promise<Awaited<ReturnType<typeof attributeLadderRung>>>;
|
|
325
|
+
/**
|
|
326
|
+
* The `#DelegatedClients` pointer move as a credential-only caller makes it:
|
|
327
|
+
* ONE ladder-signed pointer entry ({@link setDelegatedClientsPointer} on the
|
|
328
|
+
* ladder arm). Each attempt attributes the ladder's current rung from the
|
|
329
|
+
* head it builds on, the rung reveals itself in the entry it signs, and when
|
|
330
|
+
* it stood only committed the entry commits the next rung's hash beside it.
|
|
331
|
+
* The one shape every ladder-held pointer move runs: the transient readiness
|
|
332
|
+
* pass's fresh-generation arm, and the establishment's stage 3 (whose first
|
|
333
|
+
* attempt builds on the head it minted or read, threaded in as `published`).
|
|
334
|
+
*
|
|
335
|
+
* A self-enrollment's add entry spends the revealed rung, so on any account
|
|
336
|
+
* that has ever self-enrolled the rung is merely committed and the reveal is
|
|
337
|
+
* what makes the pointer entry signable at all.
|
|
338
|
+
*
|
|
339
|
+
* ACCEPTED CONSEQUENCE (design FW-356, finding R3): the entry retires
|
|
340
|
+
* nothing, so the acting rung stands in the account log's `updateKeys`
|
|
341
|
+
* afterwards. The price of a pointer move is therefore a standing account
|
|
342
|
+
* update key in the credential's hand -- direct document-edit authority
|
|
343
|
+
* through the bridge with no further reveal -- retired at that credential's
|
|
344
|
+
* next self-enrollment (whose add entry drops the attributed rung) or at its
|
|
345
|
+
* retirement. This is documented rather than prevented.
|
|
346
|
+
*
|
|
347
|
+
* Attribution runs inside the conflict retry, so a racing ceremony that
|
|
348
|
+
* consumes the rung between the read and the PUT climbs to the winner's
|
|
349
|
+
* committed rung instead of refusing `update-key-not-attributable` on a rung
|
|
350
|
+
* that is no longer current. A caller that signed the pointer entry with a
|
|
351
|
+
* pair fixed before the retry would instead re-run a rung the winner retired,
|
|
352
|
+
* and the client arm's not-authorized refusal is not a conflict, so its retry
|
|
353
|
+
* would end there -- after the annex Space and generation were minted, with
|
|
354
|
+
* nothing naming them. The pre-flight guard ({@link attributePointerEntryRung})
|
|
355
|
+
* therefore cannot fire from staleness here: it runs on the caller's snapshot
|
|
356
|
+
* before anything is minted, while the entry is built on a head the attempt
|
|
357
|
+
* read itself.
|
|
358
|
+
*
|
|
359
|
+
* @param options {object}
|
|
360
|
+
* @param options.idStore {WebvhIdStore} the account log's store -- the
|
|
361
|
+
* record's bridge delegation on a transient visit, the root-invoking store
|
|
362
|
+
* in the establishment's stage 3
|
|
363
|
+
* @param options.ladderSeed {Uint8Array} the credential's ladder seed
|
|
364
|
+
* @param options.clientAnnexDid {string} the generation to point at
|
|
365
|
+
* @param options.accountDid {string} the account DID the log must resolve to
|
|
366
|
+
* @param [options.pinStore] {ResourceLogPinStore} the visit's chain-head pins
|
|
367
|
+
* @param [options.logId] {string} the account log's pin slot; required
|
|
368
|
+
* whenever a `pinStore` is supplied
|
|
369
|
+
* @param [options.logOnly] {boolean} whether the pointer entry publishes
|
|
370
|
+
* the log alone (default `true`, a bridge-delegated writer's whole reach);
|
|
371
|
+
* the establishment's root window passes `false` so its `did:web`
|
|
372
|
+
* projection is republished beside the entry
|
|
373
|
+
* @param [options.published] {PublishedWebvhLog} a head the caller already
|
|
374
|
+
* read or published under the same pin, ETag included: the FIRST attempt
|
|
375
|
+
* attributes and builds on it instead of reading, and a lost
|
|
376
|
+
* compare-and-swap there falls through to the reading retry with its whole
|
|
377
|
+
* budget (`withThreadedHeadOnce`)
|
|
378
|
+
* @returns {Promise<{ did: string, doc: DIDDoc, published: PublishedWebvhLog,
|
|
379
|
+
* rung: LadderRung }>} the pointer entry's outcome (the head it leaves
|
|
380
|
+
* standing, ETag included) and the rung it was signed with -- the ladder's
|
|
381
|
+
* current rung, which a lost race may have climbed past the caller's own
|
|
382
|
+
* attribution; on the idempotent already-pointed path, the rung the
|
|
383
|
+
* attempt attributed
|
|
384
|
+
*/
|
|
385
|
+
export declare function movePointerAsLadder({ idStore, ladderSeed, clientAnnexDid, accountDid, pinStore, logId, logOnly, published }: {
|
|
386
|
+
idStore: WebvhIdStore;
|
|
387
|
+
ladderSeed: Uint8Array;
|
|
388
|
+
clientAnnexDid: string;
|
|
389
|
+
accountDid: string;
|
|
390
|
+
pinStore?: ResourceLogPinStore;
|
|
391
|
+
logId?: string;
|
|
392
|
+
logOnly?: boolean;
|
|
393
|
+
published?: PublishedWebvhLog;
|
|
394
|
+
}): Promise<Required<PointerEntryOutcome>>;
|
|
311
395
|
//# sourceMappingURL=heal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heal.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/heal.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0EG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"heal.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/heal.ts"],"names":[],"mappings":"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"}
|
package/dist/clientAnnex/heal.js
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import { WasClient } from '@interop/was-client';
|
|
2
2
|
import { spacePath } from '@interop/was-client/paths';
|
|
3
|
-
import { currentLogParameters, readPublishedLog
|
|
3
|
+
import { currentLogParameters, readPublishedLog } from '../webvh/didWebvh.js';
|
|
4
4
|
import { ladderVmIds } from '../resourceLog/document.js';
|
|
5
5
|
import { standingZcapStale } from '../webvh/standingZcap.js';
|
|
6
6
|
import { delegateLogWrite } from '../recovery/recoveryDelegation.js';
|
|
7
7
|
import { accountLogPinId } from '../webvh/verifyLog.js';
|
|
8
8
|
import { mintSpaceId } from '../genesis/accountGenesis.js';
|
|
9
|
-
import { attributeLadderRung,
|
|
10
|
-
import { revealLadderRungWebvh } from './ladderAnchored.js';
|
|
9
|
+
import { attributeLadderRung, ladderVmKeyMultibase } from './ladder.js';
|
|
11
10
|
import { ladderVmAgent, ladderVmZcapClient } from './zcap.js';
|
|
12
11
|
import { mintSpaceRootVerbCapability } from './spaceCapability.js';
|
|
13
|
-
import { clientAnnexDidParts, clientAnnexLogPinId, clientAnnexLogStore, delegatedClientsDelegationSpaceId, delegatedClientsPointer, ensureClientAnnexSpace, ensureGenerationDelegationCurrent,
|
|
12
|
+
import { clientAnnexDidParts, clientAnnexLogPinId, clientAnnexLogStore, delegatedClientsDelegationSpaceId, delegatedClientsPointer, ensureClientAnnexSpace, ensureGenerationDelegationCurrent, mintDelegatedClientsDelegation, mintGenerationDelegation, mintPointedClientAnnexGeneration, setDelegatedClientsPointer } from './log.js';
|
|
14
13
|
/**
|
|
15
14
|
* The HTTP status a raw signed request's rejection carries, when it carries
|
|
16
15
|
* one. `WasClient.request` applies no error mapping, so the status is all a
|
|
17
16
|
* caller has to dispatch on, and different transports hang it in different
|
|
18
|
-
* places (`status`, or `response.status`).
|
|
17
|
+
* places (`status`, or `response.status`). Exported as the one reader of
|
|
18
|
+
* those two places, shared with the establishment's authorization-refusal
|
|
19
|
+
* check.
|
|
19
20
|
*
|
|
20
21
|
* @param err {unknown}
|
|
21
22
|
* @returns {number | undefined}
|
|
22
23
|
*/
|
|
23
|
-
function rawRequestStatus(err) {
|
|
24
|
+
export function rawRequestStatus(err) {
|
|
24
25
|
const raw = err;
|
|
25
26
|
const status = raw?.status ?? raw?.response?.status;
|
|
26
27
|
return typeof status === 'number' ? status : undefined;
|
|
@@ -250,6 +251,12 @@ async function ensureCredentialClientAnnexGenerationChecked({ wasServerUrl, spac
|
|
|
250
251
|
* VM. Minting first and flipping afterwards would need the bootstrap key's
|
|
251
252
|
* own root invocations, which is the ordering this stage replaced.
|
|
252
253
|
*
|
|
254
|
+
* The flip swallows nothing. The establishment's bootstrap arm tolerates
|
|
255
|
+
* an authorization-class refusal there because its Space may be a
|
|
256
|
+
* sibling-named one a concurrent run already flipped; this Space's id was
|
|
257
|
+
* minted a moment ago and no other run can hold it, so every failure is
|
|
258
|
+
* the transport or logic failure it looks like and propagates.
|
|
259
|
+
*
|
|
253
260
|
* @returns {Promise<string>} the fresh auxiliary Space's id
|
|
254
261
|
*/
|
|
255
262
|
async function mintFreshAnnexSpace() {
|
|
@@ -483,7 +490,7 @@ async function ensureCredentialClientAnnexGenerationChecked({ wasServerUrl, spac
|
|
|
483
490
|
};
|
|
484
491
|
}
|
|
485
492
|
catch (err) {
|
|
486
|
-
if (err
|
|
493
|
+
if (err?.name !==
|
|
487
494
|
'ClientAnnexRungUncommittedError') {
|
|
488
495
|
throw err;
|
|
489
496
|
}
|
|
@@ -500,7 +507,7 @@ async function ensureCredentialClientAnnexGenerationChecked({ wasServerUrl, spac
|
|
|
500
507
|
// and the visit would fail on something other than the typed
|
|
501
508
|
// refusal. The Space is re-minted and the run starts over in it,
|
|
502
509
|
// before anything has been written.
|
|
503
|
-
await
|
|
510
|
+
await attributePointerEntryRung({ ladderSeed, log: account.log });
|
|
504
511
|
const freshSpaceId = await mintFreshAnnexSpace();
|
|
505
512
|
spaceMinted = true;
|
|
506
513
|
pointedSpaceMissing = true;
|
|
@@ -517,46 +524,41 @@ async function ensureCredentialClientAnnexGenerationChecked({ wasServerUrl, spac
|
|
|
517
524
|
// rung; other standing credentials' per-generation rungs are re-committed
|
|
518
525
|
// only by their own later ceremonies (a property of every generation
|
|
519
526
|
// swap).
|
|
520
|
-
await
|
|
521
|
-
const
|
|
527
|
+
await attributePointerEntryRung({ ladderSeed, log: account.log });
|
|
528
|
+
const generation = await mintPointedClientAnnexGeneration({
|
|
522
529
|
was: standingWas,
|
|
523
530
|
wasServerUrl,
|
|
524
531
|
spaceId: annexSpaceId,
|
|
525
532
|
controller: account.did,
|
|
526
533
|
ladderSeed,
|
|
527
|
-
capability: usableSibling
|
|
528
|
-
});
|
|
529
|
-
const ensured = await ensureGenerationDelegationCurrent({
|
|
530
|
-
store: storeFor(minted.generationId),
|
|
531
|
-
ladderSeed,
|
|
532
|
-
generationId: minted.generationId,
|
|
534
|
+
capability: usableSibling,
|
|
533
535
|
mintGenerationDelegation: mintDelegation,
|
|
534
|
-
|
|
535
|
-
|
|
536
|
+
// No revocation of the superseded generation's delegation is
|
|
537
|
+
// attempted: a transient visit has no reach that could invoke it (the
|
|
538
|
+
// standing client is neither the Space controller nor in that
|
|
539
|
+
// delegation's chain). The pointer move itself retires it on a
|
|
540
|
+
// conforming server -- the inspector clause compares the delegation's
|
|
541
|
+
// controller against the document's pointer -- and it otherwise rots
|
|
542
|
+
// on its TTL.
|
|
543
|
+
point: clientAnnexDid => movePointerAsLadder({
|
|
544
|
+
idStore,
|
|
545
|
+
ladderSeed,
|
|
546
|
+
clientAnnexDid,
|
|
547
|
+
accountDid: account.did,
|
|
548
|
+
...(pinStore !== undefined
|
|
549
|
+
? { pinStore, logId: accountLogPinId({ spaceId }) }
|
|
550
|
+
: {})
|
|
551
|
+
}),
|
|
552
|
+
...(pinStore !== undefined ? { pinStore } : {}),
|
|
536
553
|
...(now !== undefined ? { now } : {})
|
|
537
554
|
});
|
|
538
|
-
// No revocation of the superseded generation's delegation is attempted:
|
|
539
|
-
// a transient visit has no reach that could invoke it (the standing
|
|
540
|
-
// client is neither the Space controller nor in that delegation's
|
|
541
|
-
// chain). The pointer move itself retires it on a conforming server --
|
|
542
|
-
// the inspector clause compares the delegation's controller against the
|
|
543
|
-
// document's pointer -- and it otherwise rots on its TTL.
|
|
544
|
-
await movePointerAsLadder({
|
|
545
|
-
idStore,
|
|
546
|
-
ladderSeed,
|
|
547
|
-
clientAnnexDid: minted.did,
|
|
548
|
-
accountDid: account.did,
|
|
549
|
-
...(pinStore !== undefined
|
|
550
|
-
? { pinStore, logId: accountLogPinId({ spaceId }) }
|
|
551
|
-
: {})
|
|
552
|
-
});
|
|
553
555
|
const resealed = await resealRecord({
|
|
554
556
|
delegatedClients: usableSibling,
|
|
555
557
|
siblingReminted
|
|
556
558
|
});
|
|
557
559
|
return {
|
|
558
|
-
clientAnnexDid:
|
|
559
|
-
generationDelegation:
|
|
560
|
+
clientAnnexDid: generation.clientAnnexDid,
|
|
561
|
+
generationDelegation: generation.generationDelegation,
|
|
560
562
|
delegation: usableBridge,
|
|
561
563
|
delegatedClients: usableSibling,
|
|
562
564
|
generationMinted: true,
|
|
@@ -572,7 +574,7 @@ async function ensureCredentialClientAnnexGenerationChecked({ wasServerUrl, spac
|
|
|
572
574
|
// NEITHER THE POINTER NOR A SIBLING NAMES A SPACE. The pre-flight
|
|
573
575
|
// attribution runs before any Space or generation is minted (a bridge
|
|
574
576
|
// delegation mint writes nothing durable).
|
|
575
|
-
await
|
|
577
|
+
await attributePointerEntryRung({ ladderSeed, log: account.log });
|
|
576
578
|
const freshSpaceId = await mintFreshAnnexSpace();
|
|
577
579
|
spaceMinted = true;
|
|
578
580
|
return runInAnnexSpace({
|
|
@@ -617,68 +619,28 @@ export function resolveClientAnnexSpaceId({ doc, delegatedClients }) {
|
|
|
617
619
|
};
|
|
618
620
|
}
|
|
619
621
|
/**
|
|
620
|
-
* The pre-flight rung attribution
|
|
621
|
-
*
|
|
622
|
-
*
|
|
623
|
-
*
|
|
624
|
-
*
|
|
625
|
-
*
|
|
626
|
-
* {@link ClientAnnexGenerationUnavailableError} before anything is minted.
|
|
627
|
-
* Exported for the establishment's stage-3 primitive, whose pointer entry
|
|
628
|
-
* signs by the same attribution.
|
|
629
|
-
*
|
|
630
|
-
* @param options {object}
|
|
631
|
-
* @param options.ladderSeed {Uint8Array}
|
|
632
|
-
* @param options.log {DIDLog} the VERIFIED account log
|
|
633
|
-
* @returns {Promise<ClientWebvhUpdateKeys>}
|
|
634
|
-
*/
|
|
635
|
-
export async function pointerEntryUpdateKeys({ ladderSeed, log }) {
|
|
636
|
-
const current = currentLogParameters({ log });
|
|
637
|
-
const unattributable = () => new ClientAnnexGenerationUnavailableError({
|
|
638
|
-
reason: 'update-key-not-attributable',
|
|
639
|
-
message: "No current account-log update key is a rung of this credential's " +
|
|
640
|
-
'ladder; the pointer entry could not be signed, so nothing is minted.'
|
|
641
|
-
});
|
|
642
|
-
let attributed;
|
|
643
|
-
try {
|
|
644
|
-
attributed = await attributeLadderRung({ ladderSeed, published: current });
|
|
645
|
-
}
|
|
646
|
-
catch (err) {
|
|
647
|
-
if (err.name === 'LadderAttributionError') {
|
|
648
|
-
throw unattributable();
|
|
649
|
-
}
|
|
650
|
-
throw err;
|
|
651
|
-
}
|
|
652
|
-
if (attributed.state !== 'revealed') {
|
|
653
|
-
throw unattributable();
|
|
654
|
-
}
|
|
655
|
-
const staged = await ladderRung({
|
|
656
|
-
ladderSeed,
|
|
657
|
-
index: attributed.rung.index + 1
|
|
658
|
-
});
|
|
659
|
-
return { updateSeed: attributed.rung.seed, stagedSeed: staged.seed };
|
|
660
|
-
}
|
|
661
|
-
/**
|
|
662
|
-
* The pre-flight the pointer-moving arms run before minting anything: this
|
|
663
|
-
* ladder has a rung the pointer entry will be able to sign with, either
|
|
664
|
-
* standing in `updateKeys` already or committed in `nextKeyHashes` and
|
|
665
|
-
* revealable by {@link movePointerAsLadder}. A ladder the log carries no rung
|
|
666
|
-
* of at all, and an ambiguous attribution, refuse here with
|
|
622
|
+
* The pre-flight rung attribution every pointer-moving arm runs before
|
|
623
|
+
* minting anything: this ladder has a rung the pointer entry will be able to
|
|
624
|
+
* sign with, either standing in `updateKeys` already (`revealed`) or
|
|
625
|
+
* committed in `nextKeyHashes` and revealable by {@link movePointerAsLadder}
|
|
626
|
+
* (`committed`). A ladder the log carries no rung of at all, and an
|
|
627
|
+
* ambiguous attribution, refuse with
|
|
667
628
|
* {@link ClientAnnexGenerationUnavailableError} before a generation or a
|
|
668
|
-
* Space is minted
|
|
629
|
+
* Space is minted -- the one place the ladder's `LadderAttributionError`
|
|
630
|
+
* maps onto that refusal.
|
|
669
631
|
*
|
|
670
632
|
* @param options {object}
|
|
671
633
|
* @param options.ladderSeed {Uint8Array}
|
|
672
634
|
* @param options.log {DIDLog} the VERIFIED account log
|
|
673
|
-
* @returns {Promise<
|
|
635
|
+
* @returns {Promise<{ rung: LadderRung, state: LadderRungState }>}
|
|
674
636
|
*/
|
|
675
|
-
async function
|
|
637
|
+
export async function attributePointerEntryRung({ ladderSeed, log }) {
|
|
676
638
|
const current = currentLogParameters({ log });
|
|
677
639
|
try {
|
|
678
|
-
await attributeLadderRung({ ladderSeed, published: current });
|
|
640
|
+
return await attributeLadderRung({ ladderSeed, published: current });
|
|
679
641
|
}
|
|
680
642
|
catch (err) {
|
|
681
|
-
if (err
|
|
643
|
+
if (err?.name === 'LadderAttributionError') {
|
|
682
644
|
throw new ClientAnnexGenerationUnavailableError({
|
|
683
645
|
reason: 'update-key-not-attributable',
|
|
684
646
|
message: "The account log carries no rung of this credential's ladder, or " +
|
|
@@ -690,107 +652,79 @@ async function assertPointerEntryAttributable({ ladderSeed, log }) {
|
|
|
690
652
|
}
|
|
691
653
|
}
|
|
692
654
|
/**
|
|
693
|
-
* The `#DelegatedClients` pointer move as a credential-only
|
|
694
|
-
*
|
|
695
|
-
*
|
|
655
|
+
* The `#DelegatedClients` pointer move as a credential-only caller makes it:
|
|
656
|
+
* ONE ladder-signed pointer entry ({@link setDelegatedClientsPointer} on the
|
|
657
|
+
* ladder arm). Each attempt attributes the ladder's current rung from the
|
|
658
|
+
* head it builds on, the rung reveals itself in the entry it signs, and when
|
|
659
|
+
* it stood only committed the entry commits the next rung's hash beside it.
|
|
660
|
+
* The one shape every ladder-held pointer move runs: the transient readiness
|
|
661
|
+
* pass's fresh-generation arm, and the establishment's stage 3 (whose first
|
|
662
|
+
* attempt builds on the head it minted or read, threaded in as `published`).
|
|
696
663
|
*
|
|
697
664
|
* A self-enrollment's add entry spends the revealed rung, so on any account
|
|
698
665
|
* that has ever self-enrolled the rung is merely committed and the reveal is
|
|
699
666
|
* what makes the pointer entry signable at all.
|
|
700
667
|
*
|
|
701
|
-
* ACCEPTED CONSEQUENCE (design FW-356, finding R3): the
|
|
702
|
-
* nothing,
|
|
703
|
-
*
|
|
704
|
-
*
|
|
705
|
-
*
|
|
706
|
-
*
|
|
707
|
-
*
|
|
708
|
-
* documented rather than prevented.
|
|
668
|
+
* ACCEPTED CONSEQUENCE (design FW-356, finding R3): the entry retires
|
|
669
|
+
* nothing, so the acting rung stands in the account log's `updateKeys`
|
|
670
|
+
* afterwards. The price of a pointer move is therefore a standing account
|
|
671
|
+
* update key in the credential's hand -- direct document-edit authority
|
|
672
|
+
* through the bridge with no further reveal -- retired at that credential's
|
|
673
|
+
* next self-enrollment (whose add entry drops the attributed rung) or at its
|
|
674
|
+
* retirement. This is documented rather than prevented.
|
|
709
675
|
*
|
|
710
|
-
*
|
|
711
|
-
*
|
|
712
|
-
*
|
|
713
|
-
*
|
|
714
|
-
*
|
|
715
|
-
*
|
|
716
|
-
*
|
|
717
|
-
*
|
|
718
|
-
*
|
|
719
|
-
*
|
|
720
|
-
*
|
|
721
|
-
* wrapper: the wrapper's inner loop would re-invoke the attempt with the
|
|
722
|
-
* attribution's stale `updateKeys`, and a rung the racing winner consumed
|
|
723
|
-
* cannot become authorized by re-reading, so the attempt would end on the
|
|
724
|
-
* plain not-authorized refusal, which the outer loop does not retry. And the
|
|
725
|
-
* attempt is handed the very head this attempt attributed against, so a
|
|
726
|
-
* racing entry landing between the attribution and the PUT loses the CAS and
|
|
727
|
-
* surfaces as a `WebvhLogConflictError` -- the refusal the outer loop
|
|
728
|
-
* re-attributes from. The pre-flight guard
|
|
729
|
-
* ({@link assertPointerEntryAttributable}) therefore cannot fire from
|
|
730
|
-
* staleness here: it runs on the caller's snapshot before anything is minted,
|
|
731
|
-
* while every entry this function publishes is built on a head it read
|
|
732
|
-
* itself.
|
|
676
|
+
* Attribution runs inside the conflict retry, so a racing ceremony that
|
|
677
|
+
* consumes the rung between the read and the PUT climbs to the winner's
|
|
678
|
+
* committed rung instead of refusing `update-key-not-attributable` on a rung
|
|
679
|
+
* that is no longer current. A caller that signed the pointer entry with a
|
|
680
|
+
* pair fixed before the retry would instead re-run a rung the winner retired,
|
|
681
|
+
* and the client arm's not-authorized refusal is not a conflict, so its retry
|
|
682
|
+
* would end there -- after the annex Space and generation were minted, with
|
|
683
|
+
* nothing naming them. The pre-flight guard ({@link attributePointerEntryRung})
|
|
684
|
+
* therefore cannot fire from staleness here: it runs on the caller's snapshot
|
|
685
|
+
* before anything is minted, while the entry is built on a head the attempt
|
|
686
|
+
* read itself.
|
|
733
687
|
*
|
|
734
688
|
* @param options {object}
|
|
735
|
-
* @param options.idStore {WebvhIdStore} the account log's store
|
|
736
|
-
* record's bridge delegation
|
|
689
|
+
* @param options.idStore {WebvhIdStore} the account log's store -- the
|
|
690
|
+
* record's bridge delegation on a transient visit, the root-invoking store
|
|
691
|
+
* in the establishment's stage 3
|
|
737
692
|
* @param options.ladderSeed {Uint8Array} the credential's ladder seed
|
|
738
693
|
* @param options.clientAnnexDid {string} the generation to point at
|
|
739
694
|
* @param options.accountDid {string} the account DID the log must resolve to
|
|
740
695
|
* @param [options.pinStore] {ResourceLogPinStore} the visit's chain-head pins
|
|
741
696
|
* @param [options.logId] {string} the account log's pin slot; required
|
|
742
697
|
* whenever a `pinStore` is supplied
|
|
743
|
-
* @
|
|
698
|
+
* @param [options.logOnly] {boolean} whether the pointer entry publishes
|
|
699
|
+
* the log alone (default `true`, a bridge-delegated writer's whole reach);
|
|
700
|
+
* the establishment's root window passes `false` so its `did:web`
|
|
701
|
+
* projection is republished beside the entry
|
|
702
|
+
* @param [options.published] {PublishedWebvhLog} a head the caller already
|
|
703
|
+
* read or published under the same pin, ETag included: the FIRST attempt
|
|
704
|
+
* attributes and builds on it instead of reading, and a lost
|
|
705
|
+
* compare-and-swap there falls through to the reading retry with its whole
|
|
706
|
+
* budget (`withThreadedHeadOnce`)
|
|
707
|
+
* @returns {Promise<{ did: string, doc: DIDDoc, published: PublishedWebvhLog,
|
|
708
|
+
* rung: LadderRung }>} the pointer entry's outcome (the head it leaves
|
|
709
|
+
* standing, ETag included) and the rung it was signed with -- the ladder's
|
|
710
|
+
* current rung, which a lost race may have climbed past the caller's own
|
|
711
|
+
* attribution; on the idempotent already-pointed path, the rung the
|
|
712
|
+
* attempt attributed
|
|
744
713
|
*/
|
|
745
|
-
async function movePointerAsLadder({ idStore, ladderSeed, clientAnnexDid, accountDid, pinStore, logId }) {
|
|
746
|
-
const
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
const published = await readPublishedLogOrThrow({
|
|
757
|
-
idStore,
|
|
758
|
-
expectedDid: accountDid,
|
|
759
|
-
...pin,
|
|
760
|
-
missingMessage: 'did:webvh: did.jsonl is missing; nothing to point at a client annex.'
|
|
761
|
-
});
|
|
762
|
-
// A racing ceremony that consumed the rung between this reveal and this
|
|
763
|
-
// read leaves the ladder committed-only again, which the attribution
|
|
764
|
-
// reports as `update-key-not-attributable`. Inside this loop that is a
|
|
765
|
-
// staleness signal rather than a refusal -- the pre-flight already found
|
|
766
|
-
// a rung, and a fresh reveal is exactly what the next attempt does -- so
|
|
767
|
-
// it becomes a conflict for the retry to re-run.
|
|
768
|
-
let updateKeys;
|
|
769
|
-
try {
|
|
770
|
-
updateKeys = await pointerEntryUpdateKeys({
|
|
771
|
-
ladderSeed,
|
|
772
|
-
log: published.log
|
|
773
|
-
});
|
|
774
|
-
}
|
|
775
|
-
catch (err) {
|
|
776
|
-
if (err.name ===
|
|
777
|
-
'ClientAnnexGenerationUnavailableError' &&
|
|
778
|
-
err.reason ===
|
|
779
|
-
'update-key-not-attributable') {
|
|
780
|
-
throw new WebvhLogConflictError('did:webvh: a concurrent ceremony consumed the rung this pointer ' +
|
|
781
|
-
'move just revealed; the move re-runs from a fresh reveal.', { cause: err });
|
|
782
|
-
}
|
|
783
|
-
throw err;
|
|
784
|
-
}
|
|
785
|
-
await setDelegatedClientsPointerOnce({
|
|
786
|
-
idStore,
|
|
787
|
-
signer: { kind: 'client', updateKeys },
|
|
788
|
-
clientAnnexDid,
|
|
789
|
-
expectedDid: accountDid,
|
|
790
|
-
logOnly: true,
|
|
791
|
-
published,
|
|
792
|
-
...pin
|
|
793
|
-
});
|
|
714
|
+
export async function movePointerAsLadder({ idStore, ladderSeed, clientAnnexDid, accountDid, pinStore, logId, logOnly = true, published }) {
|
|
715
|
+
const pointed = await setDelegatedClientsPointer({
|
|
716
|
+
idStore,
|
|
717
|
+
signer: { kind: 'ladder', ladderSeed },
|
|
718
|
+
clientAnnexDid,
|
|
719
|
+
expectedDid: accountDid,
|
|
720
|
+
logOnly,
|
|
721
|
+
...(published !== undefined ? { published } : {}),
|
|
722
|
+
...(pinStore !== undefined && logId !== undefined
|
|
723
|
+
? { pinStore, logId }
|
|
724
|
+
: {})
|
|
794
725
|
});
|
|
726
|
+
// No `skip` hook is passed, so the ladder arm attributed a rung on every
|
|
727
|
+
// path, the idempotent one included.
|
|
728
|
+
return { ...pointed, rung: pointed.rung };
|
|
795
729
|
}
|
|
796
730
|
//# sourceMappingURL=heal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heal.js","sourceRoot":"","sources":["../../src/clientAnnex/heal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"heal.js","sourceRoot":"","sources":["../../src/clientAnnex/heal.ts"],"names":[],"mappings":"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"}
|