@seams/wallet-server 0.6.2 → 0.7.1

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 (705) hide show
  1. package/artifact-manifest.json +147 -32
  2. package/cloudflare-router-ab/build/deriver-a/build-stamp.json +1 -0
  3. package/cloudflare-router-ab/build/deriver-a/index.js +2 -2
  4. package/cloudflare-router-ab/build/deriver-a/index_bg.wasm +0 -0
  5. package/cloudflare-router-ab/build/deriver-b/build-stamp.json +1 -0
  6. package/cloudflare-router-ab/build/deriver-b/index.js +2 -2
  7. package/cloudflare-router-ab/build/deriver-b/index_bg.wasm +0 -0
  8. package/cloudflare-router-ab/build/local-tools/darwin-arm64/router_ab_local_init +0 -0
  9. package/cloudflare-router-ab/build/local-tools/darwin-x64/router_ab_local_init +0 -0
  10. package/cloudflare-router-ab/build/local-tools/linux-x64/router_ab_local_init +0 -0
  11. package/cloudflare-router-ab/build/router/build-stamp.json +1 -0
  12. package/cloudflare-router-ab/build/router/index.js +2 -2
  13. package/cloudflare-router-ab/build/router/index_bg.wasm +0 -0
  14. package/cloudflare-router-ab/build/signing-worker/build-stamp.json +1 -0
  15. package/cloudflare-router-ab/build/signing-worker/index.js +2 -2
  16. package/cloudflare-router-ab/build/signing-worker/index_bg.wasm +0 -0
  17. package/cloudflare-router-ab/build/tenant-root-control-plane/build-stamp.json +1 -0
  18. package/cloudflare-router-ab/build/tenant-root-control-plane/index.js +2 -2
  19. package/cloudflare-router-ab/build/tenant-root-control-plane/index_bg.wasm +0 -0
  20. package/cloudflare-router-ab/migrations/deriver-a/0012_tenant_root_creation_tombstones.sql +20 -0
  21. package/cloudflare-router-ab/migrations/deriver-a/0013_tenant_root_root_use_admissions.sql +32 -0
  22. package/cloudflare-router-ab/migrations/deriver-a/0014_tenant_root_refresh_supersessions.sql +24 -0
  23. package/cloudflare-router-ab/migrations/deriver-a/0015_tenant_root_root_use_attempts.sql +56 -0
  24. package/cloudflare-router-ab/migrations/deriver-a/0016_tenant_root_root_use_admission_settlement.sql +5 -0
  25. package/cloudflare-router-ab/migrations/deriver-a/0017_tenant_root_root_use_admission_claims.sql +64 -0
  26. package/cloudflare-router-ab/migrations/deriver-a/0018_tenant_root_recovery_retention_keys.sql +12 -0
  27. package/cloudflare-router-ab/migrations/deriver-b/0012_tenant_root_creation_tombstones.sql +20 -0
  28. package/cloudflare-router-ab/migrations/deriver-b/0013_tenant_root_root_use_admissions.sql +32 -0
  29. package/cloudflare-router-ab/migrations/deriver-b/0014_tenant_root_refresh_supersessions.sql +24 -0
  30. package/cloudflare-router-ab/migrations/deriver-b/0015_tenant_root_root_use_attempts.sql +56 -0
  31. package/cloudflare-router-ab/migrations/deriver-b/0016_tenant_root_root_use_admission_settlement.sql +5 -0
  32. package/cloudflare-router-ab/migrations/deriver-b/0017_tenant_root_root_use_admission_claims.sql +64 -0
  33. package/cloudflare-router-ab/migrations/deriver-b/0018_tenant_root_recovery_retention_keys.sql +12 -0
  34. package/cloudflare-router-ab/scripts/bootstrap-local-tenant-root.mjs +81 -16
  35. package/cloudflare-router-ab/scripts/prepare-local-runtime-config.mjs +102 -9
  36. package/cloudflare-router-ab/scripts/start-local-role-workers.mjs +4 -1
  37. package/cloudflare-router-ab/wrangler.deriver-a.toml +24 -0
  38. package/cloudflare-router-ab/wrangler.router.toml +13 -0
  39. package/dist/esm/authorization/capabilityPolicy.js +1 -1
  40. package/dist/esm/authorization/domain.js +2 -2
  41. package/dist/esm/authorization/factorEvidence.js +6 -100
  42. package/dist/esm/authorization/service.js +34 -2
  43. package/dist/esm/authorization/vaultProxyUse.js +3 -4
  44. package/dist/esm/cloud-host.js +16 -11
  45. package/dist/esm/core/EmailOtpRecords.js +19 -1
  46. package/dist/esm/core/EmailOtpStores.js +323 -924
  47. package/dist/esm/core/IdentityStore.js +44 -235
  48. package/dist/esm/core/NearPublicKeyStore.js +21 -63
  49. package/dist/esm/core/RegistrationCeremonyStore.js +3 -1793
  50. package/dist/esm/core/ThresholdService/config.js +1 -82
  51. package/dist/esm/core/ThresholdService/kv.js +3 -3
  52. package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.js +37 -5
  53. package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.js +4 -74
  54. package/dist/esm/core/ThresholdService/stores/CloudflareDurableObjectStore.js +15 -51
  55. package/dist/esm/core/ThresholdService/stores/KeyStore.js +3 -3
  56. package/dist/esm/core/ThresholdService/stores/SessionStore.js +5 -81
  57. package/dist/esm/core/ThresholdService/stores/WalletSessionStore.js +185 -290
  58. package/dist/esm/core/ThresholdService/validation.js +18 -230
  59. package/dist/esm/core/WalletAuthMethodStore.js +22 -79
  60. package/dist/esm/core/WalletStore.js +58 -185
  61. package/dist/esm/core/WebAuthnAuthenticatorStore.js +57 -340
  62. package/dist/esm/core/WebAuthnCredentialBindingStore.js +90 -369
  63. package/dist/esm/core/WebAuthnLoginChallengeStore.js +17 -397
  64. package/dist/esm/core/WebAuthnSyncChallengeStore.js +17 -397
  65. package/dist/esm/core/authService/AuthService.js +2 -19
  66. package/dist/esm/core/authService/emailOtpChallengeProof.js +1 -1
  67. package/dist/esm/core/authService/emailOtpChallenges.js +1 -1
  68. package/dist/esm/core/authService/emailOtpConfig.js +1 -32
  69. package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +6 -153
  70. package/dist/esm/core/authService/googleEmailOtpRegistration.js +1 -1
  71. package/dist/esm/core/authService/nearPrivateKeySigning.js +7 -15
  72. package/dist/esm/core/authService/nearTransactions.js +2 -1
  73. package/dist/esm/core/authService/oidcVerification.js +3 -4
  74. package/dist/esm/core/authService/rateLimits.js +1 -31
  75. package/dist/esm/core/authService/registrationThresholdHelpers.js +2 -103
  76. package/dist/esm/core/authService/storeRegistry.js +2 -13
  77. package/dist/esm/core/authService/thresholdEcdsaKeyInventory.js +4 -5
  78. package/dist/esm/core/authService/webauthn.js +15 -50
  79. package/dist/esm/core/authService/webauthnOidcHelpers.js +1 -6
  80. package/dist/esm/core/authService/webauthnVerificationOutcomes.js +60 -0
  81. package/dist/esm/core/authService/webauthnWalletBinding.js +2 -122
  82. package/dist/esm/core/d1IdentityStore.js +32 -66
  83. package/dist/esm/core/d1TenantStore.js +82 -0
  84. package/dist/esm/core/d1WalletAuthMethodStore.js +92 -143
  85. package/dist/esm/core/d1WalletStore.js +14 -12
  86. package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +10 -8
  87. package/dist/esm/core/deviceLinking/linkedDeviceManagement.js +25 -3
  88. package/dist/esm/core/deviceLinking/linkedDeviceSession.js +6 -895
  89. package/dist/esm/core/deviceLinking/linkedDeviceSessionApproval.js +102 -0
  90. package/dist/esm/core/deviceLinking/linkedDeviceSessionRecord.js +668 -0
  91. package/dist/esm/core/emailOtpD1Statements.js +383 -0
  92. package/dist/esm/core/hostedAccountIds.js +2 -2
  93. package/dist/esm/core/keyMaterialBrands.js +2 -48
  94. package/dist/esm/core/nearRelayerAccountProvisioning.js +25 -150
  95. package/dist/esm/core/nearSignerWasmRuntime.js +1 -4
  96. package/dist/esm/core/rpcClients/near/NearClient.js +15 -218
  97. package/dist/esm/core/signingLanes/LaneEnrollmentActivation.js +1 -1
  98. package/dist/esm/core/signingLanes/LaneLifecycleApplicationService.js +2 -4
  99. package/dist/esm/core/signingLanes/LaneLifecycleStore.js +0 -24
  100. package/dist/esm/core/signingLanes/WalletExecutionLaneProjection.js +5 -5
  101. package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +3 -8
  102. package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +1 -4
  103. package/dist/esm/core/storeBackends.js +208 -0
  104. package/dist/esm/core/thresholdEcdsaChainTarget.js +1 -7
  105. package/dist/esm/core/webAuthnD1Statements.js +92 -0
  106. package/dist/esm/core/webAuthnStoreBackends.js +198 -0
  107. package/dist/esm/hosted-wallet-gateway.js +33 -16
  108. package/dist/esm/index.js +2 -2
  109. package/dist/esm/local-hosted-wallet-gateway-worker.js +2 -23
  110. package/dist/esm/localHostedWalletGatewayHandler.js +299 -0
  111. package/dist/esm/localIntendedEcdsaFinalizeFault.js +85 -0
  112. package/dist/esm/localIntendedLinkExecuteFault.js +140 -0
  113. package/dist/esm/localIntendedRevokeFault.js +106 -0
  114. package/dist/esm/localIntendedSessionAdmissionFault.js +139 -0
  115. package/dist/esm/localIntendedYaoExportFault.js +117 -0
  116. package/dist/esm/localIntendedYaoFault.js +13 -16
  117. package/dist/esm/localIntendedYaoFinalizeFault.js +99 -0
  118. package/dist/esm/localIntendedYaoRecoveryFault.js +102 -0
  119. package/dist/esm/localIntendedYaoSigningFault.js +127 -0
  120. package/dist/esm/router/auth/authRequestValidation.js +1 -1
  121. package/dist/esm/router/auth/commonRouterUtils.js +10 -2
  122. package/dist/esm/router/auth/walletSessionFailure.js +1 -14
  123. package/dist/esm/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.js +23 -0
  124. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +86 -66
  125. package/dist/esm/router/cloudflare/d1/authorization/authorizedOperationStatements.js +208 -0
  126. package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +246 -296
  127. package/dist/esm/router/cloudflare/d1/authorization/persistedWalletSessionAuthorization.js +14 -0
  128. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +62 -63
  129. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.js +3 -6
  130. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.js +1 -19
  131. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceManagementService.js +4 -3
  132. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.js +52 -9
  133. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.js +3 -6
  134. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRevocation.js +100 -0
  135. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.js +7 -10
  136. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.js +33 -124
  137. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.js +2 -2
  138. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.js +9 -17
  139. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.js +6 -6
  140. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkSourceReader.js +3 -1
  141. package/dist/esm/router/cloudflare/d1/deviceLinking/index.js +3 -3
  142. package/dist/esm/router/cloudflare/d1/deviceLinking/installedEcdsaAuthority.js +69 -0
  143. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.js +39 -68
  144. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.js +69 -0
  145. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoProductRegistrationPartitionedStateStore.js +2 -2
  146. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.js +26 -71
  147. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.js +20 -3
  148. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.js +7 -94
  149. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.js +5 -47
  150. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.js +26 -123
  151. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +0 -2
  152. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +2 -2
  153. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.js +15 -134
  154. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.js +54 -260
  155. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.js +1 -1
  156. package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +1 -28
  157. package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +2 -8
  158. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.js +1 -1
  159. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +3 -3
  160. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +23 -73
  161. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.js +15 -2
  162. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.js +12 -203
  163. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +16 -32
  164. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +29 -72
  165. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +4 -1
  166. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +3 -1
  167. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +6 -30
  168. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +261 -205
  169. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetup.js +5 -3
  170. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.js +2 -2
  171. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.js +3 -3
  172. package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +43 -25
  173. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.js +0 -1
  174. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.js +1 -1
  175. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneRecords.js +2 -1
  176. package/dist/esm/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.js +2 -60
  177. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerService.js +158 -19
  178. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.js +19 -49
  179. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodRevocationReplayStore.js +100 -0
  180. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodService.js +132 -33
  181. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorityStore.js +83 -4
  182. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.js +14 -49
  183. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +4 -4
  184. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +22 -116
  185. package/dist/esm/router/cloudflare/runtime/createSelfHostedCloudflareSigningWorker.js +1 -2
  186. package/dist/esm/router/cloudflare/runtime/walletConsoleTenantRootLineage.js +11 -2
  187. package/dist/esm/router/cloudflare/runtime/walletGateway.js +1 -1
  188. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +5 -6
  189. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +2 -1
  190. package/dist/esm/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.js +48 -21
  191. package/dist/esm/router/cloudflare.js +11480 -12853
  192. package/dist/esm/router/domains/ecdsa/routerAbEcdsaStrictRegistration.js +16 -5
  193. package/dist/esm/router/domains/ecdsa/thresholdEcdsaRequestValidation.js +2 -8
  194. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision.js +33 -0
  195. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js +17 -9
  196. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.js +29 -431
  197. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.js +7 -2
  198. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.js +2 -1
  199. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.js +70 -2
  200. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.js +134 -169
  201. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.js +77 -162
  202. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.js +205 -51
  203. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.js +29 -11
  204. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.js +182 -55
  205. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.js +2 -1
  206. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.js +63 -247
  207. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.js +3 -2
  208. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.js +87 -132
  209. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.js +5 -4
  210. package/dist/esm/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.js +45 -0
  211. package/dist/esm/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.js +1 -1
  212. package/dist/esm/router/domains/emailOtp/emailOtpExportPolicy.js +1 -42
  213. package/dist/esm/router/domains/emailOtp/emailOtpRequestValidation.js +1 -6
  214. package/dist/esm/router/domains/emailOtp/emailOtpSessionRouteHelpers.js +1 -142
  215. package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.js +1 -1
  216. package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationCommit.js +2 -2
  217. package/dist/esm/router/domains/passkeyCustody/walletRecoveryFinalization.js +23 -45
  218. package/dist/esm/router/domains/passkeyCustody/walletRecoveryKeyManifest.js +5 -5
  219. package/dist/esm/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.js +1 -1
  220. package/dist/esm/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.js +827 -0
  221. package/dist/esm/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.js +698 -0
  222. package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmission.js +209 -0
  223. package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.js +16 -15
  224. package/dist/esm/router/domains/signingOperations/routerAbOperationStepUp.js +313 -0
  225. package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +62 -2159
  226. package/dist/esm/router/domains/tenantRoot/tenantRootIdentityResolution.js +1 -1
  227. package/dist/esm/router/domains/walletRegistration/walletRegistrationRoutes.js +18 -22
  228. package/dist/esm/router/domains/walletRegistration/walletRegistrationSetupPayload.js +3 -4
  229. package/dist/esm/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.js +2 -2
  230. package/dist/esm/router/domains/walletUnlock/walletUnlockRouteHandlers.js +97 -150
  231. package/dist/esm/router/express.js +5967 -6410
  232. package/dist/esm/router/framework/http.js +1 -4
  233. package/dist/esm/router/framework/ror/normalize.js +1 -1
  234. package/dist/esm/router/framework/routerApiRouteSurface.js +1 -1
  235. package/dist/esm/router/node/nodeHostedWalletGateway.js +64 -0
  236. package/dist/esm/router/node/nodeHostedWalletGatewayCheck.js +163 -0
  237. package/dist/esm/router/node/nodeHostedWalletGatewayMain.js +120 -0
  238. package/dist/esm/router/node/nodeHttp.js +79 -0
  239. package/dist/esm/router/node/nodeSqlite.js +43 -0
  240. package/dist/esm/router/node/signerSqlMigrations.js +48 -0
  241. package/dist/esm/router/transport/fetch/createFetchRouter.js +1 -1
  242. package/dist/esm/router/transport/fetch/routes/deviceLinking.js +16 -18
  243. package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +3 -5
  244. package/dist/esm/router/transport/fetch/routes/deviceManagement.js +15 -24
  245. package/dist/esm/router/transport/fetch/routes/normalSigningRouterProxy.js +3 -16
  246. package/dist/esm/router/transport/fetch/routes/passkeyCustody.js +144 -461
  247. package/dist/esm/router/transport/fetch/routes/sessions.js +4 -4
  248. package/dist/esm/router/transport/fetch/routes/syncAccount.js +4 -6
  249. package/dist/esm/router/transport/fetch/routes/syncAccountBootstrap.js +2 -2
  250. package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +69 -23
  251. package/dist/esm/router/transport/fetch/routes/thresholdEd25519.js +52 -27
  252. package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +1 -1
  253. package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +1 -1
  254. package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +1 -2
  255. package/dist/esm/shared-ts/src/authorization/walletAuthority.js +99 -227
  256. package/dist/esm/shared-ts/src/authorization/walletCustodyOperation.js +4 -6
  257. package/dist/esm/shared-ts/src/device-linking/activeWalletSession.js +74 -0
  258. package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +50 -0
  259. package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +8 -9
  260. package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +3 -1
  261. package/dist/esm/shared-ts/src/device-linking/deviceManagement.js +55 -0
  262. package/dist/esm/shared-ts/src/device-linking/digests.js +10 -65
  263. package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +3 -1
  264. package/dist/esm/shared-ts/src/device-linking/index.js +4 -1
  265. package/dist/esm/shared-ts/src/device-linking/parsers.js +510 -1063
  266. package/dist/esm/shared-ts/src/device-linking/requestProof.js +5 -14
  267. package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +6 -9
  268. package/dist/esm/shared-ts/src/device-linking/walletSessionCredentialDelivery.js +9 -9
  269. package/dist/esm/shared-ts/src/device-linking/wireFields.js +59 -0
  270. package/dist/esm/shared-ts/src/near/nearClient.js +252 -0
  271. package/dist/esm/shared-ts/src/passkey-custody/credentialActivity.js +3 -1
  272. package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +7 -5
  273. package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +6 -4
  274. package/dist/esm/shared-ts/src/passkey-custody/primitives.js +5 -39
  275. package/dist/esm/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js +1 -5
  276. package/dist/esm/shared-ts/src/signing-lanes/index.js +3 -3
  277. package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +5 -12
  278. package/dist/esm/shared-ts/src/signing-lanes/participantDigest.js +5 -14
  279. package/dist/esm/shared-ts/src/signing-lanes/participants.js +2 -5
  280. package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +7 -5
  281. package/dist/esm/shared-ts/src/signing-lanes/rotationDigests.js +6 -45
  282. package/dist/esm/shared-ts/src/signing-lanes/rotationParsers.js +423 -1511
  283. package/dist/esm/shared-ts/src/signing-lanes/rotationProtocolParsers.js +323 -0
  284. package/dist/esm/shared-ts/src/signing-lanes/rotationWireFields.js +59 -0
  285. package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +1 -1
  286. package/dist/esm/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js +1 -2
  287. package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +49 -0
  288. package/dist/esm/shared-ts/src/utils/addAuthMethodRegistration.js +3 -4
  289. package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +8 -1
  290. package/dist/esm/shared-ts/src/utils/digestEncoding.js +63 -0
  291. package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +2 -2
  292. package/dist/esm/shared-ts/src/utils/exactRecord.js +44 -0
  293. package/dist/esm/shared-ts/src/utils/registrationAuthMethodInput.js +127 -0
  294. package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +2 -2
  295. package/dist/esm/shared-ts/src/utils/registrationIds.js +280 -0
  296. package/dist/esm/shared-ts/src/utils/registrationIntent.js +4 -1170
  297. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +429 -0
  298. package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +11 -136
  299. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +3 -163
  300. package/dist/esm/shared-ts/src/utils/routerAbEd25519YaoDigests.js +160 -0
  301. package/dist/esm/shared-ts/src/utils/routerAbNormalSigningIdentity.js +1 -4
  302. package/dist/esm/shared-ts/src/utils/routerAbPublicKeyset.js +7 -15
  303. package/dist/esm/shared-ts/src/utils/validation.js +37 -6
  304. package/dist/esm/shared-ts/src/utils/walletAuthMethodRecord.js +362 -0
  305. package/dist/esm/shared-ts/src/utils/wireSchema.js +77 -0
  306. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +1 -1
  307. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeReservation.js +1 -1
  308. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +7 -11
  309. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +4 -8
  310. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.js +3 -1
  311. package/dist/esm/storage/d1Sql.js +10 -1
  312. package/dist/esm/storage/syncSqlite.js +79 -0
  313. package/dist/esm/threshold/session/signingSessionSeal/crypto/cipher.js +1 -1
  314. package/dist/esm/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.js +1 -1
  315. package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +1 -2
  316. package/dist/esm/threshold/session/signingSessionSeal/options.js +1 -1
  317. package/dist/esm/threshold/session/signingSessionSeal/transport/shared.js +18 -55
  318. package/dist/esm/threshold/statusCodes.js +1 -1
  319. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +3 -3
  320. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
  321. package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker_bg.wasm +0 -0
  322. package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +8 -26
  323. package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +0 -8
  324. package/dist/types/shared-ts/src/authorization/operationFingerprint.d.ts +1 -3
  325. package/dist/types/shared-ts/src/authorization/walletAuthority.d.ts +25 -12
  326. package/dist/types/shared-ts/src/authorization/walletSessionIssuance.d.ts +2 -1
  327. package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +3 -2
  328. package/dist/types/shared-ts/src/device-linking/authorityActivation.d.ts +5 -0
  329. package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +2 -5
  330. package/dist/types/shared-ts/src/device-linking/contracts.d.ts +8 -11
  331. package/dist/types/shared-ts/src/device-linking/contracts.typecheck.d.ts +2 -1
  332. package/dist/types/shared-ts/src/device-linking/deviceManagement.d.ts +7 -0
  333. package/dist/types/shared-ts/src/device-linking/digests.d.ts +0 -5
  334. package/dist/types/shared-ts/src/device-linking/ed25519ExportRoot.d.ts +3 -2
  335. package/dist/types/shared-ts/src/device-linking/index.d.ts +2 -0
  336. package/dist/types/shared-ts/src/device-linking/parsers.d.ts +4 -41
  337. package/dist/types/shared-ts/src/device-linking/requestProof.d.ts +0 -1
  338. package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +3 -2
  339. package/dist/types/shared-ts/src/device-linking/walletSessionCredentialDelivery.d.ts +2 -1
  340. package/dist/types/shared-ts/src/device-linking/wireFields.d.ts +26 -0
  341. package/dist/types/shared-ts/src/near/actions.d.ts +4 -4
  342. package/dist/types/shared-ts/src/near/delegate.d.ts +3 -2
  343. package/dist/types/shared-ts/src/near/nearClient.d.ts +145 -0
  344. package/dist/types/shared-ts/src/passkey-custody/ceremonyCommitPayload.d.ts +0 -22
  345. package/dist/types/shared-ts/src/passkey-custody/credentialActivity.d.ts +2 -4
  346. package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +9 -18
  347. package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +8 -24
  348. package/dist/types/shared-ts/src/passkey-custody/index.d.ts +0 -2
  349. package/dist/types/shared-ts/src/passkey-custody/primitives.d.ts +0 -14
  350. package/dist/types/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.d.ts +0 -15
  351. package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +2 -51
  352. package/dist/types/shared-ts/src/signing-lanes/index.d.ts +1 -2
  353. package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.d.ts +1 -2
  354. package/dist/types/shared-ts/src/signing-lanes/participantDigest.d.ts +5 -27
  355. package/dist/types/shared-ts/src/signing-lanes/participants.d.ts +0 -11
  356. package/dist/types/shared-ts/src/signing-lanes/recordParsers.d.ts +6 -53
  357. package/dist/types/shared-ts/src/signing-lanes/records.d.ts +1 -2
  358. package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +15 -37
  359. package/dist/types/shared-ts/src/signing-lanes/rotationDigests.d.ts +1 -20
  360. package/dist/types/shared-ts/src/signing-lanes/rotationLifecycle.d.ts +4 -25
  361. package/dist/types/shared-ts/src/signing-lanes/rotationParsers.d.ts +1 -41
  362. package/dist/types/shared-ts/src/signing-lanes/rotationProtocolParsers.d.ts +6 -0
  363. package/dist/types/shared-ts/src/signing-lanes/rotationWireFields.d.ts +20 -0
  364. package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +2 -35
  365. package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +8 -35
  366. package/dist/types/shared-ts/src/threshold/keyMaterialBrands.d.ts +25 -0
  367. package/dist/types/shared-ts/src/threshold/participants.d.ts +3 -9
  368. package/dist/types/shared-ts/src/threshold/secp256k1.d.ts +0 -37
  369. package/dist/types/shared-ts/src/threshold/sessionPolicy.d.ts +24 -0
  370. package/dist/types/shared-ts/src/threshold/signingRootScope.d.ts +2 -5
  371. package/dist/types/shared-ts/src/utils/addAuthMethodRegistration.d.ts +3 -4
  372. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +7 -108
  373. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.typecheck.d.ts +16 -3
  374. package/dist/types/shared-ts/src/utils/canonicalPrimitives.d.ts +2 -0
  375. package/dist/types/shared-ts/src/utils/digestEncoding.d.ts +9 -0
  376. package/dist/types/shared-ts/src/utils/domainIds.d.ts +1 -2
  377. package/dist/types/shared-ts/src/utils/ecdsaKeyFactsInventory.d.ts +1 -2
  378. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +5 -5
  379. package/dist/types/shared-ts/src/utils/emailOtpRecoveryKey.d.ts +0 -2
  380. package/dist/types/shared-ts/src/utils/errors.d.ts +0 -7
  381. package/dist/types/shared-ts/src/utils/exactRecord.d.ts +12 -0
  382. package/dist/types/shared-ts/src/utils/index.d.ts +5 -2
  383. package/dist/types/shared-ts/src/utils/jsonRpc.d.ts +3 -2
  384. package/dist/types/shared-ts/src/utils/near.d.ts +2 -1
  385. package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +7 -7
  386. package/dist/types/shared-ts/src/utils/normalize.d.ts +0 -4
  387. package/dist/types/shared-ts/src/utils/registrationAuthMethodInput.d.ts +184 -0
  388. package/dist/types/shared-ts/src/utils/registrationContracts.d.ts +76 -0
  389. package/dist/types/shared-ts/src/utils/registrationEstablishedSession.d.ts +1 -2
  390. package/dist/types/shared-ts/src/utils/registrationIds.d.ts +56 -0
  391. package/dist/types/shared-ts/src/utils/registrationIntent.d.ts +9 -514
  392. package/dist/types/shared-ts/src/utils/registrationSignerPlan.d.ts +142 -0
  393. package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +21 -92
  394. package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +14 -99
  395. package/dist/types/shared-ts/src/utils/routerAbEd25519YaoDigests.d.ts +39 -0
  396. package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +10 -15
  397. package/dist/types/shared-ts/src/utils/routerAbTraceContext.d.ts +2 -1
  398. package/dist/types/shared-ts/src/utils/secureRandomId.d.ts +0 -2
  399. package/dist/types/shared-ts/src/utils/signerDomain.d.ts +3 -35
  400. package/dist/types/shared-ts/src/utils/signerSlot.d.ts +0 -4
  401. package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +1 -7
  402. package/dist/types/shared-ts/src/utils/validation.d.ts +10 -10
  403. package/dist/types/shared-ts/src/utils/variant.d.ts +11 -0
  404. package/dist/types/shared-ts/src/utils/variant.typecheck.d.ts +22 -0
  405. package/dist/types/shared-ts/src/utils/walletAddSignerActivation.d.ts +2 -2
  406. package/dist/types/shared-ts/src/utils/walletAuthAuthority.d.ts +1 -58
  407. package/dist/types/shared-ts/src/utils/walletAuthMethodRecord.d.ts +104 -0
  408. package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +3 -7
  409. package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +3 -4
  410. package/dist/types/shared-ts/src/utils/wireSchema.d.ts +60 -0
  411. package/dist/types/shared-ts/src/wallet-recovery/backupAcknowledgement.d.ts +2 -1
  412. package/dist/types/shared-ts/src/wallet-recovery/index.d.ts +0 -1
  413. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeLocator.d.ts +0 -16
  414. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeReservation.d.ts +2 -11
  415. package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.d.ts +6 -18
  416. package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.d.ts +0 -2
  417. package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.d.ts +1 -3
  418. package/dist/types/wallet-server/src/authorization/capabilityPolicy.d.ts +0 -1
  419. package/dist/types/wallet-server/src/authorization/domain.d.ts +25 -5
  420. package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.d.ts +37 -0
  421. package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.typecheck.d.ts +2 -0
  422. package/dist/types/wallet-server/src/authorization/factorEvidence.d.ts +6 -7
  423. package/dist/types/wallet-server/src/authorization/service.d.ts +52 -3
  424. package/dist/types/wallet-server/src/cloud-host.d.ts +6 -2
  425. package/dist/types/wallet-server/src/core/EmailOtpRecords.d.ts +10 -1
  426. package/dist/types/wallet-server/src/core/EmailOtpStores.d.ts +16 -116
  427. package/dist/types/wallet-server/src/core/IdentityStore.d.ts +2 -7
  428. package/dist/types/wallet-server/src/core/NearPublicKeyStore.d.ts +6 -16
  429. package/dist/types/wallet-server/src/core/RegistrationCeremonyStore.d.ts +29 -90
  430. package/dist/types/wallet-server/src/core/ThresholdService/config.d.ts +0 -12
  431. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.d.ts +10 -3
  432. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.d.ts +17 -48
  433. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/internalServiceHttp.d.ts +2 -1
  434. package/dist/types/wallet-server/src/core/ThresholdService/stores/CloudflareDurableObjectStore.d.ts +4 -71
  435. package/dist/types/wallet-server/src/core/ThresholdService/stores/KeyStore.d.ts +2 -1
  436. package/dist/types/wallet-server/src/core/ThresholdService/stores/SessionStore.d.ts +4 -8
  437. package/dist/types/wallet-server/src/core/ThresholdService/stores/StoreConfig.d.ts +2 -1
  438. package/dist/types/wallet-server/src/core/ThresholdService/stores/WalletSessionStore.d.ts +1 -3
  439. package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +14 -47
  440. package/dist/types/wallet-server/src/core/WalletAuthMethodStore.d.ts +2 -7
  441. package/dist/types/wallet-server/src/core/WalletStore.d.ts +3 -8
  442. package/dist/types/wallet-server/src/core/WebAuthnAuthenticatorStore.d.ts +7 -22
  443. package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.d.ts +14 -36
  444. package/dist/types/wallet-server/src/core/WebAuthnLoginChallengeStore.d.ts +9 -34
  445. package/dist/types/wallet-server/src/core/WebAuthnSyncChallengeStore.d.ts +9 -34
  446. package/dist/types/wallet-server/src/core/authService/AuthService.d.ts +0 -3
  447. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeOperations.d.ts +6 -5
  448. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeProof.d.ts +9 -17
  449. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeVerification.d.ts +3 -2
  450. package/dist/types/wallet-server/src/core/authService/emailOtpChallenges.d.ts +7 -23
  451. package/dist/types/wallet-server/src/core/authService/emailOtpConfig.d.ts +3 -10
  452. package/dist/types/wallet-server/src/core/authService/emailOtpDelivery.d.ts +4 -3
  453. package/dist/types/wallet-server/src/core/authService/emailOtpGrant.d.ts +4 -3
  454. package/dist/types/wallet-server/src/core/authService/emailOtpRegistrationEnrollment.d.ts +3 -70
  455. package/dist/types/wallet-server/src/core/authService/emailOtpSeal.d.ts +3 -2
  456. package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +4 -3
  457. package/dist/types/wallet-server/src/core/authService/googleEmailOtpRegistration.d.ts +5 -8
  458. package/dist/types/wallet-server/src/core/authService/nearPrivateKeySigning.d.ts +3 -2
  459. package/dist/types/wallet-server/src/core/authService/nearPublicKeyMetadata.d.ts +2 -1
  460. package/dist/types/wallet-server/src/core/authService/nearTransactions.d.ts +2 -1
  461. package/dist/types/wallet-server/src/core/authService/oidcVerification.d.ts +4 -3
  462. package/dist/types/wallet-server/src/core/authService/rateLimits.d.ts +0 -3
  463. package/dist/types/wallet-server/src/core/authService/registrationThresholdHelpers.d.ts +0 -26
  464. package/dist/types/wallet-server/src/core/authService/storeRegistry.d.ts +0 -5
  465. package/dist/types/wallet-server/src/core/authService/thresholdEcdsaKeyInventory.d.ts +0 -23
  466. package/dist/types/wallet-server/src/core/authService/webauthn.d.ts +8 -16
  467. package/dist/types/wallet-server/src/core/authService/webauthnOidcHelpers.d.ts +7 -7
  468. package/dist/types/wallet-server/src/core/authService/webauthnVerificationOutcomes.d.ts +43 -0
  469. package/dist/types/wallet-server/src/core/authService/webauthnWalletBinding.d.ts +1 -28
  470. package/dist/types/wallet-server/src/core/d1IdentityStore.d.ts +6 -16
  471. package/dist/types/wallet-server/src/core/d1TenantStore.d.ts +51 -0
  472. package/dist/types/wallet-server/src/core/d1WalletAuthMethodStore.d.ts +11 -29
  473. package/dist/types/wallet-server/src/core/d1WalletStore.d.ts +6 -1
  474. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEd25519ExportRoot.d.ts +2 -1
  475. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEmailOtpGrant.d.ts +2 -1
  476. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceManagement.d.ts +44 -26
  477. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSession.d.ts +19 -217
  478. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionApproval.d.ts +8 -0
  479. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionRecord.d.ts +259 -0
  480. package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +2 -2
  481. package/dist/types/wallet-server/src/core/emailOtpD1Statements.d.ts +54 -0
  482. package/dist/types/wallet-server/src/core/hostedAccountIds.d.ts +0 -15
  483. package/dist/types/wallet-server/src/core/keyMaterialBrands.d.ts +4 -24
  484. package/dist/types/wallet-server/src/core/nearRelayerAccountProvisioning.d.ts +2 -3
  485. package/dist/types/wallet-server/src/core/nearSignerWasmRuntime.d.ts +0 -1
  486. package/dist/types/wallet-server/src/core/registrationContracts.d.ts +37 -108
  487. package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbNormalSigningRuntime.d.ts +5 -4
  488. package/dist/types/wallet-server/src/core/rpcClients/near/NearClient.d.ts +10 -106
  489. package/dist/types/wallet-server/src/core/signingLanes/LaneAggregateRevocationApplicationService.d.ts +4 -3
  490. package/dist/types/wallet-server/src/core/signingLanes/LaneEffectJournalStore.d.ts +2 -3
  491. package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleStore.d.ts +2 -3
  492. package/dist/types/wallet-server/src/core/signingLanes/WalletExecutionLaneProjection.d.ts +3 -9
  493. package/dist/types/wallet-server/src/core/signingLanes/ecdsaServerRetirement.d.ts +4 -4
  494. package/dist/types/wallet-server/src/core/signingLanes/ed25519ServerRetirement.d.ts +3 -3
  495. package/dist/types/wallet-server/src/core/storeBackends.d.ts +83 -0
  496. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.d.ts +13 -59
  497. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.typecheck.d.ts +51 -3
  498. package/dist/types/wallet-server/src/core/thresholdEcdsaChainTarget.d.ts +0 -1
  499. package/dist/types/wallet-server/src/core/types.d.ts +3 -24
  500. package/dist/types/wallet-server/src/core/webAuthnD1Statements.d.ts +29 -0
  501. package/dist/types/wallet-server/src/core/webAuthnStoreBackends.d.ts +96 -0
  502. package/dist/types/wallet-server/src/hosted-wallet-gateway.d.ts +11 -7
  503. package/dist/types/wallet-server/src/index.d.ts +1 -1
  504. package/dist/types/wallet-server/src/local-hosted-wallet-gateway-worker.d.ts +1 -4
  505. package/dist/types/wallet-server/src/localHostedWalletGatewayHandler.d.ts +12 -0
  506. package/dist/types/wallet-server/src/localIntendedEcdsaFinalizeFault.d.ts +33 -0
  507. package/dist/types/wallet-server/src/localIntendedLinkExecuteFault.d.ts +47 -0
  508. package/dist/types/wallet-server/src/localIntendedRevokeFault.d.ts +40 -0
  509. package/dist/types/wallet-server/src/localIntendedSessionAdmissionFault.d.ts +41 -0
  510. package/dist/types/wallet-server/src/localIntendedYaoExportFault.d.ts +41 -0
  511. package/dist/types/wallet-server/src/localIntendedYaoFault.d.ts +7 -1
  512. package/dist/types/wallet-server/src/localIntendedYaoFinalizeFault.d.ts +37 -0
  513. package/dist/types/wallet-server/src/localIntendedYaoRecoveryFault.d.ts +45 -0
  514. package/dist/types/wallet-server/src/localIntendedYaoSigningFault.d.ts +51 -0
  515. package/dist/types/wallet-server/src/router/auth/authRequestValidation.d.ts +10 -21
  516. package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +5 -10
  517. package/dist/types/wallet-server/src/router/auth/walletSessionFailure.d.ts +1 -4
  518. package/dist/types/wallet-server/src/router/auth/webAuthnCredentialCodecs.d.ts +3 -2
  519. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.d.ts +12 -0
  520. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.d.ts +3 -2
  521. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthConfig.d.ts +2 -2
  522. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthService.d.ts +1 -1
  523. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/authorizedOperationStatements.d.ts +30 -0
  524. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +45 -21
  525. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/persistedWalletSessionAuthorization.d.ts +3 -0
  526. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/walletSessionAuthorityProjection.d.ts +2 -1
  527. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.d.ts +57 -6
  528. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.d.ts +2 -3
  529. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.d.ts +8 -21
  530. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.d.ts +14 -1
  531. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRevocation.d.ts +49 -0
  532. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.d.ts +1 -1
  533. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.d.ts +4 -2
  534. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.d.ts +1 -1
  535. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.d.ts +2 -2
  536. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.d.ts +8 -4
  537. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.d.ts +3 -5
  538. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/installedEcdsaAuthority.d.ts +7 -0
  539. package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.d.ts +1 -2
  540. package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.d.ts +33 -0
  541. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.d.ts +1 -1
  542. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.d.ts +13 -3
  543. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.d.ts +24 -5
  544. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.d.ts +2 -3
  545. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.d.ts +1 -3
  546. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.d.ts +3 -4
  547. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +9 -8
  548. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.d.ts +0 -2
  549. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.d.ts +5 -4
  550. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.d.ts +1 -3
  551. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.d.ts +3 -21
  552. package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityRecords.d.ts +0 -23
  553. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1NearPublicKeyStore.d.ts +1 -2
  554. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.d.ts +11 -19
  555. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.d.ts +5 -54
  556. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.d.ts +7 -19
  557. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.d.ts +4 -3
  558. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.d.ts +8 -12
  559. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.d.ts +5 -8
  560. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.d.ts +10 -22
  561. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.d.ts +6 -2
  562. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.d.ts +10 -6
  563. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationService.d.ts +15 -22
  564. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetup.d.ts +5 -3
  565. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.d.ts +4 -3
  566. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.d.ts +5 -5
  567. package/dist/types/wallet-server/src/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.d.ts +3 -5
  568. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.d.ts +0 -1
  569. package/dist/types/wallet-server/src/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.d.ts +0 -16
  570. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.d.ts +29 -14
  571. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.d.ts +15 -12
  572. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodRevocationReplayStore.d.ts +71 -0
  573. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodService.d.ts +34 -24
  574. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorityStore.d.ts +44 -26
  575. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnRecords.d.ts +3 -7
  576. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +8 -19
  577. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleTenantRootLineage.d.ts +2 -1
  578. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletGateway.d.ts +1 -0
  579. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.d.ts +15 -2
  580. package/dist/types/wallet-server/src/router/cloudflare-adaptor.d.ts +2 -2
  581. package/dist/types/wallet-server/src/router/domains/ecdsa/routerAbEcdsaStrictRegistration.d.ts +9 -7
  582. package/dist/types/wallet-server/src/router/domains/ecdsa/thresholdEcdsaRequestValidation.d.ts +4 -4
  583. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision.d.ts +46 -0
  584. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.d.ts +5 -3
  585. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.d.ts +20 -79
  586. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.d.ts +2 -0
  587. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.d.ts +1 -1
  588. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.d.ts +4 -3
  589. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.d.ts +62 -42
  590. package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.d.ts +108 -32
  591. package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryActivation.typecheck.d.ts +5 -0
  592. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.d.ts +36 -5
  593. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.d.ts +5 -4
  594. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.d.ts +41 -50
  595. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.d.ts +2 -2
  596. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.d.ts +3 -3
  597. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.d.ts +6 -5
  598. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.d.ts +14 -4
  599. package/dist/types/wallet-server/src/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.d.ts +12 -1
  600. package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.d.ts +5 -5
  601. package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.d.ts +3 -4
  602. package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpExportPolicy.d.ts +2 -27
  603. package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRequestValidation.d.ts +1 -2
  604. package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRouteHandlers.d.ts +2 -1
  605. package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpSessionRouteHelpers.d.ts +2 -102
  606. package/dist/types/wallet-server/src/router/domains/passkeyCustody/envelopeRevocationAdmission.d.ts +2 -1
  607. package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.d.ts +3 -2
  608. package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.d.ts +1 -9
  609. package/dist/types/wallet-server/src/router/domains/passkeyCustody/registrationCustodyOutcome.d.ts +2 -1
  610. package/dist/types/wallet-server/src/router/domains/passkeyCustody/verifiedCustodyFactor.d.ts +2 -1
  611. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationAdmission.d.ts +2 -1
  612. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationCommit.d.ts +2 -28
  613. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryFinalization.d.ts +43 -1
  614. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryKeyManifest.d.ts +7 -7
  615. package/dist/types/wallet-server/src/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.d.ts +0 -3
  616. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.d.ts +165 -0
  617. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.d.ts +110 -0
  618. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmission.d.ts +360 -0
  619. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.d.ts +11 -10
  620. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.typecheck.d.ts +2 -0
  621. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbOperationStepUp.d.ts +165 -0
  622. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +16 -702
  623. package/dist/types/wallet-server/src/router/domains/signingOperations/walletExecutionAdmission.d.ts +5 -12
  624. package/dist/types/wallet-server/src/router/domains/syncAccount/syncAccountRequestValidation.d.ts +5 -4
  625. package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootCustodyLineage.d.ts +6 -1
  626. package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootIdentityResolution.d.ts +4 -7
  627. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationInputs.d.ts +2 -1
  628. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationRoutes.d.ts +8 -8
  629. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationSetupPayload.d.ts +4 -4
  630. package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.d.ts +4 -4
  631. package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRouteHandlers.d.ts +4 -62
  632. package/dist/types/wallet-server/src/router/express-adaptor.d.ts +2 -2
  633. package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +64 -61
  634. package/dist/types/wallet-server/src/router/framework/http.d.ts +0 -1
  635. package/dist/types/wallet-server/src/router/framework/ror/normalize.d.ts +2 -2
  636. package/dist/types/wallet-server/src/router/framework/routeMeteringPolicy.d.ts +3 -2
  637. package/dist/types/wallet-server/src/router/framework/routerApi.d.ts +1 -1
  638. package/dist/types/wallet-server/src/router/framework/routerApiRouteSurface.d.ts +3 -3
  639. package/dist/types/wallet-server/src/router/node/nodeHostedWalletGateway.d.ts +34 -0
  640. package/dist/types/wallet-server/src/router/node/nodeHostedWalletGatewayCheck.d.ts +21 -0
  641. package/dist/types/wallet-server/src/router/node/nodeHostedWalletGatewayMain.d.ts +2 -0
  642. package/dist/types/wallet-server/src/router/node/nodeHttp.d.ts +13 -0
  643. package/dist/types/wallet-server/src/router/node/nodeSqlite.d.ts +22 -0
  644. package/dist/types/wallet-server/src/router/node/signerSqlMigrations.d.ts +20 -0
  645. package/dist/types/wallet-server/src/router/transport/fetch/createFetchRouter.d.ts +1 -3
  646. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinking.d.ts +5 -6
  647. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.d.ts +2 -2
  648. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceManagement.d.ts +14 -16
  649. package/dist/types/wallet-server/src/router/transport/fetch/routes/normalSigningRouterProxy.d.ts +0 -12
  650. package/dist/types/wallet-server/src/router/transport/fetch/routes/passkeyCustody.d.ts +1 -1
  651. package/dist/types/wallet-server/src/router/transport/fetch/routes/sessions.d.ts +2 -1
  652. package/dist/types/wallet-server/src/router/transport/fetch/routes/syncAccountBootstrap.d.ts +7 -13
  653. package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +3 -57
  654. package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEd25519.d.ts +0 -44
  655. package/dist/types/wallet-server/src/storage/d1Sql.d.ts +7 -0
  656. package/dist/types/wallet-server/src/storage/syncSqlite.d.ts +28 -0
  657. package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.d.ts +0 -1
  658. package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotencyRecords.d.ts +5 -6
  659. package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/transport/shared.d.ts +1 -0
  660. package/dist/types/wallet-server/src/threshold/statusCodes.d.ts +4 -4
  661. package/migrations/d1-signer/0036_r150_yao_lifecycle_decisions.sql +22 -0
  662. package/migrations/d1-signer/0037_r150_wallet_auth_method_revocation_replays.sql +26 -0
  663. package/migrations/d1-signer/0038_r150_registration_ceremony_cas_guard_seed.sql +8 -0
  664. package/migrations/d1-signer/0039_r150_revocation_replay_answer_kind.sql +9 -0
  665. package/package.json +1 -1
  666. package/dist/esm/core/ThresholdService/ecdsaClientRootProof.js +0 -27
  667. package/dist/esm/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.js +0 -115
  668. package/dist/esm/core/ThresholdService/secureRandomId.js +0 -9
  669. package/dist/esm/core/authService/record.js +0 -8
  670. package/dist/esm/core/authService/thresholdRuntimePolicy.js +0 -19
  671. package/dist/esm/core/authService/walletRegistrationPlanning.js +0 -49
  672. package/dist/esm/core/deviceLinking/index.js +0 -5
  673. package/dist/esm/core/errors.js +0 -54
  674. package/dist/esm/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.js +0 -39
  675. package/dist/esm/core/signingLanes/WalletKeyStore.js +0 -0
  676. package/dist/esm/core/signingLanes/index.js +0 -8
  677. package/dist/esm/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.js +0 -55
  678. package/dist/esm/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.js +0 -56
  679. package/dist/esm/shared-ts/src/signing-lanes/linkedEcdsaScope.js +0 -1
  680. package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker.js +0 -414
  681. package/dist/types/shared-ts/src/passkey-custody/credentialObservations.d.ts +0 -74
  682. package/dist/types/shared-ts/src/passkey-custody/kekContext.d.ts +0 -34
  683. package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.d.ts +0 -62
  684. package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.typecheck.d.ts +0 -2
  685. package/dist/types/shared-ts/src/signing-lanes/validation.d.ts +0 -11
  686. package/dist/types/shared-ts/src/utils/bigint.d.ts +0 -3
  687. package/dist/types/shared-ts/src/utils/paillier.d.ts +0 -37
  688. package/dist/types/shared-ts/src/utils/recoveryDomain.d.ts +0 -12
  689. package/dist/types/shared-ts/src/utils/signerDomain.typecheck.d.ts +0 -2
  690. package/dist/types/shared-ts/src/wallet-recovery/recoveryKekContext.d.ts +0 -37
  691. package/dist/types/wallet-server/src/core/ThresholdService/ecdsaClientRootProof.d.ts +0 -12
  692. package/dist/types/wallet-server/src/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.d.ts +0 -17
  693. package/dist/types/wallet-server/src/core/ThresholdService/secureRandomId.d.ts +0 -2
  694. package/dist/types/wallet-server/src/core/authService/record.d.ts +0 -2
  695. package/dist/types/wallet-server/src/core/authService/thresholdRuntimePolicy.d.ts +0 -4
  696. package/dist/types/wallet-server/src/core/authService/walletRegistrationPlanning.d.ts +0 -19
  697. package/dist/types/wallet-server/src/core/deviceLinking/index.d.ts +0 -5
  698. package/dist/types/wallet-server/src/core/errors.d.ts +0 -10
  699. package/dist/types/wallet-server/src/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.d.ts +0 -28
  700. package/dist/types/wallet-server/src/core/signingLanes/SigningLaneStore.d.ts +0 -15
  701. package/dist/types/wallet-server/src/core/signingLanes/WalletKeyStore.d.ts +0 -13
  702. package/dist/types/wallet-server/src/core/signingLanes/index.d.ts +0 -11
  703. package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.d.ts +0 -35
  704. package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.d.ts +0 -35
  705. /package/dist/esm/{core/signingLanes/SigningLaneStore.js → authorization/ecdsaWalletSessionAdmission.js} +0 -0
@@ -3,10 +3,13 @@ import { sha256Bytes } from "../shared-ts/src/utils/digests.js";
3
3
  import { base58Encode } from "../shared-ts/src/utils/base58.js";
4
4
  import "../shared-ts/src/utils/encoders.js";
5
5
  import { deriveImplicitNearAccountIdFromEd25519PublicKey, parseImplicitNearAccountId, parseNamedNearAccountId } from "../shared-ts/src/utils/near.js";
6
+ import { coerceNonEmptyString, requireRecordOrArray } from "../shared-ts/src/utils/validation.js";
6
7
  import { ActionType, validateActionArgsWasm } from "../shared-ts/src/near/actions.js";
7
8
  import { errorMessage } from "../shared-ts/src/utils/errors.js";
8
- import { decodeNearSecretKey, toPublicKeyStringFromSecretKey } from "./nearKeys.js";
9
- import { MinimalNearClient, NearRpcError, SignedTransaction } from "./rpcClients/near/NearClient.js";
9
+ import { toPublicKeyStringFromSecretKey } from "./nearKeys.js";
10
+ import { SignedTransaction } from "../shared-ts/src/near/nearClient.js";
11
+ import { MinimalNearClient, NearRpcError } from "./rpcClients/near/NearClient.js";
12
+ import { requireFinalizeNearTxFromSignatureOutput, requireSingleUnsignedNearTxBorshOutput, signNearDigestWithSecretKey } from "./authService/nearPrivateKeySigning.js";
10
13
  import { threshold_ed25519_build_near_tx_unsigned_borsh, threshold_ed25519_decode_signed_near_tx_borsh, threshold_ed25519_finalize_near_tx_from_signature } from "../wasm/near_signer/pkg/wasm_signer_worker.js";
11
14
  import { ensureNearSignerWasm } from "./nearSignerWasmRuntime.js";
12
15
  //#region src/core/nearRelayerAccountProvisioning.ts
@@ -26,48 +29,6 @@ const NEAR_IMPLICIT_ACCOUNT_FUND_WAIT_UNTIL = "EXECUTED_OPTIMISTIC";
26
29
  * terminal state.
27
30
  */
28
31
  const NEAR_SPONSORED_ACCOUNT_CREATION_WAIT_UNTIL = "FINAL";
29
- const ED25519_PKCS8_SEED_PREFIX = Uint8Array.from([
30
- 48,
31
- 46,
32
- 2,
33
- 1,
34
- 0,
35
- 48,
36
- 5,
37
- 6,
38
- 3,
39
- 43,
40
- 101,
41
- 112,
42
- 4,
43
- 34,
44
- 4,
45
- 32
46
- ]);
47
- function requireNonEmptyString(value, label) {
48
- const text = String(value || "").trim();
49
- if (!text) throw new Error(`${label} is required`);
50
- return text;
51
- }
52
- function requireRecord(value, label) {
53
- if (!value || typeof value !== "object") throw new Error(`${label} must be an object`);
54
- return value;
55
- }
56
- function requireSingleUnsignedNearTxBorshOutput(value) {
57
- if (!Array.isArray(value) || value.length !== 1) throw new Error("Expected exactly one unsigned NEAR transaction from signer WASM");
58
- const record = requireRecord(value[0], "unsigned NEAR transaction output");
59
- return {
60
- unsignedTransactionBorshB64u: requireNonEmptyString(record.unsignedTransactionBorshB64u, "unsignedTransactionBorshB64u"),
61
- signingDigestB64u: requireNonEmptyString(record.signingDigestB64u, "signingDigestB64u")
62
- };
63
- }
64
- function requireFinalizeNearTxFromSignatureOutput(value) {
65
- const record = requireRecord(value, "finalized NEAR transaction output");
66
- return {
67
- signedTransactionBorshB64u: requireNonEmptyString(record.signedTransactionBorshB64u, "signedTransactionBorshB64u"),
68
- transactionHash: requireNonEmptyString(record.transactionHash, "transactionHash")
69
- };
70
- }
71
32
  function requireByteArray(value, label, expectedLength) {
72
33
  if (!Array.isArray(value) || value.some((byte) => !Number.isInteger(byte) || byte < 0 || byte > 255) || expectedLength !== void 0 && value.length !== expectedLength) throw new Error(`${label} must be a${expectedLength ? ` ${expectedLength}-byte` : ""} array`);
73
34
  return value;
@@ -77,33 +38,33 @@ function requireUnsignedIntegerString(value, label) {
77
38
  return String(value);
78
39
  }
79
40
  function requireDecodedEd25519PublicKey(value, label) {
80
- const record = requireRecord(value, label);
41
+ const record = requireRecordOrArray(value, label);
81
42
  if (record.keyType !== 0) throw new Error(`${label} must be Ed25519`);
82
43
  return `ed25519:${base58Encode(Uint8Array.from(requireByteArray(record.keyData, `${label}.keyData`, 32)))}`;
83
44
  }
84
45
  function requireDecodedSponsoredNearAccountCreation(value, signedTransactionBorshB64u) {
85
- const output = requireRecord(value, "decoded signed NEAR transaction");
86
- const transactionHash = requireNonEmptyString(output.transactionHash, "transactionHash");
87
- const signed = requireRecord(output.signedTransaction, "signedTransaction");
88
- const transaction = requireRecord(signed.transaction, "signedTransaction.transaction");
46
+ const output = requireRecordOrArray(value, "decoded signed NEAR transaction");
47
+ const transactionHash = coerceNonEmptyString(output.transactionHash, "transactionHash");
48
+ const signed = requireRecordOrArray(output.signedTransaction, "signedTransaction");
49
+ const transaction = requireRecordOrArray(signed.transaction, "signedTransaction.transaction");
89
50
  const decodedBytes = requireByteArray(signed.borshBytes, "signedTransaction.borshBytes");
90
51
  if (base64UrlEncode(Uint8Array.from(decodedBytes)) !== signedTransactionBorshB64u) throw new Error("Decoded NEAR transaction bytes do not match the persisted signed bytes");
91
52
  const actions = signed.transaction && Array.isArray(transaction.actions) ? transaction.actions : [];
92
53
  if (actions.length !== 3 || actions[0] !== "createAccount") throw new Error("Persisted NEAR transaction must contain create-account, transfer, and add-key");
93
- const transferBody = requireRecord(requireRecord(actions[1], "signedTransaction.transaction.actions[1]").transfer, "transfer action");
94
- const addKeyBody = requireRecord(requireRecord(actions[2], "signedTransaction.transaction.actions[2]").addKey, "add-key action");
95
- const accessKey = requireRecord(addKeyBody.access_key, "add-key access key");
54
+ const transferBody = requireRecordOrArray(requireRecordOrArray(actions[1], "signedTransaction.transaction.actions[1]").transfer, "transfer action");
55
+ const addKeyBody = requireRecordOrArray(requireRecordOrArray(actions[2], "signedTransaction.transaction.actions[2]").addKey, "add-key action");
56
+ const accessKey = requireRecordOrArray(addKeyBody.access_key, "add-key access key");
96
57
  if (accessKey.permission !== "FullAccess") throw new Error("Persisted NEAR transaction add-key action must grant full access");
97
58
  return {
98
59
  transactionHash,
99
- signerId: requireNonEmptyString(transaction.signerId, "signedTransaction.transaction.signerId"),
60
+ signerId: coerceNonEmptyString(transaction.signerId, "signedTransaction.transaction.signerId"),
100
61
  signerPublicKey: requireDecodedEd25519PublicKey(transaction.publicKey, "signedTransaction.transaction.publicKey"),
101
62
  nonce: requireUnsignedIntegerString(transaction.nonce, "signedTransaction.transaction.nonce"),
102
- receiverId: requireNonEmptyString(transaction.receiverId, "signedTransaction.transaction.receiverId"),
63
+ receiverId: coerceNonEmptyString(transaction.receiverId, "signedTransaction.transaction.receiverId"),
103
64
  blockHash: base58Encode(Uint8Array.from(requireByteArray(transaction.blockHash, "signedTransaction.transaction.blockHash", 32))),
104
65
  actions: [
105
66
  "createAccount",
106
- { transfer: { deposit: requireNonEmptyString(transferBody.deposit, "transfer.deposit") } },
67
+ { transfer: { deposit: coerceNonEmptyString(transferBody.deposit, "transfer.deposit") } },
107
68
  { addKey: {
108
69
  publicKey: requireDecodedEd25519PublicKey(addKeyBody.public_key, "add-key public key"),
109
70
  accessKey: {
@@ -115,80 +76,20 @@ function requireDecodedSponsoredNearAccountCreation(value, signedTransactionBors
115
76
  signedTransactionBorshB64u
116
77
  };
117
78
  }
118
- function createEd25519Pkcs8FromSeed(seed32) {
119
- if (seed32.length !== 32) throw new Error(`Ed25519 seed must be 32 bytes, got ${seed32.length}`);
120
- const pkcs8 = new Uint8Array(ED25519_PKCS8_SEED_PREFIX.length + seed32.length);
121
- pkcs8.set(ED25519_PKCS8_SEED_PREFIX, 0);
122
- pkcs8.set(seed32, ED25519_PKCS8_SEED_PREFIX.length);
123
- return pkcs8;
124
- }
125
- function copyToArrayBuffer(bytes) {
126
- const buffer = new ArrayBuffer(bytes.length);
127
- new Uint8Array(buffer).set(bytes);
128
- return buffer;
129
- }
130
- async function signEd25519MessageWithNodeCrypto(pkcs8, message) {
131
- try {
132
- const nodeCrypto = await import("node:crypto");
133
- const { Buffer } = await import("node:buffer");
134
- const key = nodeCrypto.createPrivateKey({
135
- key: Buffer.from(pkcs8),
136
- format: "der",
137
- type: "pkcs8"
138
- });
139
- return new Uint8Array(nodeCrypto.sign(null, message, key));
140
- } catch (error) {
141
- return null;
142
- }
143
- }
144
- async function signEd25519MessageWithWebCrypto(pkcs8, message) {
145
- const subtle = globalThis.crypto?.subtle;
146
- if (!subtle) return null;
147
- try {
148
- const key = await subtle.importKey("pkcs8", copyToArrayBuffer(pkcs8), "Ed25519", false, ["sign"]);
149
- return new Uint8Array(await subtle.sign("Ed25519", key, copyToArrayBuffer(message)));
150
- } catch {
151
- return null;
152
- }
153
- }
154
- async function signEd25519MessageWithPkcs8(pkcs8, message) {
155
- const nodeSignature = await signEd25519MessageWithNodeCrypto(pkcs8, message);
156
- if (nodeSignature) return nodeSignature;
157
- const webCryptoSignature = await signEd25519MessageWithWebCrypto(pkcs8, message);
158
- if (webCryptoSignature) return webCryptoSignature;
159
- throw new Error("Ed25519 private-key signing is unavailable in this runtime");
160
- }
161
- async function signNearDigestWithSecretKey(args) {
162
- if (toPublicKeyStringFromSecretKey(args.nearPrivateKey) !== args.expectedSignerPublicKey) throw new Error("NEAR private key does not match expected signer public key");
163
- const digest = base64UrlDecode(args.signingDigestB64u);
164
- if (digest.length !== 32) throw new Error(`NEAR signing digest must be 32 bytes, got ${digest.length}`);
165
- const secretKeyBytes = decodeNearSecretKey(args.nearPrivateKey);
166
- const seed32 = new Uint8Array(secretKeyBytes.subarray(0, 32));
167
- const pkcs8 = createEd25519Pkcs8FromSeed(seed32);
168
- try {
169
- const signature = await signEd25519MessageWithPkcs8(pkcs8, digest);
170
- if (signature.length !== 64) throw new Error(`Ed25519 signature must be 64 bytes, got ${signature.length}`);
171
- return base64UrlEncode(signature);
172
- } finally {
173
- secretKeyBytes.fill(0);
174
- seed32.fill(0);
175
- pkcs8.fill(0);
176
- }
177
- }
178
79
  function parsePositiveYocto(value, label) {
179
- const text = requireNonEmptyString(value, label);
80
+ const text = coerceNonEmptyString(value, label);
180
81
  const amount = BigInt(text);
181
82
  if (amount <= 0n) throw new Error(`${label} must be positive`);
182
83
  return amount.toString();
183
84
  }
184
85
  function requireEd25519PublicKey(value, label) {
185
- const text = requireNonEmptyString(value, label);
86
+ const text = coerceNonEmptyString(value, label);
186
87
  if (!text.startsWith("ed25519:")) throw new Error(`${label} must be an ed25519 public key`);
187
88
  return text;
188
89
  }
189
90
  function validateNearRelayerRuntimeInput(input) {
190
- const relayerAccount = requireNonEmptyString(input.relayerAccount, "relayerAccount");
191
- const relayerPrivateKey = requireNonEmptyString(input.relayerPrivateKey, "relayerPrivateKey");
91
+ const relayerAccount = coerceNonEmptyString(input.relayerAccount, "relayerAccount");
92
+ const relayerPrivateKey = coerceNonEmptyString(input.relayerPrivateKey, "relayerPrivateKey");
192
93
  const derivedRelayerPublicKey = toPublicKeyStringFromSecretKey(relayerPrivateKey);
193
94
  const configuredRelayerPublicKey = String(input.relayerPublicKey || "").trim();
194
95
  if (configuredRelayerPublicKey && configuredRelayerPublicKey !== derivedRelayerPublicKey) throw new Error("relayerPublicKey does not match relayerPrivateKey");
@@ -196,14 +97,14 @@ function validateNearRelayerRuntimeInput(input) {
196
97
  relayerAccount,
197
98
  relayerPrivateKey,
198
99
  relayerPublicKey: derivedRelayerPublicKey,
199
- nearRpcUrl: requireNonEmptyString(input.nearRpcUrl, "nearRpcUrl"),
100
+ nearRpcUrl: coerceNonEmptyString(input.nearRpcUrl, "nearRpcUrl"),
200
101
  nearClient: input.nearClient,
201
102
  ensureSignerWasm: input.ensureSignerWasm
202
103
  };
203
104
  }
204
105
  function validateFundingInput(input) {
205
- const walletId = requireNonEmptyString(input.walletId, "walletId");
206
- const nearPublicKeyStr = requireNonEmptyString(input.nearPublicKeyStr, "nearPublicKeyStr");
106
+ const walletId = coerceNonEmptyString(input.walletId, "walletId");
107
+ const nearPublicKeyStr = coerceNonEmptyString(input.nearPublicKeyStr, "nearPublicKeyStr");
207
108
  const parsedNearAccountId = parseImplicitNearAccountId(input.nearAccountId);
208
109
  if (!parsedNearAccountId.ok) throw new Error(parsedNearAccountId.message);
209
110
  if (deriveImplicitNearAccountIdFromEd25519PublicKey(nearPublicKeyStr) !== parsedNearAccountId.value) throw new Error("nearAccountId does not match nearPublicKeyStr implicit account ID");
@@ -222,7 +123,7 @@ function validateFundingInput(input) {
222
123
  };
223
124
  }
224
125
  function validateNamedAccountCreationInput(input) {
225
- const parsedAccountId = parseNamedNearAccountId(requireNonEmptyString(input.accountId, "accountId"));
126
+ const parsedAccountId = parseNamedNearAccountId(coerceNonEmptyString(input.accountId, "accountId"));
226
127
  if (!parsedAccountId.ok) throw new Error(parsedAccountId.message);
227
128
  const runtime = validateNearRelayerRuntimeInput(input);
228
129
  return {
@@ -681,33 +582,7 @@ function isDefinitiveNearRejection(error) {
681
582
  case "unknown": return false;
682
583
  }
683
584
  }
684
- async function createNamedNearAccountWithRelayer(input) {
685
- try {
686
- const validated = validateNamedAccountCreationInput(input);
687
- const prepared = await prepareSponsoredNearAccountCreationWithRelayer(input);
688
- if (!prepared.ok) return {
689
- success: false,
690
- error: prepared.error,
691
- message: prepared.message
692
- };
693
- const broadcast = await broadcastPreparedSponsoredNearAccountCreation({
694
- prepared: prepared.prepared,
695
- nearRpcUrl: validated.nearRpcUrl,
696
- relayerAccountId: validated.relayerAccount,
697
- ...validated.nearClient ? { nearClient: validated.nearClient } : {}
698
- });
699
- if (broadcast.kind === "uncertain") throw new Error(broadcast.message);
700
- return broadcast.result;
701
- } catch (error) {
702
- const message = errorMessage(error) || "Failed to create NEAR account";
703
- return {
704
- success: false,
705
- error: message,
706
- message
707
- };
708
- }
709
- }
710
585
  //#endregion
711
- export { broadcastPreparedSponsoredNearAccountCreation, createNamedNearAccountWithRelayer, fundImplicitNearAccountWithRelayer, prepareSponsoredNearAccountCreationWithRelayer, preparedSponsoredNearAccountCreationArtifactFingerprint };
586
+ export { broadcastPreparedSponsoredNearAccountCreation, fundImplicitNearAccountWithRelayer, prepareSponsoredNearAccountCreationWithRelayer, preparedSponsoredNearAccountCreationArtifactFingerprint };
712
587
 
713
588
  //# sourceMappingURL=nearRelayerAccountProvisioning.js.map
@@ -78,10 +78,7 @@ async function ensureNearSignerWasm() {
78
78
  if (!signerWasmInitPromise) signerWasmInitPromise = initializeNearSignerWasm();
79
79
  await signerWasmInitPromise;
80
80
  }
81
- function isNearSignerWasmReady() {
82
- return signerWasmReady;
83
- }
84
81
  //#endregion
85
- export { ensureNearSignerWasm, isNearSignerWasmReady };
82
+ export { ensureNearSignerWasm };
86
83
 
87
84
  //# sourceMappingURL=nearSignerWasmRuntime.js.map
@@ -1,9 +1,5 @@
1
- import { base64Decode, base64Encode } from "../../../shared-ts/src/utils/base64.js";
2
- import { isFunction } from "../../../shared-ts/src/utils/validation.js";
3
- import { secureRandomId } from "../../../shared-ts/src/utils/secureRandomId.js";
4
1
  import { errorMessage } from "../../../shared-ts/src/utils/errors.js";
5
- import { decodeJsonRpcEnvelope } from "../../../shared-ts/src/utils/jsonRpc.js";
6
- import { decodeNearAccessKeyList, decodeNearAccessKeyView, decodeNearAccountView, decodeNearBlockReference, decodeNearCodeBase64, decodeNearContractCallResult, decodeNearFinalExecutionOutcome, parseNearContractResult } from "../../../shared-ts/src/utils/nearRpcResults.js";
2
+ import { NearJsonRpcClient, SignedTransaction } from "../../../shared-ts/src/near/nearClient.js";
7
3
  //#region src/core/rpcClients/near/NearClient.ts
8
4
  function isObj(v) {
9
5
  return !!v && typeof v === "object" && !Array.isArray(v);
@@ -153,222 +149,23 @@ function classifyInvalidTransaction(kind) {
153
149
  default: return "invalid_transaction";
154
150
  }
155
151
  }
156
- let RpcCallType = /* @__PURE__ */ function(RpcCallType) {
157
- RpcCallType["Query"] = "query";
158
- RpcCallType["View"] = "view";
159
- RpcCallType["Send"] = "send_tx";
160
- RpcCallType["Block"] = "block";
161
- RpcCallType["Call"] = "call_function";
162
- return RpcCallType;
163
- }({});
164
- const DEFAULT_WAIT_STATUS = { executeAction: "EXECUTED_OPTIMISTIC" };
165
- var SignedTransaction = class SignedTransaction {
166
- constructor(data) {
167
- this.transaction = data.transaction;
168
- this.signature = data.signature;
169
- this.borsh_bytes = data.borsh_bytes;
170
- if (data.nonceLease) this.nonceLease = data.nonceLease;
171
- if (data.serverDispatch) this.serverDispatch = data.serverDispatch;
152
+ var MinimalNearClient = class extends NearJsonRpcClient {
153
+ errorFromRpc(operationName, error) {
154
+ return NearRpcError.fromRpcError(operationName, error);
172
155
  }
173
- static fromPlain(input) {
174
- return new SignedTransaction({
175
- transaction: input.transaction,
176
- signature: input.signature,
177
- borsh_bytes: input.borsh_bytes,
178
- ...input.nonceLease ? { nonceLease: input.nonceLease } : {},
179
- ...input.serverDispatch ? { serverDispatch: input.serverDispatch } : {}
180
- });
181
- }
182
- encode() {
183
- return new Uint8Array(this.borsh_bytes).buffer;
184
- }
185
- base64Encode() {
186
- return base64Encode(this.encode());
187
- }
188
- };
189
- function toArrayBufferFromUnknownBytes(bytes) {
190
- if (!bytes) return null;
191
- if (Array.isArray(bytes)) return new Uint8Array(bytes).buffer;
192
- if (ArrayBuffer.isView(bytes)) {
193
- const view = bytes;
194
- return view.buffer.slice(view.byteOffset, view.byteOffset + view.byteLength);
195
- }
196
- if (bytes instanceof ArrayBuffer) return bytes;
197
- return null;
198
- }
199
- function encodeSignedTransactionBase64(signed) {
200
- const maybeSigned = signed?.signedTransaction;
201
- const txPayload = maybeSigned && typeof maybeSigned === "object" ? maybeSigned : signed;
202
- const maybeBase64 = txPayload.base64Encode;
203
- if (isFunction(maybeBase64)) return maybeBase64.call(txPayload);
204
- const maybeEncode = txPayload.encode;
205
- if (isFunction(maybeEncode)) return base64Encode(maybeEncode.call(txPayload));
206
- const snakeBuf = toArrayBufferFromUnknownBytes(txPayload.borsh_bytes);
207
- if (snakeBuf) return base64Encode(snakeBuf);
208
- const camelBuf = toArrayBufferFromUnknownBytes(txPayload.borshBytes);
209
- if (camelBuf) return base64Encode(camelBuf);
210
- throw new Error("Invalid signed transaction payload: cannot serialize to base64");
211
- }
212
- var MinimalNearClient = class MinimalNearClient {
213
- constructor(rpcUrl) {
214
- this.rpcUrls = MinimalNearClient.normalizeRpcUrls(rpcUrl);
215
- }
216
- static normalizeRpcUrls(input) {
217
- const normalized = (Array.isArray(input) ? input : input.split(/[\s,]+/).map((url) => url.trim()).filter(Boolean)).map((url) => {
218
- try {
219
- return new URL(url).toString();
220
- } catch (err) {
221
- throw new Error(errorMessage(err) || `Invalid NEAR RPC URL: ${url}`);
222
- }
223
- });
224
- if (!normalized.length) throw new Error("NEAR RPC URL cannot be empty");
225
- return Array.from(new Set(normalized));
226
- }
227
- buildRequestBody(method, params) {
228
- return JSON.stringify({
229
- jsonrpc: "2.0",
230
- id: secureRandomId("near-rpc", 32, "NEAR JSON-RPC request IDs"),
231
- method,
232
- params
233
- });
234
- }
235
- async postOnce(url, requestBody) {
236
- const response = await fetch(url, {
237
- method: "POST",
238
- headers: { "Content-Type": "application/json" },
239
- body: requestBody
156
+ errorFromWrappedResult(message) {
157
+ return new NearRpcError({
158
+ message,
159
+ short: "RpcError",
160
+ failureKind: "infrastructure_failure",
161
+ type: "RpcError"
240
162
  });
241
- if (!response.ok) throw new Error(`RPC request failed: ${response.status} ${response.statusText}`);
242
- const text = await response.text();
243
- if (!text?.trim()) throw new Error("Empty response from RPC server");
244
- const decoded = decodeJsonRpcEnvelope(JSON.parse(text));
245
- if (!decoded.ok) throw new Error(`Invalid NEAR JSON-RPC response: ${decoded.error}`);
246
- return decoded.value;
247
- }
248
- async requestWithFallback(requestBody) {
249
- let lastError;
250
- for (const [index, url] of this.rpcUrls.entries()) try {
251
- const result = await this.postOnce(url, requestBody);
252
- if (index > 0) console.warn(`[NearClient] RPC succeeded via fallback: ${url}`);
253
- return result;
254
- } catch (err) {
255
- lastError = err;
256
- const remaining = index < this.rpcUrls.length - 1;
257
- console.warn(`[NearClient] RPC call to ${url} failed${remaining ? ", trying next" : ""}: ${errorMessage(err) || "RPC request failed"}`);
258
- if (!remaining) throw err instanceof Error ? err : new Error(String(err));
259
- }
260
- throw new Error(errorMessage(lastError) || "RPC request failed");
261
- }
262
- unwrapRpcResult(rpc, operationName) {
263
- if (rpc.kind === "failure") throw NearRpcError.fromRpcError(operationName, rpc.error);
264
- const result = rpc.result;
265
- if (typeof result === "object" && result !== null && "error" in result) {
266
- const wrappedError = Reflect.get(result, "error");
267
- throw new NearRpcError({
268
- message: `${operationName} Error: ${typeof wrappedError === "string" ? wrappedError : JSON.stringify(wrappedError)}`,
269
- short: "RpcError",
270
- failureKind: "infrastructure_failure",
271
- type: "RpcError"
272
- });
273
- }
274
- return rpc.result;
275
- }
276
- async makeRpcCall(method, params, operationName, decodeResult) {
277
- const requestBody = this.buildRequestBody(method, params);
278
- try {
279
- const envelope = await this.requestWithFallback(requestBody);
280
- return decodeResult(this.unwrapRpcResult(envelope, operationName));
281
- } catch (error) {
282
- throw normalizeNearRpcFailure(operationName, error);
283
- }
284
163
  }
285
- async query(params, decodeResult) {
286
- return this.makeRpcCall(RpcCallType.Query, params, "Query", decodeResult);
164
+ errorFromOutcome(operationName, outcome, failure) {
165
+ return NearRpcError.fromOutcome(operationName, outcome, failure);
287
166
  }
288
- async viewAccessKey(accountId, publicKey, finalityQuery) {
289
- const params = {
290
- request_type: "view_access_key",
291
- finality: finalityQuery?.finality || "final",
292
- account_id: accountId,
293
- public_key: publicKey
294
- };
295
- return this.makeRpcCall(RpcCallType.Query, params, "View Access Key", decodeNearAccessKeyView);
296
- }
297
- async viewAccessKeyList(accountId, finalityQuery) {
298
- const params = {
299
- request_type: "view_access_key_list",
300
- finality: finalityQuery?.finality || "final",
301
- account_id: accountId
302
- };
303
- return this.makeRpcCall(RpcCallType.Query, params, "View Access Key List", decodeNearAccessKeyList);
304
- }
305
- async viewAccount(accountId) {
306
- const params = {
307
- request_type: "view_account",
308
- finality: "final",
309
- account_id: accountId
310
- };
311
- return this.makeRpcCall(RpcCallType.Query, params, "View Account", decodeNearAccountView);
312
- }
313
- async viewCode(accountId, finalityQuery) {
314
- const params = {
315
- request_type: "view_code",
316
- finality: finalityQuery?.finality || "final",
317
- account_id: accountId
318
- };
319
- return base64Decode(await this.makeRpcCall(RpcCallType.Query, params, "View Code", decodeNearCodeBase64));
320
- }
321
- async viewBlock(params) {
322
- return this.makeRpcCall(RpcCallType.Block, params, "View Block", decodeNearBlockReference);
323
- }
324
- async sendTransaction(signedTransaction, waitUntil = DEFAULT_WAIT_STATUS.executeAction) {
325
- const params = {
326
- signed_tx_base64: encodeSignedTransactionBase64(signedTransaction),
327
- wait_until: waitUntil
328
- };
329
- const outcome = await this.makeRpcCall(RpcCallType.Send, params, "Send Transaction", decodeNearFinalExecutionOutcome);
330
- const status = outcome.status;
331
- if (status && typeof status === "object" && "Failure" in status) throw NearRpcError.fromOutcome("Send Transaction", outcome, status.Failure);
332
- return outcome;
333
- }
334
- async txStatus(txHash, senderAccountId) {
335
- return this.makeRpcCall("EXPERIMENTAL_tx_status", {
336
- tx_hash: txHash,
337
- sender_account_id: senderAccountId
338
- }, "Tx Status", decodeNearFinalExecutionOutcome);
339
- }
340
- async callFunction(accountId, method, args, decodeResult, blockQuery) {
341
- const rpcParams = {
342
- request_type: "call_function",
343
- ...blockQuery ?? { finality: "final" },
344
- account_id: accountId,
345
- method_name: method,
346
- args_base64: base64Encode(new TextEncoder().encode(JSON.stringify(args)).buffer)
347
- };
348
- return decodeResult(parseNearContractResult((await this.makeRpcCall(RpcCallType.Query, rpcParams, "View Function", decodeNearContractCallResult)).result));
349
- }
350
- async view(params) {
351
- return this.callFunction(params.account, params.method, params.args, params.decodeResult);
352
- }
353
- async getAccessKeys({ account, block_id }) {
354
- const params = {
355
- request_type: "view_access_key_list",
356
- account_id: account,
357
- finality: "final"
358
- };
359
- if (block_id) params.block_id = block_id;
360
- const keys = (await this.makeRpcCall(RpcCallType.Query, params, "Get Access Keys", decodeNearAccessKeyList)).keys || [];
361
- const fullAccessKeys = [];
362
- const functionCallAccessKeys = [];
363
- for (const key of keys) {
364
- const permission = key.access_key.permission;
365
- if (permission === "FullAccess") fullAccessKeys.push(key);
366
- else if (typeof permission === "object" && "FunctionCall" in permission) functionCallAccessKeys.push(key);
367
- }
368
- return {
369
- fullAccessKeys,
370
- functionCallAccessKeys
371
- };
167
+ errorFromFailedCall(operationName, error) {
168
+ return normalizeNearRpcFailure(operationName, error);
372
169
  }
373
170
  };
374
171
  function normalizeNearRpcFailure(operationName, error) {
@@ -384,6 +181,6 @@ function normalizeNearRpcFailure(operationName, error) {
384
181
  });
385
182
  }
386
183
  //#endregion
387
- export { MinimalNearClient, NearRpcError, RpcCallType, SignedTransaction };
184
+ export { MinimalNearClient, NearRpcError, SignedTransaction };
388
185
 
389
186
  //# sourceMappingURL=NearClient.js.map
@@ -1,6 +1,6 @@
1
1
  import { base64UrlEncode } from "../../shared-ts/src/utils/base64.js";
2
- import { parseDigestB64u } from "../../shared-ts/src/utils/canonicalPrimitives.js";
3
2
  import { sha256Bytes, sha256BytesUtf8 } from "../../shared-ts/src/utils/digests.js";
3
+ import { parseDigestB64u } from "../../shared-ts/src/utils/canonicalPrimitives.js";
4
4
  import { buildLaneProtocolRecordV1, parseLaneHolderDeliveryReceiptV1, parseLaneProtocolCommitReceiptV1, parseLaneServerActivationReceiptV1 } from "../../shared-ts/src/signing-lanes/rotationParsers.js";
5
5
  import { computeLaneEnrollmentManifestDigestV1, encodeLaneHolderDeliveryReceiptV1, encodeLaneProtocolCommitReceiptV1, encodeLaneServerActivationReceiptV1 } from "../../shared-ts/src/signing-lanes/rotationDigests.js";
6
6
  import { transitionLaneProtocolLifecycleV1 } from "../../shared-ts/src/signing-lanes/rotationLifecycle.js";
@@ -1,6 +1,4 @@
1
- import { base64UrlEncode } from "../../shared-ts/src/utils/base64.js";
2
- import { parseCorrelationId, parseDigestB64u } from "../../shared-ts/src/utils/canonicalPrimitives.js";
3
- import { sha256Bytes } from "../../shared-ts/src/utils/digests.js";
1
+ import { parseCorrelationId, sha256DigestB64u } from "../../shared-ts/src/utils/canonicalPrimitives.js";
4
2
  import { buildRevokeSigningLaneV1, parseLaneProtocolCommitReceiptV1, parseLaneRefreshPredecessorRetirementV1, parseLaneServerActivationReceiptV1, parseRevokeSigningLaneV1 } from "../../shared-ts/src/signing-lanes/rotationParsers.js";
5
3
  import { encodeLaneProtocolCommitReceiptV1 } from "../../shared-ts/src/signing-lanes/rotationDigests.js";
6
4
  //#region src/core/signingLanes/LaneLifecycleApplicationService.ts
@@ -69,7 +67,7 @@ var LaneLifecycleApplicationService = class {
69
67
  async retireLaneRefreshPredecessorV1(request) {
70
68
  const protocolCommitReceipt = parseLaneProtocolCommitReceiptV1(request.protocolCommitReceipt);
71
69
  assertProtocolReceiptMatchesJob(protocolCommitReceipt, request.job);
72
- const retirementRequestDigestB64u = parseDigestB64u(base64UrlEncode(await sha256Bytes(encodeLaneProtocolCommitReceiptV1(protocolCommitReceipt))));
70
+ const retirementRequestDigestB64u = await sha256DigestB64u(encodeLaneProtocolCommitReceiptV1(protocolCommitReceipt));
73
71
  const command = buildRevokeSigningLaneV1({
74
72
  walletId: request.job.walletId,
75
73
  walletKeyId: request.job.walletKeyId,
@@ -1,24 +0,0 @@
1
- //#region src/core/signingLanes/LaneLifecycleStore.ts
2
- function protocolCasResultToAdmissionResult(result) {
3
- if (result.outcome === "conflict") return {
4
- outcome: "conflict",
5
- expectedVersion: result.expectedVersion,
6
- actualVersion: result.actualVersion,
7
- requestedCommandDigestB64u: result.requestedCommandDigestB64u,
8
- storedCommandDigestB64u: result.storedCommandDigestB64u
9
- };
10
- return {
11
- outcome: result.outcome,
12
- version: result.version,
13
- commandDigestB64u: result.commandDigestB64u,
14
- value: result.record
15
- };
16
- }
17
- function assertNonEmptyVersion(value, label) {
18
- if (!Number.isSafeInteger(value) || value < 1) throw new Error(`${label} must be a positive safe integer`);
19
- return value;
20
- }
21
- //#endregion
22
- export { assertNonEmptyVersion, protocolCasResultToAdmissionResult };
23
-
24
- //# sourceMappingURL=LaneLifecycleStore.js.map
@@ -1,14 +1,14 @@
1
1
  import { parseEmailOtpProviderUserId, parseLaneShareEpoch, parseMpcSigningWorkerRef, parseSigningLaneId, parseWalletKeyId, parseWebAuthnCredentialIdB64u } from "../../shared-ts/src/utils/domainIds.js";
2
2
  import { base64UrlEncode } from "../../shared-ts/src/utils/base64.js";
3
- import { parseDigestB64u } from "../../shared-ts/src/utils/canonicalPrimitives.js";
4
- import { alphabetizeStringify, sha256BytesUtf8 } from "../../shared-ts/src/utils/digests.js";
3
+ import { alphabetizeStringify } from "../../shared-ts/src/utils/digests.js";
4
+ import { parseDigestB64u, sha256Utf8DigestB64u } from "../../shared-ts/src/utils/canonicalPrimitives.js";
5
5
  import { base58Encode } from "../../shared-ts/src/utils/base58.js";
6
6
  import { parseEd25519PublicKeyB64u, parseKeyCreationSignerSlot, parseSecp256k1CompressedPublicKeyB64u } from "../../shared-ts/src/passkey-custody/primitives.js";
7
- import { parseNearEd25519SigningKeyId } from "../../shared-ts/src/utils/registrationIntent.js";
8
7
  import { routerAbMpcMaterialActivationRefFromWire, sameRouterAbMpcMaterialActivationRef } from "../../shared-ts/src/utils/routerAbNormalSigningIdentity.js";
9
8
  import { deriveEvmFamilySigningKeySlotId } from "../../shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js";
10
9
  import { walletAuthAuthorityRef } from "../../shared-ts/src/utils/walletAuthAuthority.js";
11
10
  import { sameRouterAbEcdsaDerivationPublicCapabilityV1, sameRouterAbEcdsaDerivationPublicIdentityV1, sameRouterAbEcdsaRegistrationActivationReceiptV1, sameRouterAbServerIdentityV1 } from "../../shared-ts/src/utils/routerAbEcdsaDerivation.js";
11
+ import { parseNearEd25519SigningKeyId } from "../../shared-ts/src/utils/registrationIds.js";
12
12
  import { buildOwnerLaneParticipantContinuityV1, computeOwnerLaneParticipantBindingDigestV1, parseWalletSignerId } from "../../shared-ts/src/signing-lanes/ownerContinuity.js";
13
13
  import "../../shared-ts/src/signing-lanes/index.js";
14
14
  import { buildActiveSigningLaneLifecycle, buildActiveWalletKeyLifecycle, buildEd25519WalletKeyRecord, buildEvmFamilyWalletKeyRecord, buildOwnerEmailOtpSigningLaneRecord, buildOwnerPasskeySigningLaneRecord, parseWalletKeyVersion } from "../../shared-ts/src/signing-lanes/recordParsers.js";
@@ -239,7 +239,7 @@ async function digestPublicIdentity(value) {
239
239
  return await digestValue(SOURCE_IDENTITY_DOMAIN, value);
240
240
  }
241
241
  async function digestValue(domain, value) {
242
- return parseDigestB64u(base64UrlEncode(await sha256BytesUtf8(`${domain}\u0000${alphabetizeStringify(value)}`)));
242
+ return sha256Utf8DigestB64u(`${domain}\u0000${alphabetizeStringify(value)}`);
243
243
  }
244
244
  function sameMaterialActivation(left, right) {
245
245
  return left.activationId === right.activationId && left.capability === right.capability && left.materialOwner === right.materialOwner && left.keyBinding === right.keyBinding && left.lifecycleBinding === right.lifecycleBinding && left.signingWorker === right.signingWorker;
@@ -291,6 +291,6 @@ function walletAuthorityForAuthMethod(authMethod, authSource) {
291
291
  };
292
292
  }
293
293
  //#endregion
294
- export { projectActiveOwnerWalletExecutionLane, resolveActiveOwnerWalletExecutionLane, resolveWalletAuthMethodIdForAuthority };
294
+ export { resolveActiveOwnerWalletExecutionLane, resolveWalletAuthMethodIdForAuthority };
295
295
 
296
296
  //# sourceMappingURL=WalletExecutionLaneProjection.js.map
@@ -1,5 +1,6 @@
1
1
  import { mpcMaterialActivationRefsEqual } from "../../shared-ts/src/utils/domainIds.js";
2
2
  import { parseDigestB64u } from "../../shared-ts/src/utils/canonicalPrimitives.js";
3
+ import { isPlainObject } from "../../shared-ts/src/utils/validation.js";
3
4
  import { parseEcdsaServerRetirementReceiptV1 } from "../../shared-ts/src/signing-lanes/rotationParsers.js";
4
5
  import { computeEcdsaServerRetirementReceiptDigestV1 } from "../../shared-ts/src/signing-lanes/rotationDigests.js";
5
6
  import "../../shared-ts/src/signing-lanes/index.js";
@@ -39,9 +40,6 @@ async function parseAndVerifyEcdsaServerRetirementEffectV1(input) {
39
40
  retirementReceiptDigestB64u: parseDigestB64u(receipt.receiptDigestB64u)
40
41
  };
41
42
  }
42
- function assertEcdsaServerRetirementReceiptMatchesExpectationV1(receipt, expectation) {
43
- assertReceiptMatchesExpectation(receipt, expectation);
44
- }
45
43
  function assertReceiptMatchesExpectation(receipt, expectation) {
46
44
  if (receipt.manifest.manifestId !== expectation.manifest.manifestId || receipt.manifest.manifestRevision !== expectation.manifest.manifestRevision || !mpcMaterialActivationRefsEqual(receipt.materialActivation, expectation.materialActivation) || receipt.walletKeyId !== expectation.walletKeyId || receipt.laneId !== expectation.laneId || receipt.laneShareEpoch !== expectation.laneShareEpoch || receipt.revocationEpoch !== expectation.revocationEpoch || receipt.retirementReason !== expectation.retirementReason || receipt.retirementCorrelationId !== expectation.retirementCorrelationId || receipt.retirementRequestDigestB64u !== expectation.retirementRequestDigestB64u || receipt.serverGeneration !== expectation.serverGeneration || receipt.lifecycleId !== expectation.lifecycleId) throw new Error("ECDSA retirement receipt does not match the admitted lane binding");
47
45
  }
@@ -55,7 +53,7 @@ function retirementReasonForCommand(reason) {
55
53
  }
56
54
  }
57
55
  function exactEffectEnvelope(value, label) {
58
- if (!isObject(value)) throw new Error(`${label} must be an object`);
56
+ if (!isPlainObject(value)) throw new Error(`${label} must be an object`);
59
57
  const fields = ["outcome", "receipt"];
60
58
  const allowed = new Set(fields);
61
59
  for (const key of Object.keys(value)) if (!allowed.has(key)) throw new Error(`${label}.${key} is unsupported`);
@@ -65,14 +63,11 @@ function exactEffectEnvelope(value, label) {
65
63
  receipt: Reflect.get(value, "receipt")
66
64
  };
67
65
  }
68
- function isObject(value) {
69
- return typeof value === "object" && value !== null && !Array.isArray(value);
70
- }
71
66
  function parseOutcome(value, label) {
72
67
  if (value === "applied" || value === "replayed") return value;
73
68
  throw new Error(`${label} is invalid`);
74
69
  }
75
70
  //#endregion
76
- export { assertEcdsaServerRetirementReceiptMatchesExpectationV1, buildEcdsaServerRetirementRequestV1, parseAndVerifyEcdsaServerRetirementEffectV1 };
71
+ export { buildEcdsaServerRetirementRequestV1, parseAndVerifyEcdsaServerRetirementEffectV1 };
77
72
 
78
73
  //# sourceMappingURL=ecdsaServerRetirement.js.map