@seams/wallet 0.5.1 → 0.5.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.
Files changed (113) hide show
  1. package/LICENSE.md +201 -0
  2. package/THIRD_PARTY_NOTICES.md +15095 -0
  3. package/dist/.build-inputs.sha256 +1 -1
  4. package/dist/esm/SeamsWeb/signingSurface/BrowserSigningSurface.js +7 -14
  5. package/dist/esm/core/signingEngine/session/identity/exactWalletSessionReader.js +2 -27
  6. package/dist/esm/react/SeamsWeb/signingSurface/BrowserSigningSurface.js +7 -14
  7. package/dist/esm/react/core/signingEngine/session/identity/exactWalletSessionReader.js +2 -27
  8. package/dist/esm/sdk/export-private-key-viewer.js +8804 -55
  9. package/dist/esm/sdk/halo-border.js +8887 -8
  10. package/dist/esm/sdk/{host-BqwEYhX0.js → host-DNmO0eve.js} +2 -2
  11. package/dist/esm/sdk/passkey-halo-loading.js +8850 -27
  12. package/dist/{public/sdk/registrationPreparationPreload-u3ruCmpF.js → esm/sdk/registrationPreparationPreload-CwUkRwVz.js} +1 -1
  13. package/dist/esm/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
  14. package/dist/{public/sdk/runtime-auth-Da9yQyaD.js → esm/sdk/runtime-auth-dpoaCtkK.js} +2 -2
  15. package/dist/esm/sdk/{runtime-device-link-DNlzlwrr.js → runtime-device-link-C75epnbj.js} +1 -1
  16. package/dist/{public/sdk/runtime-ecdsa-tempo-B7dBVcCI.js → esm/sdk/runtime-ecdsa-tempo-CV-E-iZG.js} +1 -1
  17. package/dist/{public/sdk/runtime-email-otp-CckVQZJC.js → esm/sdk/runtime-email-otp-V0mdMD_t.js} +1 -1
  18. package/dist/{public/sdk/runtime-export-WAiBwZL_.js → esm/sdk/runtime-export-C4HO5ysH.js} +1 -1
  19. package/dist/esm/sdk/{runtime-near-DBJ4KfFv.js → runtime-near-DlviFQWy.js} +1 -1
  20. package/dist/{public/sdk/runtime-preferences-DmH7eMHH.js → esm/sdk/runtime-preferences-DyJidFuf.js} +1 -1
  21. package/dist/esm/sdk/{runtime-recovery-kPgl9nTT.js → runtime-recovery-CHDE5gl0.js} +1 -1
  22. package/dist/esm/sdk/{runtimeContext-BorCgXo5.js → runtimeContext-D_TkUM6Z.js} +6 -38
  23. package/dist/esm/sdk/{runtimeLoader-BKQjNgXO.js → runtimeLoader-DxiLgXPm.js} +9 -9
  24. package/dist/esm/sdk/tx-confirm-ui.js +9568 -206
  25. package/dist/esm/sdk/w3a-tx-confirmer.js +8335 -206
  26. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  27. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  28. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  29. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  30. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +4 -4
  31. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
  32. package/dist/esm/wasm/router_ab_ecdsa_client/pkg/router_ab_ecdsa_client_bg.wasm +0 -0
  33. package/dist/esm/wasm/router_ab_ed25519_yao_client/pkg/router_ab_ed25519_yao_client_bg.wasm +0 -0
  34. package/dist/public/headers.manifest.json +1 -1
  35. package/dist/public/sdk/export-private-key-viewer.js +8804 -55
  36. package/dist/public/sdk/halo-border.js +8887 -8
  37. package/dist/public/sdk/{host-BqwEYhX0.js → host-DNmO0eve.js} +2 -2
  38. package/dist/public/sdk/passkey-halo-loading.js +8850 -27
  39. package/dist/{esm/sdk/registrationPreparationPreload-u3ruCmpF.js → public/sdk/registrationPreparationPreload-CwUkRwVz.js} +1 -1
  40. package/dist/public/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
  41. package/dist/{esm/sdk/runtime-auth-Da9yQyaD.js → public/sdk/runtime-auth-dpoaCtkK.js} +2 -2
  42. package/dist/public/sdk/{runtime-device-link-DNlzlwrr.js → runtime-device-link-C75epnbj.js} +1 -1
  43. package/dist/{esm/sdk/runtime-ecdsa-tempo-B7dBVcCI.js → public/sdk/runtime-ecdsa-tempo-CV-E-iZG.js} +1 -1
  44. package/dist/{esm/sdk/runtime-email-otp-CckVQZJC.js → public/sdk/runtime-email-otp-V0mdMD_t.js} +1 -1
  45. package/dist/{esm/sdk/runtime-export-WAiBwZL_.js → public/sdk/runtime-export-C4HO5ysH.js} +1 -1
  46. package/dist/public/sdk/{runtime-near-DBJ4KfFv.js → runtime-near-DlviFQWy.js} +1 -1
  47. package/dist/{esm/sdk/runtime-preferences-DmH7eMHH.js → public/sdk/runtime-preferences-DyJidFuf.js} +1 -1
  48. package/dist/public/sdk/{runtime-recovery-kPgl9nTT.js → runtime-recovery-CHDE5gl0.js} +1 -1
  49. package/dist/public/sdk/{runtimeContext-BorCgXo5.js → runtimeContext-D_TkUM6Z.js} +6 -38
  50. package/dist/public/sdk/{runtimeLoader-BKQjNgXO.js → runtimeLoader-DxiLgXPm.js} +9 -9
  51. package/dist/public/sdk/tx-confirm-ui.js +9568 -206
  52. package/dist/public/sdk/w3a-tx-confirmer.js +8335 -206
  53. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  54. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  55. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  56. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  57. package/dist/public/sdk/workers/device-linking-key.worker.js +8603 -3
  58. package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +12320 -1
  59. package/dist/public/sdk/workers/ecdsa-online-client.worker.js +623 -1
  60. package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +1276 -1
  61. package/dist/public/sdk/workers/email-otp.worker.js +15653 -7
  62. package/dist/public/sdk/workers/email_otp_runtime.js +39 -3
  63. package/dist/public/sdk/workers/email_otp_runtime_bg.wasm +0 -0
  64. package/dist/public/sdk/workers/evm-crypto.worker.js +1157 -5
  65. package/dist/public/sdk/workers/evm_crypto.wasm +0 -0
  66. package/dist/public/sdk/workers/evm_crypto_bg.wasm +0 -0
  67. package/dist/public/sdk/workers/near-signer.worker.js +1631 -2
  68. package/dist/public/sdk/workers/near_signer.wasm +0 -0
  69. package/dist/public/sdk/workers/passkey-confirm.worker.js +606 -1
  70. package/dist/public/sdk/workers/passkey-mpc-export.worker.js +5406 -2
  71. package/dist/public/sdk/workers/passkey-mpc-session.worker.js +1717 -1
  72. package/dist/public/sdk/workers/router_ab_ecdsa_client_bg.wasm +0 -0
  73. package/dist/public/sdk/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
  74. package/dist/public/sdk/workers/shamir3pass.worker.js +874 -4
  75. package/dist/public/sdk/workers/shamir3pass_runtime.js +84 -31
  76. package/dist/public/sdk/workers/shamir3pass_runtime_bg.wasm +0 -0
  77. package/dist/public/sdk/workers/tempo-signer.worker.js +987 -5
  78. package/dist/public/sdk/workers/tempo_signer.wasm +0 -0
  79. package/dist/public/sdk/workers/tempo_signer_bg.wasm +0 -0
  80. package/dist/public/sdk/workers/wallet-custody-ceremony.worker.js +55 -1244
  81. package/dist/public/sdk/workers/wallet_custody_ceremony_bg.wasm +0 -0
  82. package/dist/public/sdk/workers/wasm_signer_worker_bg.wasm +0 -0
  83. package/dist/public/wallet-assets.manifest.json +32 -32
  84. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +4 -4
  85. package/dist/types/wallet/src/core/signingEngine/session/identity/exactWalletSessionReader.d.ts +1 -9
  86. package/dist/workers/device-linking-key.worker.js +8603 -3
  87. package/dist/workers/ecdsa-derivation-client.worker.js +12320 -1
  88. package/dist/workers/ecdsa-online-client.worker.js +623 -1
  89. package/dist/workers/ecdsa-presign-client.worker.js +1276 -1
  90. package/dist/workers/email-otp.worker.js +15653 -7
  91. package/dist/workers/email_otp_runtime.js +39 -3
  92. package/dist/workers/email_otp_runtime_bg.wasm +0 -0
  93. package/dist/workers/evm-crypto.worker.js +1157 -5
  94. package/dist/workers/evm_crypto.wasm +0 -0
  95. package/dist/workers/evm_crypto_bg.wasm +0 -0
  96. package/dist/workers/near-signer.worker.js +1631 -2
  97. package/dist/workers/near_signer.wasm +0 -0
  98. package/dist/workers/passkey-confirm.worker.js +606 -1
  99. package/dist/workers/passkey-mpc-export.worker.js +5406 -2
  100. package/dist/workers/passkey-mpc-session.worker.js +1717 -1
  101. package/dist/workers/router_ab_ecdsa_client_bg.wasm +0 -0
  102. package/dist/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
  103. package/dist/workers/shamir3pass.worker.js +874 -4
  104. package/dist/workers/shamir3pass_runtime.js +84 -31
  105. package/dist/workers/shamir3pass_runtime_bg.wasm +0 -0
  106. package/dist/workers/tempo-signer.worker.js +987 -5
  107. package/dist/workers/tempo_signer.wasm +0 -0
  108. package/dist/workers/tempo_signer_bg.wasm +0 -0
  109. package/dist/workers/wallet-custody-ceremony.worker.js +55 -1244
  110. package/dist/workers/wallet_custody_ceremony_bg.wasm +0 -0
  111. package/dist/workers/wasm_signer_worker_bg.wasm +0 -0
  112. package/package.json +5 -2
  113. package/LICENSE +0 -21
@@ -1 +1 @@
1
- 9e6339642b68ce46bda1fabd01c5f6377195e50758961179b1f43feb0d24fafb
1
+ 3453dbe490ad19955c12397ded644b4e67fcdaeefeeba7f3ee9edd4487e13f33
@@ -71,7 +71,7 @@ import { reconcileTempoNonceLane, reportTempoBroadcastAccepted, reportTempoBroad
71
71
  import { UserConfirmationType } from "../../core/signingEngine/stepUpConfirmation/userConfirmationType.js";
72
72
  import { exportKeypairWithUI, resolveExactKeyExportLane } from "../../core/signingEngine/flows/recovery/public.js";
73
73
  import { activateAuthenticatedWalletState, finalizeWalletEcdsaRegistration, finalizeWalletEd25519SignerRegistration, getAllUsers, getAuthenticationCredentialsSerialized, getLastUser, getUserBySignerSlot, getWalletNearProvisioningState, hasPasskeyCredential, nearAuthenticatorsByAccount, requestRegistrationCredentialConfirmation, rollbackUserRegistration, rollbackWalletEd25519SignerRegistration, setLastUser, setWalletNearProvisioningState, storeAuthenticator, storeUserData, storeWalletEcdsaRecoverySignerRecords, storeWalletEcdsaSignerRecords, storeWalletEd25519RecoveryRegistrationData, storeWalletEd25519RegistrationData, storeWalletEmailOtpEcdsaRegistrationData, storeWalletEmailOtpEcdsaSignerRecords, storeWalletEmailOtpEd25519RegistrationData, storeWalletEmailOtpMixedRegistrationData, storeWalletMixedRegistrationData } from "../../core/signingEngine/flows/registration/public.js";
74
- import { exactWalletSessionWithOperationCredentialOrThrow, readExactOwnerLaneWalletSession } from "../../core/signingEngine/session/identity/exactWalletSessionReader.js";
74
+ import { exactWalletSessionWithOperationCredentialOrThrow } from "../../core/signingEngine/session/identity/exactWalletSessionReader.js";
75
75
  import { enrollEmailOtpInternal, loginWithEmailOtpEcdsaCapabilityInternal, prepareEmailOtpRegistrationEnrollmentMaterialInternal, refreshEmailOtpSigningSession, requestEmailOtpSigningSessionChallenge } from "../../core/signingEngine/flows/signEvmFamily/emailOtpPublic.js";
76
76
  import { __isWalletIframeHostMode } from "../../core/browser/walletIframe/host-mode.js";
77
77
  import { destroyUnlockedWalletEd25519ExportRootCapabilitiesV1, establishUnlockedWalletEd25519ExportRootCapabilityV1, setUnlockedCustodyEnvelopeUpgradeSinkV1 } from "../../core/signingEngine/walletCustody/unlockedEd25519ExportRootCapability.js";
@@ -1141,7 +1141,7 @@ var BrowserSigningSurface = class {
1141
1141
  emailOtpSessions: this.emailOtpSessions,
1142
1142
  sealedSigningSessionStore: deps.sealedSigningSessionStore
1143
1143
  }, input),
1144
- resolveOwnerLaneScope: (walletId) => this.resolveActiveOwnerLaneScope(walletId)
1144
+ resolveOwnerLaneScope: (walletId) => this.resolveSelectedOwnerLaneScope(walletId)
1145
1145
  });
1146
1146
  this.enginePorts = createBrowserSigningSurfaceEnginePorts({
1147
1147
  runtimePorts: this.runtimePorts,
@@ -1167,7 +1167,7 @@ var BrowserSigningSurface = class {
1167
1167
  workerWarmupPolicy: deps.workerWarmupPolicy,
1168
1168
  getTheme: () => this.appearance.theme.mode,
1169
1169
  ensureSealedRefreshStartupParity: () => this.ensureSealedRefreshStartupParity(),
1170
- resolveOwnerLaneScope: (walletId) => this.resolveActiveOwnerLaneScope(walletId),
1170
+ resolveOwnerLaneScope: (walletId) => this.resolveSelectedOwnerLaneScope(walletId),
1171
1171
  getEnginePorts: () => this.enginePorts,
1172
1172
  getRegistrationPublicDeps: () => this.registrationPublicDeps,
1173
1173
  prepareNearEd25519YaoMaterialBoundary: this.prepareExactNearEd25519YaoMaterialBoundary.bind(this)
@@ -1488,11 +1488,11 @@ var BrowserSigningSurface = class {
1488
1488
  return await readOwnerScopedSigningLanes(this.sessionPublicDeps, args);
1489
1489
  }
1490
1490
  /**
1491
- * R103C derivation chain for post-login operations: the unique active Wallet
1492
- * Session authority resolves through the active wallet auth method to one
1493
- * exact owner scope. Callers never supply credential or slot hints.
1491
+ * Resolves the selected active Wallet Authority and auth method to one exact
1492
+ * owner scope. Session availability is resolved by the lane inventory so an
1493
+ * expired session can enter operation step-up.
1494
1494
  */
1495
- async resolveActiveOwnerLaneScope(walletId) {
1495
+ async resolveSelectedOwnerLaneScope(walletId) {
1496
1496
  const parsedWalletId = parseWalletId(walletId);
1497
1497
  if (!parsedWalletId.ok) throw new Error(parsedWalletId.error.message);
1498
1498
  const stores = {
@@ -1506,13 +1506,6 @@ var BrowserSigningSurface = class {
1506
1506
  const { selection, authMethod, authority } = selected;
1507
1507
  if (selection.walletId !== parsedWalletId.value || selection.walletAuthMethodId !== authMethod.walletAuthMethodId || authMethod.walletId !== parsedWalletId.value || authMethod.walletAuthorityId !== authority.authorityId || authority.walletId !== parsedWalletId.value) throw new Error("[SigningEngine] selected Wallet Authority identity mismatch");
1508
1508
  if (selection.lockState !== "unlocked" || authMethod.status !== "active" || authority.state !== "active") throw new Error("[SigningEngine] selected Wallet Authority is inactive or locked");
1509
- await readExactOwnerLaneWalletSession({
1510
- walletId: parsedWalletId.value,
1511
- authorityId: authority.authorityId,
1512
- authMethodId: authMethod.walletAuthMethodId,
1513
- authorityDigestB64u: authority.authorityDigestB64u,
1514
- authorityRevocationEpoch: authority.revocationEpoch
1515
- });
1516
1509
  if (authority.provenance.kind === "device_link" && authMethod.kind === "passkey" && authority.signerActivations.ed25519) return buildExactPasskeyOwnerLaneScope({
1517
1510
  authMethod,
1518
1511
  signerSlot: await resolveLinkedPasskeyOwnerSignerSlot({
@@ -1,4 +1,4 @@
1
- import { WalletSessionAuthorizationUpgradeRequiredError, walletSessionAuthorizations } from "../../../indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js";
1
+ import { WalletSessionAuthorizationUpgradeRequiredError } from "../../../indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js";
2
2
  //#region src/core/signingEngine/session/identity/exactWalletSessionReader.ts
3
3
  function exactWalletSessionMatchesAuthorityScope(args) {
4
4
  const { record, operationCredential, scope } = args;
@@ -48,32 +48,7 @@ function exactWalletSessionWithOperationCredentialOrThrow(result, message) {
48
48
  case "upgrade_required": throw new WalletSessionAuthorizationUpgradeRequiredError(message);
49
49
  }
50
50
  }
51
- async function readExactOwnerLaneWalletSession(args) {
52
- const read = await walletSessionAuthorizations.readExactActiveForWallet({
53
- walletId: args.walletId,
54
- authorityId: args.authorityId,
55
- authMethodId: args.authMethodId
56
- });
57
- switch (read.kind) {
58
- case "found":
59
- if (!exactWalletSessionMatchesAuthorityScope({
60
- record: read.record,
61
- operationCredential: read.operationCredential,
62
- scope: args
63
- })) throw new Error("[SigningEngine] selected Wallet Authority session identity mismatch");
64
- if (read.record.expiresAtMs <= Date.now()) throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: expired");
65
- return;
66
- case "missing": throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: missing");
67
- case "upgrade_required": throw new WalletSessionAuthorizationUpgradeRequiredError("[SigningEngine] selected Wallet Authority Wallet Session requires a newer client");
68
- case "corrupt": throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: corrupt");
69
- case "persistence_unavailable": throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: persistence_unavailable");
70
- default: return assertNeverWalletSessionAuthorizationRead(read);
71
- }
72
- }
73
- function assertNeverWalletSessionAuthorizationRead(value) {
74
- throw new Error(`Unknown exact Wallet Session authorization read: ${String(value)}`);
75
- }
76
51
  //#endregion
77
- export { exactWalletSessionWithOperationCredentialOrThrow, readExactOwnerLaneWalletSession, readExactWalletSessionAuthentication };
52
+ export { exactWalletSessionWithOperationCredentialOrThrow, readExactWalletSessionAuthentication };
78
53
 
79
54
  //# sourceMappingURL=exactWalletSessionReader.js.map
@@ -71,7 +71,7 @@ import { reconcileTempoNonceLane, reportTempoBroadcastAccepted, reportTempoBroad
71
71
  import { UserConfirmationType } from "../../core/signingEngine/stepUpConfirmation/userConfirmationType.js";
72
72
  import { exportKeypairWithUI, resolveExactKeyExportLane } from "../../core/signingEngine/flows/recovery/public.js";
73
73
  import { activateAuthenticatedWalletState, finalizeWalletEcdsaRegistration, finalizeWalletEd25519SignerRegistration, getAllUsers, getAuthenticationCredentialsSerialized, getLastUser, getUserBySignerSlot, getWalletNearProvisioningState, hasPasskeyCredential, nearAuthenticatorsByAccount, requestRegistrationCredentialConfirmation, rollbackUserRegistration, rollbackWalletEd25519SignerRegistration, setLastUser, setWalletNearProvisioningState, storeAuthenticator, storeUserData, storeWalletEcdsaRecoverySignerRecords, storeWalletEcdsaSignerRecords, storeWalletEd25519RecoveryRegistrationData, storeWalletEd25519RegistrationData, storeWalletEmailOtpEcdsaRegistrationData, storeWalletEmailOtpEcdsaSignerRecords, storeWalletEmailOtpEd25519RegistrationData, storeWalletEmailOtpMixedRegistrationData, storeWalletMixedRegistrationData } from "../../core/signingEngine/flows/registration/public.js";
74
- import { exactWalletSessionWithOperationCredentialOrThrow, readExactOwnerLaneWalletSession } from "../../core/signingEngine/session/identity/exactWalletSessionReader.js";
74
+ import { exactWalletSessionWithOperationCredentialOrThrow } from "../../core/signingEngine/session/identity/exactWalletSessionReader.js";
75
75
  import { enrollEmailOtpInternal, loginWithEmailOtpEcdsaCapabilityInternal, prepareEmailOtpRegistrationEnrollmentMaterialInternal, refreshEmailOtpSigningSession, requestEmailOtpSigningSessionChallenge } from "../../core/signingEngine/flows/signEvmFamily/emailOtpPublic.js";
76
76
  import { __isWalletIframeHostMode } from "../../core/browser/walletIframe/host-mode.js";
77
77
  import { destroyUnlockedWalletEd25519ExportRootCapabilitiesV1, establishUnlockedWalletEd25519ExportRootCapabilityV1, setUnlockedCustodyEnvelopeUpgradeSinkV1 } from "../../core/signingEngine/walletCustody/unlockedEd25519ExportRootCapability.js";
@@ -1141,7 +1141,7 @@ var BrowserSigningSurface = class {
1141
1141
  emailOtpSessions: this.emailOtpSessions,
1142
1142
  sealedSigningSessionStore: deps.sealedSigningSessionStore
1143
1143
  }, input),
1144
- resolveOwnerLaneScope: (walletId) => this.resolveActiveOwnerLaneScope(walletId)
1144
+ resolveOwnerLaneScope: (walletId) => this.resolveSelectedOwnerLaneScope(walletId)
1145
1145
  });
1146
1146
  this.enginePorts = createBrowserSigningSurfaceEnginePorts({
1147
1147
  runtimePorts: this.runtimePorts,
@@ -1167,7 +1167,7 @@ var BrowserSigningSurface = class {
1167
1167
  workerWarmupPolicy: deps.workerWarmupPolicy,
1168
1168
  getTheme: () => this.appearance.theme.mode,
1169
1169
  ensureSealedRefreshStartupParity: () => this.ensureSealedRefreshStartupParity(),
1170
- resolveOwnerLaneScope: (walletId) => this.resolveActiveOwnerLaneScope(walletId),
1170
+ resolveOwnerLaneScope: (walletId) => this.resolveSelectedOwnerLaneScope(walletId),
1171
1171
  getEnginePorts: () => this.enginePorts,
1172
1172
  getRegistrationPublicDeps: () => this.registrationPublicDeps,
1173
1173
  prepareNearEd25519YaoMaterialBoundary: this.prepareExactNearEd25519YaoMaterialBoundary.bind(this)
@@ -1488,11 +1488,11 @@ var BrowserSigningSurface = class {
1488
1488
  return await readOwnerScopedSigningLanes(this.sessionPublicDeps, args);
1489
1489
  }
1490
1490
  /**
1491
- * R103C derivation chain for post-login operations: the unique active Wallet
1492
- * Session authority resolves through the active wallet auth method to one
1493
- * exact owner scope. Callers never supply credential or slot hints.
1491
+ * Resolves the selected active Wallet Authority and auth method to one exact
1492
+ * owner scope. Session availability is resolved by the lane inventory so an
1493
+ * expired session can enter operation step-up.
1494
1494
  */
1495
- async resolveActiveOwnerLaneScope(walletId) {
1495
+ async resolveSelectedOwnerLaneScope(walletId) {
1496
1496
  const parsedWalletId = parseWalletId(walletId);
1497
1497
  if (!parsedWalletId.ok) throw new Error(parsedWalletId.error.message);
1498
1498
  const stores = {
@@ -1506,13 +1506,6 @@ var BrowserSigningSurface = class {
1506
1506
  const { selection, authMethod, authority } = selected;
1507
1507
  if (selection.walletId !== parsedWalletId.value || selection.walletAuthMethodId !== authMethod.walletAuthMethodId || authMethod.walletId !== parsedWalletId.value || authMethod.walletAuthorityId !== authority.authorityId || authority.walletId !== parsedWalletId.value) throw new Error("[SigningEngine] selected Wallet Authority identity mismatch");
1508
1508
  if (selection.lockState !== "unlocked" || authMethod.status !== "active" || authority.state !== "active") throw new Error("[SigningEngine] selected Wallet Authority is inactive or locked");
1509
- await readExactOwnerLaneWalletSession({
1510
- walletId: parsedWalletId.value,
1511
- authorityId: authority.authorityId,
1512
- authMethodId: authMethod.walletAuthMethodId,
1513
- authorityDigestB64u: authority.authorityDigestB64u,
1514
- authorityRevocationEpoch: authority.revocationEpoch
1515
- });
1516
1509
  if (authority.provenance.kind === "device_link" && authMethod.kind === "passkey" && authority.signerActivations.ed25519) return buildExactPasskeyOwnerLaneScope({
1517
1510
  authMethod,
1518
1511
  signerSlot: await resolveLinkedPasskeyOwnerSignerSlot({
@@ -1,4 +1,4 @@
1
- import { WalletSessionAuthorizationUpgradeRequiredError, walletSessionAuthorizations } from "../../../indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js";
1
+ import { WalletSessionAuthorizationUpgradeRequiredError } from "../../../indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js";
2
2
  //#region src/core/signingEngine/session/identity/exactWalletSessionReader.ts
3
3
  function exactWalletSessionMatchesAuthorityScope(args) {
4
4
  const { record, operationCredential, scope } = args;
@@ -48,32 +48,7 @@ function exactWalletSessionWithOperationCredentialOrThrow(result, message) {
48
48
  case "upgrade_required": throw new WalletSessionAuthorizationUpgradeRequiredError(message);
49
49
  }
50
50
  }
51
- async function readExactOwnerLaneWalletSession(args) {
52
- const read = await walletSessionAuthorizations.readExactActiveForWallet({
53
- walletId: args.walletId,
54
- authorityId: args.authorityId,
55
- authMethodId: args.authMethodId
56
- });
57
- switch (read.kind) {
58
- case "found":
59
- if (!exactWalletSessionMatchesAuthorityScope({
60
- record: read.record,
61
- operationCredential: read.operationCredential,
62
- scope: args
63
- })) throw new Error("[SigningEngine] selected Wallet Authority session identity mismatch");
64
- if (read.record.expiresAtMs <= Date.now()) throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: expired");
65
- return;
66
- case "missing": throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: missing");
67
- case "upgrade_required": throw new WalletSessionAuthorizationUpgradeRequiredError("[SigningEngine] selected Wallet Authority Wallet Session requires a newer client");
68
- case "corrupt": throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: corrupt");
69
- case "persistence_unavailable": throw new Error("[SigningEngine] selected Wallet Authority session is unavailable: persistence_unavailable");
70
- default: return assertNeverWalletSessionAuthorizationRead(read);
71
- }
72
- }
73
- function assertNeverWalletSessionAuthorizationRead(value) {
74
- throw new Error(`Unknown exact Wallet Session authorization read: ${String(value)}`);
75
- }
76
51
  //#endregion
77
- export { exactWalletSessionWithOperationCredentialOrThrow, readExactOwnerLaneWalletSession, readExactWalletSessionAuthentication };
52
+ export { exactWalletSessionWithOperationCredentialOrThrow, readExactWalletSessionAuthentication };
78
53
 
79
54
  //# sourceMappingURL=exactWalletSessionReader.js.map