@seams/wallet-server 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (643) hide show
  1. package/THIRD_PARTY_NOTICES.md +1 -113
  2. package/artifact-manifest.json +78 -33
  3. package/cloudflare-router-ab/build/deriver-a/build-stamp.json +1 -1
  4. package/cloudflare-router-ab/build/deriver-a/index.js +2 -2
  5. package/cloudflare-router-ab/build/deriver-a/index_bg.wasm +0 -0
  6. package/cloudflare-router-ab/build/deriver-b/build-stamp.json +1 -1
  7. package/cloudflare-router-ab/build/deriver-b/index.js +2 -2
  8. package/cloudflare-router-ab/build/deriver-b/index_bg.wasm +0 -0
  9. package/cloudflare-router-ab/build/local-tools/darwin-arm64/router_ab_local_init +0 -0
  10. package/cloudflare-router-ab/build/local-tools/darwin-x64/router_ab_local_init +0 -0
  11. package/cloudflare-router-ab/build/local-tools/linux-x64/router_ab_local_init +0 -0
  12. package/cloudflare-router-ab/build/router/build-stamp.json +1 -1
  13. package/cloudflare-router-ab/build/router/index.js +2 -2
  14. package/cloudflare-router-ab/build/router/index_bg.wasm +0 -0
  15. package/cloudflare-router-ab/build/signing-worker/build-stamp.json +1 -1
  16. package/cloudflare-router-ab/build/signing-worker/index.js +2 -2
  17. package/cloudflare-router-ab/build/signing-worker/index_bg.wasm +0 -0
  18. package/cloudflare-router-ab/build/tenant-root-control-plane/build-stamp.json +1 -1
  19. package/cloudflare-router-ab/build/tenant-root-control-plane/index.js +2 -2
  20. package/cloudflare-router-ab/build/tenant-root-control-plane/index_bg.wasm +0 -0
  21. package/cloudflare-router-ab/scripts/prepare-local-runtime-config.mjs +0 -2
  22. package/cloudflare-router-ab/scripts/start-local-role-workers.mjs +77 -20
  23. package/dist/esm/authorization/lifecycleRouting.js +62 -0
  24. package/dist/esm/authorization/service.js +43 -12
  25. package/dist/esm/authorization/vaultProxyUse.js +2 -6
  26. package/dist/esm/cloud-host.js +23 -25
  27. package/dist/esm/core/EmailOtpRecords.js +1 -217
  28. package/dist/esm/core/EmailOtpStores.js +0 -859
  29. package/dist/esm/core/IdentityStore.js +2 -426
  30. package/dist/esm/core/SessionService.js +7 -30
  31. package/dist/esm/core/ThresholdService/config.js +1 -9
  32. package/dist/esm/core/ThresholdService/index.js +0 -4
  33. package/dist/esm/core/ThresholdService/kv.js +1 -66
  34. package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.js +1 -13
  35. package/dist/esm/core/ThresholdService/routerAbNormalSigningPolicy.js +4 -21
  36. package/dist/esm/core/ThresholdService/stores/WalletSessionStore.js +0 -617
  37. package/dist/esm/core/ThresholdService/validation.js +2 -346
  38. package/dist/esm/core/WalletAuthMethodStore.js +2 -123
  39. package/dist/esm/core/WalletStore.js +6 -214
  40. package/dist/esm/core/WebAuthnAuthenticatorStore.js +0 -202
  41. package/dist/esm/core/WebAuthnCredentialBindingStore.js +2 -182
  42. package/dist/esm/core/WebAuthnLoginChallengeStore.js +0 -52
  43. package/dist/esm/core/WebAuthnSyncChallengeStore.js +0 -54
  44. package/dist/esm/core/authService/emailOtpConfig.js +1 -195
  45. package/dist/esm/core/authService/emailOtpEnrollment.js +0 -141
  46. package/dist/esm/core/authService/emailOtpSeal.js +0 -78
  47. package/dist/esm/core/authService/nearTransactions.js +3 -98
  48. package/dist/esm/core/authService/rateLimits.js +0 -87
  49. package/dist/esm/core/authService/thresholdEcdsaKeyInventory.js +2 -1
  50. package/dist/esm/core/authService/webauthn.js +14 -464
  51. package/dist/esm/core/authService/webauthnOidcHelpers.js +1 -24
  52. package/dist/esm/core/authService/webauthnVerificationOutcomes.js +5 -24
  53. package/dist/esm/core/authService/webauthnWalletBinding.js +0 -37
  54. package/dist/esm/core/config.js +1 -95
  55. package/dist/esm/core/d1EcdsaSignerRead.js +76 -0
  56. package/dist/esm/core/d1IdentityStore.js +17 -77
  57. package/dist/esm/core/d1TenantStore.js +1 -24
  58. package/dist/esm/core/d1WalletAuthMethodStore.js +2 -5
  59. package/dist/esm/core/d1WalletStore.js +15 -25
  60. package/dist/esm/core/deviceLinking/linkedDeviceBootstrap.js +13 -0
  61. package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +1 -5
  62. package/dist/esm/core/deviceLinking/linkedDeviceSession.js +20 -14
  63. package/dist/esm/core/deviceLinking/linkedDeviceSessionApproval.js +1 -3
  64. package/dist/esm/core/deviceLinking/linkedDeviceSessionRecord.js +2 -8
  65. package/dist/esm/core/deviceLinking/requestProof.js +22 -10
  66. package/dist/esm/core/ecdsaMaterialReadSnapshot.js +85 -0
  67. package/dist/esm/core/emailOtpD1Statements.js +107 -94
  68. package/dist/esm/core/keyMaterialBrands.js +2 -12
  69. package/dist/esm/core/nearKeys.js +0 -1
  70. package/dist/esm/core/nearRelayerAccountProvisioning.js +8 -14
  71. package/dist/esm/core/passkeyCredentialClaims.js +8 -0
  72. package/dist/esm/core/routerAbSigning/RouterAbEcdsaPresignRuntime.js +2 -6
  73. package/dist/esm/core/routerAbSigning/RouterAbNormalSigningRuntime.js +2 -30
  74. package/dist/esm/core/signingLanes/WalletExecutionLaneProjection.js +3 -6
  75. package/dist/esm/core/signingMaterial/ordinaryInactiveSignerMaterialReservation.js +2 -5
  76. package/dist/esm/core/thresholdEcdsaChainTarget.js +2 -7
  77. package/dist/esm/hosted-wallet-gateway.js +68 -45
  78. package/dist/esm/index.js +6 -19
  79. package/dist/esm/localHostedWalletGatewayHandler.js +25 -0
  80. package/dist/esm/localIntendedMaterialAdmissionFault.js +176 -0
  81. package/dist/esm/localIntendedPresignCancellation.js +44 -0
  82. package/dist/esm/localRegistrationSetupAuthority.js +89 -0
  83. package/dist/esm/router/auth/authRequestValidation.js +8 -16
  84. package/dist/esm/router/auth/commonRouterUtils.js +24 -10
  85. package/dist/esm/router/auth/walletSessionFailure.js +2 -5
  86. package/dist/esm/router/auth/webAuthnCredentialCodecs.js +4 -16
  87. package/dist/esm/router/cloudflare/d1/auth/d1AuthorizationAssembly.js +87 -0
  88. package/dist/esm/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.js +1 -0
  89. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.js +2 -6
  90. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthConfig.js +12 -2
  91. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +37 -308
  92. package/dist/esm/router/cloudflare/d1/auth/walletSessionCredentialReaders.js +76 -0
  93. package/dist/esm/router/cloudflare/d1/authorization/authorizedOperationStatements.js +52 -43
  94. package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +217 -50
  95. package/dist/esm/router/cloudflare/d1/authorization/d1VaultProxyStore.js +8 -12
  96. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +62 -21
  97. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEd25519ExportRootStore.js +6 -1
  98. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.js +12 -2
  99. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.js +4 -4
  100. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.js +1 -1
  101. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.js +3 -9
  102. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.js +2 -1
  103. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.js +89 -7
  104. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.js +24 -15
  105. package/dist/esm/router/cloudflare/d1/deviceLinking/index.js +3 -3
  106. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.js +9 -6
  107. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.js +12 -56
  108. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.js +17 -81
  109. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.js +1 -1
  110. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.js +0 -1
  111. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpDeliveryRuntime.js +6 -25
  112. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.js +1 -1
  113. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.js +1 -7
  114. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.js +19 -13
  115. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.js +12 -48
  116. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +24 -86
  117. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +9 -32
  118. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.js +5 -21
  119. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.js +44 -12
  120. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.js +1 -49
  121. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.js +37 -136
  122. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleRegistrationCompletion.js +85 -0
  123. package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +0 -1
  124. package/dist/esm/router/cloudflare/d1/identity/d1IdentityService.js +9 -88
  125. package/dist/esm/router/cloudflare/d1/near/d1SponsoredNearAccount.js +242 -0
  126. package/dist/esm/router/cloudflare/d1/oidc/d1OidcBoundary.js +18 -92
  127. package/dist/esm/router/cloudflare/d1/oidc/d1OidcVerificationService.js +4 -55
  128. package/dist/esm/router/cloudflare/d1/oidc/googleOidcToken.js +41 -0
  129. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +9 -15
  130. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +36 -7
  131. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.js +9 -13
  132. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.js +11 -50
  133. package/dist/esm/router/cloudflare/d1/registration/d1EvmFamilyEcdsaRegistrationBranch.js +5 -20
  134. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +13 -10
  135. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +9 -14
  136. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +25 -13
  137. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +7 -31
  138. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationSetupSupport.js +74 -0
  139. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +7 -1
  140. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +101 -260
  141. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetup.js +12 -56
  142. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetupExecution.js +155 -0
  143. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.js +1 -3
  144. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.js +1 -4
  145. package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +131 -31
  146. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerFinalizeRecord.js +68 -0
  147. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerService.js +7 -54
  148. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodService.js +9 -8
  149. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorityStore.js +2 -142
  150. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.js +55 -171
  151. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +10 -79
  152. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +23 -7
  153. package/dist/esm/router/cloudflare/runtime/routerAbPrewarm.js +2 -2
  154. package/dist/esm/router/cloudflare/runtime/staticWalletConsoleBinding.js +6 -20
  155. package/dist/esm/router/cloudflare/runtime/tenantRootCreationGrant.js +2 -9
  156. package/dist/esm/router/cloudflare/runtime/walletConsoleOps.js +1 -0
  157. package/dist/esm/router/cloudflare/runtime/walletConsoleOpsClient.js +5 -0
  158. package/dist/esm/router/cloudflare/runtime/walletControlOps.js +2 -1
  159. package/dist/esm/router/cloudflare/runtime/walletGateway.js +1 -1
  160. package/dist/esm/router/cloudflare/runtime/walletRuntimeOps.js +16 -4
  161. package/dist/esm/router/cloudflare-adaptor.js +1 -2
  162. package/dist/esm/router/cloudflare.js +3390 -3437
  163. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js +11 -8
  164. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.js +3 -2
  165. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.js +6 -6
  166. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPersistence.js +5 -8
  167. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.js +6 -6
  168. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.js +3 -0
  169. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.js +8 -0
  170. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryWalletSessionAuthorization.js +3 -6
  171. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.js +6 -25
  172. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.js +39 -55
  173. package/dist/esm/router/domains/emailOtp/emailOtpRequestValidation.js +0 -1
  174. package/dist/esm/router/domains/emailOtp/emailOtpRouteHandlers.js +15 -62
  175. package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.js +2 -8
  176. package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationCommit.js +2 -8
  177. package/dist/esm/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.js +83 -74
  178. package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmission.js +1 -0
  179. package/dist/esm/router/domains/signingOperations/routerAbOperationStepUp.js +1 -0
  180. package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +5 -19
  181. package/dist/esm/router/domains/signingOperations/walletExecutionAdmission.js +3 -7
  182. package/dist/esm/router/domains/tenantRoot/tenantRootIdentityResolution.js +7 -13
  183. package/dist/esm/router/domains/walletRegistration/walletRegistrationReservation.js +70 -0
  184. package/dist/esm/router/domains/walletRegistration/walletRegistrationRoutes.js +10 -11
  185. package/dist/esm/router/domains/walletRegistration/walletRegistrationSetupPayload.js +2 -3
  186. package/dist/esm/router/domains/walletUnlock/walletUnlockRouteHandlers.js +55 -200
  187. package/dist/esm/router/express.js +858 -1145
  188. package/dist/esm/router/framework/http.js +7 -1
  189. package/dist/esm/router/framework/registrationSetupDispatch.js +14 -0
  190. package/dist/esm/router/framework/ror/normalize.js +0 -1
  191. package/dist/esm/router/framework/ror/options.js +0 -1
  192. package/dist/esm/router/framework/ror/provider.js +0 -1
  193. package/dist/esm/router/framework/ror/staticProvider.js +0 -1
  194. package/dist/esm/router/framework/routeDefinitions.js +1 -2
  195. package/dist/esm/router/framework/routerApiWebhooks.js +0 -1
  196. package/dist/esm/router/framework/runtimeSnapshotConsumer.js +8 -35
  197. package/dist/esm/router/ror.js +0 -1
  198. package/dist/esm/router/transport/fetch/createFetchRouter.js +3 -8
  199. package/dist/esm/router/transport/fetch/routes/auth.js +11 -41
  200. package/dist/esm/router/transport/fetch/routes/deviceLinking.js +36 -147
  201. package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +7 -23
  202. package/dist/esm/router/transport/fetch/routes/deviceLinkingResponses.js +130 -0
  203. package/dist/esm/router/transport/fetch/routes/ecdsaOperationStepUpFactor.js +171 -0
  204. package/dist/esm/router/transport/fetch/routes/passkeyCustody.js +1 -0
  205. package/dist/esm/router/transport/fetch/routes/sessions.js +1 -0
  206. package/dist/esm/router/transport/fetch/routes/syncAccount.js +15 -38
  207. package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +46 -194
  208. package/dist/esm/router/transport/fetch/routes/walletExecutionLanePreflight.js +4 -1
  209. package/dist/esm/router/transport/fetch/routes/walletRegistration.js +3 -1
  210. package/dist/esm/router/transport/fetch/routes/webauthnAuthenticators.js +4 -16
  211. package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +0 -1
  212. package/dist/esm/shared-ts/src/authorization/walletSignerActivationEquality.js +12 -0
  213. package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +0 -2
  214. package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +2 -5
  215. package/dist/esm/shared-ts/src/device-linking/contracts.js +16 -1
  216. package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +1 -5
  217. package/dist/esm/shared-ts/src/device-linking/digests.js +1 -8
  218. package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +12 -16
  219. package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +5 -8
  220. package/dist/esm/shared-ts/src/near/actions.js +0 -1
  221. package/dist/esm/shared-ts/src/near/nearClient.js +0 -2
  222. package/dist/esm/shared-ts/src/passkey-custody/primitives.js +5 -1
  223. package/dist/esm/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js +1 -1
  224. package/dist/esm/shared-ts/src/signing-lanes/index.js +1 -6
  225. package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +5 -9
  226. package/dist/esm/shared-ts/src/signing-lanes/participantDigest.js +2 -81
  227. package/dist/esm/shared-ts/src/signing-lanes/participants.js +1 -219
  228. package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +0 -3
  229. package/dist/esm/shared-ts/src/tenant-root/tenantRootIdentifier.js +12 -0
  230. package/dist/esm/shared-ts/src/tenant-root/tenantRootIdentity.js +2 -9
  231. package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +2 -6
  232. package/dist/esm/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js +0 -1
  233. package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +1 -22
  234. package/dist/esm/shared-ts/src/threshold/participants.js +0 -1
  235. package/dist/esm/shared-ts/src/threshold/signingRootScope.js +0 -1
  236. package/dist/esm/shared-ts/src/utils/addWalletAuthMethod.js +4 -13
  237. package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +1 -7
  238. package/dist/esm/shared-ts/src/utils/domainIds.js +1 -16
  239. package/dist/esm/shared-ts/src/utils/ecdsaCapabilityActivation.js +1 -11
  240. package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +2 -5
  241. package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +0 -1
  242. package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +3 -1
  243. package/dist/esm/shared-ts/src/utils/errors.js +1 -19
  244. package/dist/esm/shared-ts/src/utils/exactKeys.js +17 -0
  245. package/dist/esm/shared-ts/src/utils/failure.js +20 -0
  246. package/dist/esm/shared-ts/src/utils/near.js +1 -1
  247. package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +1 -1
  248. package/dist/esm/shared-ts/src/utils/registrationIds.js +1 -5
  249. package/dist/esm/shared-ts/src/utils/registrationIntent.js +3 -13
  250. package/dist/esm/shared-ts/src/utils/registrationSetupOperation.js +8 -0
  251. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +3 -6
  252. package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +1 -2
  253. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +1 -1
  254. package/dist/esm/shared-ts/src/utils/thresholdEcdsaChainTarget.js +9 -0
  255. package/dist/esm/shared-ts/src/utils/validation.js +1 -5
  256. package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +0 -1
  257. package/dist/esm/shared-ts/src/utils/walletManagementProtocol.js +6 -0
  258. package/dist/esm/shared-ts/src/utils/wireSchema.js +2 -13
  259. package/dist/esm/shared-ts/src/wallet-recovery/backupAcknowledgement.js +6 -24
  260. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +0 -1
  261. package/dist/esm/shared-ts/src/wallet-recovery/recoveryKeyId.js +5 -6
  262. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +1 -4
  263. package/dist/esm/storage/d1Sql.js +1 -7
  264. package/dist/esm/threshold/session/signingSessionSeal/crypto/cipher.js +10 -33
  265. package/dist/esm/threshold/session/signingSessionSeal/guards/backends.js +1 -2
  266. package/dist/esm/threshold/session/signingSessionSeal/idempotencyBackends.js +3 -4
  267. package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +3 -10
  268. package/dist/esm/threshold/session/signingSessionSeal/options.js +0 -1
  269. package/dist/esm/threshold/session/signingSessionSeal/service.js +8 -35
  270. package/dist/esm/threshold/session/signingSessionSeal/transport/express.js +18 -94
  271. package/dist/esm/threshold/session/signingSessionSeal/transport/fetch.js +6 -30
  272. package/dist/esm/threshold/session/signingSessionSeal/transport/shared.js +5 -20
  273. package/dist/esm/wasm/evm_crypto/pkg/evm_crypto_bg.wasm +0 -0
  274. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +0 -611
  275. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
  276. package/dist/esm/wasm/shamir3pass_runtime/pkg/shamir3pass_runtime_bg.wasm +0 -0
  277. package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +0 -4
  278. package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +2 -1
  279. package/dist/types/shared-ts/src/authorization/walletSessionIssuance.d.ts +9 -2
  280. package/dist/types/shared-ts/src/authorization/walletSignerActivationEquality.d.ts +4 -0
  281. package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +3 -4
  282. package/dist/types/shared-ts/src/device-linking/contracts.d.ts +6 -63
  283. package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +2 -0
  284. package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +5 -12
  285. package/dist/types/shared-ts/src/passkey-custody/primitives.d.ts +9 -0
  286. package/dist/types/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.d.ts +0 -2
  287. package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +11 -12
  288. package/dist/types/shared-ts/src/signing-lanes/ids.d.ts +3 -17
  289. package/dist/types/shared-ts/src/signing-lanes/index.d.ts +0 -4
  290. package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.d.ts +0 -1
  291. package/dist/types/shared-ts/src/signing-lanes/participantDigest.d.ts +0 -18
  292. package/dist/types/shared-ts/src/signing-lanes/participants.d.ts +6 -35
  293. package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +6 -845
  294. package/dist/types/shared-ts/src/tenant-root/tenantRootIdentifier.d.ts +3 -0
  295. package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +2 -1
  296. package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +6 -0
  297. package/dist/types/shared-ts/src/threshold/keyMaterialBrands.d.ts +0 -10
  298. package/dist/types/shared-ts/src/threshold/participants.d.ts +1 -1
  299. package/dist/types/shared-ts/src/threshold/signingRootScope.d.ts +1 -0
  300. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +1 -133
  301. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.typecheck.d.ts +4 -18
  302. package/dist/types/shared-ts/src/utils/domainIds.d.ts +0 -12
  303. package/dist/types/shared-ts/src/utils/ecdsaKeyFactsInventory.d.ts +2 -11
  304. package/dist/types/shared-ts/src/utils/eip1559TxWasmJson.d.ts +16 -0
  305. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +2 -0
  306. package/dist/types/shared-ts/src/utils/errors.d.ts +0 -4
  307. package/dist/types/shared-ts/src/utils/exactKeys.d.ts +11 -0
  308. package/dist/types/shared-ts/src/utils/failure.d.ts +12 -0
  309. package/dist/types/shared-ts/src/utils/jsonRpc.d.ts +3 -4
  310. package/dist/types/shared-ts/src/utils/near.d.ts +0 -20
  311. package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +1 -0
  312. package/dist/types/shared-ts/src/utils/normalize.d.ts +0 -2
  313. package/dist/types/shared-ts/src/utils/registrationAuthMethodInput.d.ts +3 -8
  314. package/dist/types/shared-ts/src/utils/registrationSetupOperation.d.ts +3 -0
  315. package/dist/types/shared-ts/src/utils/registrationSignerPlan.d.ts +7 -19
  316. package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +3 -1
  317. package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +1 -0
  318. package/dist/types/shared-ts/src/utils/routerAbEd25519YaoDigests.d.ts +3 -4
  319. package/dist/types/shared-ts/src/utils/routerAbNormalSigningIdentity.d.ts +30 -8
  320. package/dist/types/shared-ts/src/utils/routerApiKeyAuth.d.ts +2 -0
  321. package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +10 -11
  322. package/dist/types/shared-ts/src/utils/thresholdEcdsaChainTarget.d.ts +25 -0
  323. package/dist/types/shared-ts/src/utils/validation.d.ts +1 -3
  324. package/dist/types/shared-ts/src/utils/variant.d.ts +18 -0
  325. package/dist/types/shared-ts/src/utils/walletAuthMethodRecord.d.ts +3 -6
  326. package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +0 -1
  327. package/dist/types/shared-ts/src/utils/walletManagementProtocol.d.ts +3 -0
  328. package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +4 -2
  329. package/dist/types/shared-ts/src/utils/wireSchema.d.ts +0 -2
  330. package/dist/types/shared-ts/src/wallet-recovery/backupAcknowledgement.d.ts +0 -1
  331. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeReservation.d.ts +1 -10
  332. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodes.d.ts +1 -3
  333. package/dist/types/shared-ts/src/wallet-recovery/recoveryEnvelopes.d.ts +3 -16
  334. package/dist/types/shared-ts/src/wallet-recovery/recoveryKeyId.d.ts +5 -21
  335. package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryPreparation.d.ts +15 -0
  336. package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryTarget.d.ts +3 -4
  337. package/dist/types/wallet-server/src/authorization/domain.d.ts +13 -2
  338. package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.d.ts +27 -3
  339. package/dist/types/wallet-server/src/authorization/lifecycleRouting.d.ts +32 -0
  340. package/dist/types/wallet-server/src/authorization/lifecycleRouting.typecheck.d.ts +2 -0
  341. package/dist/types/wallet-server/src/authorization/recoveryRouting.d.ts +22 -0
  342. package/dist/types/wallet-server/src/authorization/recoveryRouting.typecheck.d.ts +2 -0
  343. package/dist/types/wallet-server/src/authorization/service.d.ts +27 -1
  344. package/dist/types/wallet-server/src/authorization/sessionRouting.d.ts +20 -0
  345. package/dist/types/wallet-server/src/authorization/sessionRouting.typecheck.d.ts +2 -0
  346. package/dist/types/wallet-server/src/cloud-host.d.ts +31 -9
  347. package/dist/types/wallet-server/src/core/EmailOtpRecords.d.ts +1 -22
  348. package/dist/types/wallet-server/src/core/EmailOtpStores.d.ts +1 -79
  349. package/dist/types/wallet-server/src/core/IdentityStore.d.ts +0 -10
  350. package/dist/types/wallet-server/src/core/RegistrationCeremonyStore.d.ts +0 -1
  351. package/dist/types/wallet-server/src/core/ThresholdService/config.d.ts +0 -2
  352. package/dist/types/wallet-server/src/core/ThresholdService/index.d.ts +1 -3
  353. package/dist/types/wallet-server/src/core/ThresholdService/kv.d.ts +0 -7
  354. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.d.ts +0 -3
  355. package/dist/types/wallet-server/src/core/ThresholdService/routerAbNormalSigningPolicy.d.ts +0 -1
  356. package/dist/types/wallet-server/src/core/ThresholdService/stores/WalletSessionStore.d.ts +6 -18
  357. package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +0 -127
  358. package/dist/types/wallet-server/src/core/WalletAuthMethodStore.d.ts +1 -5
  359. package/dist/types/wallet-server/src/core/WalletStore.d.ts +0 -3
  360. package/dist/types/wallet-server/src/core/WebAuthnAuthenticatorStore.d.ts +8 -20
  361. package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.d.ts +1 -27
  362. package/dist/types/wallet-server/src/core/WebAuthnLoginChallengeStore.d.ts +2 -16
  363. package/dist/types/wallet-server/src/core/WebAuthnSyncChallengeStore.d.ts +22 -14
  364. package/dist/types/wallet-server/src/core/authService/emailOtpConfig.d.ts +0 -24
  365. package/dist/types/wallet-server/src/core/authService/emailOtpEnrollment.d.ts +1 -70
  366. package/dist/types/wallet-server/src/core/authService/emailOtpSeal.d.ts +1 -14
  367. package/dist/types/wallet-server/src/core/authService/githubOAuth.d.ts +2 -1
  368. package/dist/types/wallet-server/src/core/authService/nearTransactions.d.ts +1 -39
  369. package/dist/types/wallet-server/src/core/authService/rateLimits.d.ts +0 -17
  370. package/dist/types/wallet-server/src/core/authService/webauthn.d.ts +0 -125
  371. package/dist/types/wallet-server/src/core/authService/webauthnOidcHelpers.d.ts +0 -3
  372. package/dist/types/wallet-server/src/core/authService/webauthnVerificationOutcomes.d.ts +1 -1
  373. package/dist/types/wallet-server/src/core/authService/webauthnWalletBinding.d.ts +0 -12
  374. package/dist/types/wallet-server/src/core/config.d.ts +0 -10
  375. package/dist/types/wallet-server/src/core/d1EcdsaSignerRead.d.ts +39 -0
  376. package/dist/types/wallet-server/src/core/d1IdentityStore.d.ts +0 -2
  377. package/dist/types/wallet-server/src/core/d1TenantStore.d.ts +0 -7
  378. package/dist/types/wallet-server/src/core/d1WalletAuthMethodStore.d.ts +0 -1
  379. package/dist/types/wallet-server/src/core/d1WalletStore.d.ts +10 -0
  380. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceBootstrap.d.ts +19 -0
  381. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSession.d.ts +8 -6
  382. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionRecord.d.ts +3 -4
  383. package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +2 -5
  384. package/dist/types/wallet-server/src/core/ecdsaMaterialReadSnapshot.d.ts +19 -0
  385. package/dist/types/wallet-server/src/core/emailOtpD1Statements.d.ts +10 -7
  386. package/dist/types/wallet-server/src/core/keyMaterialBrands.d.ts +1 -5
  387. package/dist/types/wallet-server/src/core/nearRelayerAccountProvisioning.d.ts +0 -1
  388. package/dist/types/wallet-server/src/core/passkeyCredentialClaims.d.ts +9 -0
  389. package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbEcdsaPresignRuntime.d.ts +0 -2
  390. package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbNormalSigningRuntime.d.ts +3 -7
  391. package/dist/types/wallet-server/src/core/rpcClients/near/NearClient.d.ts +1 -2
  392. package/dist/types/wallet-server/src/core/signingLanes/WalletExecutionLaneProjection.d.ts +2 -11
  393. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.d.ts +1 -92
  394. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.typecheck.d.ts +4 -52
  395. package/dist/types/wallet-server/src/core/thresholdEcdsaChainTarget.d.ts +3 -12
  396. package/dist/types/wallet-server/src/core/types.d.ts +2 -305
  397. package/dist/types/wallet-server/src/hosted-wallet-gateway.d.ts +15 -3
  398. package/dist/types/wallet-server/src/index.d.ts +8 -13
  399. package/dist/types/wallet-server/src/localIntendedMaterialAdmissionFault.d.ts +38 -0
  400. package/dist/types/wallet-server/src/localIntendedPresignCancellation.d.ts +4 -0
  401. package/dist/types/wallet-server/src/localRegistrationSetupAuthority.d.ts +13 -0
  402. package/dist/types/wallet-server/src/router/auth/authRequestValidation.d.ts +4 -9
  403. package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +15 -1
  404. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1AuthorizationAssembly.d.ts +23 -0
  405. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.d.ts +0 -1
  406. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthConfig.d.ts +25 -3
  407. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthService.d.ts +1 -1
  408. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/walletSessionCredentialReaders.d.ts +9 -0
  409. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/authorizedOperationStatements.d.ts +4 -0
  410. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +11 -2
  411. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.d.ts +22 -3
  412. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.d.ts +7 -1
  413. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.d.ts +1 -10
  414. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.d.ts +4 -0
  415. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.d.ts +8 -6
  416. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.d.ts +5 -8
  417. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.d.ts +1 -13
  418. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.d.ts +2 -2
  419. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.d.ts +1 -1
  420. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.d.ts +2 -8
  421. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.d.ts +0 -2
  422. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.d.ts +20 -11
  423. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +5 -5
  424. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.d.ts +4 -14
  425. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.d.ts +29 -1
  426. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.d.ts +3 -16
  427. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.d.ts +7 -2
  428. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleRegistrationCompletion.d.ts +23 -0
  429. package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityService.d.ts +0 -12
  430. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1SponsoredNearAccount.d.ts +24 -0
  431. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1SponsoredNearAccount.typecheck.d.ts +2 -0
  432. package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/d1OidcVerificationService.d.ts +0 -1
  433. package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/googleOidcToken.d.ts +4 -0
  434. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.d.ts +5 -0
  435. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.d.ts +9 -0
  436. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.d.ts +3 -7
  437. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.d.ts +10 -11
  438. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.d.ts +3 -2
  439. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationSetupSupport.d.ts +51 -0
  440. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.d.ts +3 -0
  441. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationService.d.ts +35 -50
  442. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetup.d.ts +3 -30
  443. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetupExecution.d.ts +11 -0
  444. package/dist/types/wallet-server/src/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.d.ts +14 -1
  445. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerFinalizeRecord.d.ts +27 -0
  446. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.d.ts +1 -10
  447. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodService.d.ts +2 -2
  448. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorityStore.d.ts +0 -4
  449. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.d.ts +3 -0
  450. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnRecords.d.ts +8 -50
  451. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +23 -10
  452. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.typecheck.d.ts +2 -0
  453. package/dist/types/wallet-server/src/router/cloudflare/runtime/cloudflare.types.d.ts +0 -2
  454. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOps.d.ts +9 -34
  455. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOpsClient.d.ts +2 -0
  456. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletGateway.d.ts +1 -1
  457. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRuntimeOps.d.ts +3 -0
  458. package/dist/types/wallet-server/src/router/cloudflare-adaptor.d.ts +0 -1
  459. package/dist/types/wallet-server/src/router/domains/ecdsa/thresholdEcdsaRequestValidation.d.ts +3 -15
  460. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.d.ts +1 -1
  461. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.d.ts +2 -2
  462. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.d.ts +2 -2
  463. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.typecheck.d.ts +2 -0
  464. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.d.ts +2 -0
  465. package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.d.ts +2 -0
  466. package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.d.ts +9 -50
  467. package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.d.ts +0 -2
  468. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationCommit.d.ts +0 -3
  469. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryKeyManifest.d.ts +1 -13
  470. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.d.ts +8 -9
  471. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmission.d.ts +13 -0
  472. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbOperationStepUp.d.ts +3 -4
  473. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +7 -33
  474. package/dist/types/wallet-server/src/router/domains/signingOperations/walletExecutionAdmission.d.ts +1 -2
  475. package/dist/types/wallet-server/src/router/domains/syncAccount/syncAccountRequestValidation.d.ts +2 -7
  476. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationInputs.d.ts +1 -0
  477. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationReservation.d.ts +51 -0
  478. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationRoutes.d.ts +2 -10
  479. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationSetupPayload.d.ts +2 -2
  480. package/dist/types/wallet-server/src/router/framework/apiCredentialPorts.d.ts +3 -1
  481. package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +39 -38
  482. package/dist/types/wallet-server/src/router/framework/googleLoginResolution.typecheck.d.ts +2 -0
  483. package/dist/types/wallet-server/src/router/framework/http.d.ts +1 -0
  484. package/dist/types/wallet-server/src/router/framework/registrationSetupDispatch.d.ts +13 -0
  485. package/dist/types/wallet-server/src/router/framework/ror/normalize.d.ts +1 -9
  486. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinking.d.ts +1 -1
  487. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.d.ts +3 -6
  488. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingResponses.d.ts +17 -0
  489. package/dist/types/wallet-server/src/router/transport/fetch/routes/ecdsaOperationStepUpFactor.d.ts +37 -0
  490. package/dist/types/wallet-server/src/router/transport/fetch/routes/syncAccountBootstrap.d.ts +3 -5
  491. package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +0 -1
  492. package/dist/types/wallet-server/src/storage/d1Sql.d.ts +0 -1
  493. package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotencyRecords.d.ts +1 -2
  494. package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/signingSessionSeal.types.d.ts +6 -8
  495. package/migrations/d1-signer/0040_namespace_home_challenges.sql +16 -0
  496. package/migrations/d1-signer/0041_step_up_admission_expiry.sql +28 -0
  497. package/migrations/d1-signer/0042_deployment_resource_challenges.sql +4 -0
  498. package/migrations/d1-signer/0043_google_registration_candidate_claim.sql +2 -0
  499. package/migrations/d1-signer/0044_linked_device_bootstrap_imports.sql +6 -0
  500. package/migrations/d1-signer/0045_wallet_owned_capability_receipts.sql +29 -0
  501. package/migrations/d1-signer/0046_wallet_owned_signing_abuse.sql +41 -0
  502. package/migrations/d1-signer/0047_remove_unused_near_public_keys.sql +2 -0
  503. package/migrations/d1-signer/0048_operation_owner_scope.sql +45 -0
  504. package/package.json +2 -3
  505. package/src/README.md +11 -3
  506. package/dist/esm/core/AuthService.js +0 -2
  507. package/dist/esm/core/NearPublicKeyStore.js +0 -200
  508. package/dist/esm/core/ThresholdService/stores/CloudflareDurableObjectStore.js +0 -397
  509. package/dist/esm/core/ThresholdService/stores/KeyStore.js +0 -140
  510. package/dist/esm/core/ThresholdService/stores/SessionStore.js +0 -361
  511. package/dist/esm/core/ThresholdService/stores/StoreConfig.js +0 -13
  512. package/dist/esm/core/authService/AuthService.js +0 -594
  513. package/dist/esm/core/authService/bytes.js +0 -22
  514. package/dist/esm/core/authService/configValues.js +0 -15
  515. package/dist/esm/core/authService/emailOtpChallengeOperations.js +0 -126
  516. package/dist/esm/core/authService/emailOtpChallengeProof.js +0 -214
  517. package/dist/esm/core/authService/emailOtpChallengeVerification.js +0 -335
  518. package/dist/esm/core/authService/emailOtpChallenges.js +0 -260
  519. package/dist/esm/core/authService/emailOtpDelivery.js +0 -169
  520. package/dist/esm/core/authService/emailOtpGrant.js +0 -74
  521. package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +0 -175
  522. package/dist/esm/core/authService/emailOtpUnlock.js +0 -264
  523. package/dist/esm/core/authService/googleEmailOtpOperations.js +0 -141
  524. package/dist/esm/core/authService/googleEmailOtpRegistration.js +0 -674
  525. package/dist/esm/core/authService/identity.js +0 -57
  526. package/dist/esm/core/authService/identityOperations.js +0 -32
  527. package/dist/esm/core/authService/nearAccountOperations.js +0 -229
  528. package/dist/esm/core/authService/nearPublicKeyMetadata.js +0 -127
  529. package/dist/esm/core/authService/oidcVerification.js +0 -261
  530. package/dist/esm/core/authService/registrationThresholdHelpers.js +0 -30
  531. package/dist/esm/core/authService/runtime.js +0 -45
  532. package/dist/esm/core/authService/storeRegistry.js +0 -102
  533. package/dist/esm/core/authService/thresholdStoreSummary.js +0 -32
  534. package/dist/esm/core/authService/webauthnAuthority.js +0 -17
  535. package/dist/esm/core/defaultConfigsServer.js +0 -9
  536. package/dist/esm/core/hostedAccountIds.js +0 -225
  537. package/dist/esm/core/routerAbSigning/createRouterAbSigningRuntimes.js +0 -84
  538. package/dist/esm/core/signingLanes/LaneAggregateRevocationApplicationService.js +0 -86
  539. package/dist/esm/core/signingLanes/LaneEnrollmentActivation.js +0 -324
  540. package/dist/esm/core/signingLanes/LaneEnrollmentRevocation.js +0 -173
  541. package/dist/esm/core/signingLanes/LaneLifecycleApplicationService.js +0 -198
  542. package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +0 -73
  543. package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +0 -68
  544. package/dist/esm/core/signingLanes/signingWorkerLaneMaterialIdentity.js +0 -0
  545. package/dist/esm/core/storeBackends.js +0 -208
  546. package/dist/esm/core/utils.js +0 -14
  547. package/dist/esm/core/webAuthnStoreBackends.js +0 -198
  548. package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +0 -56
  549. package/dist/esm/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.js +0 -10
  550. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.js +0 -22
  551. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.js +0 -166
  552. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.js +0 -38
  553. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.js +0 -20
  554. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.js +0 -1459
  555. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLockStore.js +0 -114
  556. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.js +0 -16
  557. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneRecords.js +0 -171
  558. package/dist/esm/router/cloudflare/d1/signingLanes/index.js +0 -10
  559. package/dist/esm/router/cloudflare/durableObjects/thresholdStore.js +0 -404
  560. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +0 -596
  561. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +0 -273
  562. package/dist/esm/router/cloudflare/signingLanes/index.js +0 -4
  563. package/dist/esm/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.js +0 -32
  564. package/dist/esm/router/transport/fetch/routes/nearPublicKeys.js +0 -39
  565. package/dist/esm/shared-ts/src/signing-lanes/rotation.js +0 -8
  566. package/dist/esm/shared-ts/src/signing-lanes/rotationDigests.js +0 -358
  567. package/dist/esm/shared-ts/src/signing-lanes/rotationLifecycle.js +0 -313
  568. package/dist/esm/shared-ts/src/signing-lanes/rotationParsers.js +0 -532
  569. package/dist/esm/shared-ts/src/signing-lanes/rotationProtocolParsers.js +0 -323
  570. package/dist/esm/shared-ts/src/signing-lanes/rotationWireFields.js +0 -59
  571. package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker_bg.wasm +0 -0
  572. package/dist/types/shared-ts/src/signing-lanes/participantDigest.typecheck.d.ts +0 -2
  573. package/dist/types/shared-ts/src/signing-lanes/rotation.typecheck.d.ts +0 -2
  574. package/dist/types/shared-ts/src/signing-lanes/rotationDigests.d.ts +0 -13
  575. package/dist/types/shared-ts/src/signing-lanes/rotationLifecycle.d.ts +0 -78
  576. package/dist/types/shared-ts/src/signing-lanes/rotationParsers.d.ts +0 -27
  577. package/dist/types/shared-ts/src/signing-lanes/rotationProtocolParsers.d.ts +0 -6
  578. package/dist/types/shared-ts/src/signing-lanes/rotationWireFields.d.ts +0 -20
  579. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeAttempt.d.ts +0 -59
  580. package/dist/types/wallet-server/src/core/AuthService.d.ts +0 -3
  581. package/dist/types/wallet-server/src/core/NearPublicKeyStore.d.ts +0 -48
  582. package/dist/types/wallet-server/src/core/ThresholdService/stores/CloudflareDurableObjectStore.d.ts +0 -21
  583. package/dist/types/wallet-server/src/core/ThresholdService/stores/KeyStore.d.ts +0 -40
  584. package/dist/types/wallet-server/src/core/ThresholdService/stores/SessionStore.d.ts +0 -98
  585. package/dist/types/wallet-server/src/core/ThresholdService/stores/StoreConfig.d.ts +0 -4
  586. package/dist/types/wallet-server/src/core/ThresholdService/stores/ThresholdStoreConfig.typecheck.d.ts +0 -2
  587. package/dist/types/wallet-server/src/core/authService/AuthService.d.ts +0 -490
  588. package/dist/types/wallet-server/src/core/authService/bytes.d.ts +0 -4
  589. package/dist/types/wallet-server/src/core/authService/configValues.d.ts +0 -7
  590. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeOperations.d.ts +0 -109
  591. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeProof.d.ts +0 -169
  592. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeVerification.d.ts +0 -47
  593. package/dist/types/wallet-server/src/core/authService/emailOtpChallenges.d.ts +0 -94
  594. package/dist/types/wallet-server/src/core/authService/emailOtpDelivery.d.ts +0 -66
  595. package/dist/types/wallet-server/src/core/authService/emailOtpGrant.d.ts +0 -43
  596. package/dist/types/wallet-server/src/core/authService/emailOtpRegistrationEnrollment.d.ts +0 -49
  597. package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +0 -71
  598. package/dist/types/wallet-server/src/core/authService/googleEmailOtpOperations.d.ts +0 -126
  599. package/dist/types/wallet-server/src/core/authService/googleEmailOtpRegistration.d.ts +0 -169
  600. package/dist/types/wallet-server/src/core/authService/identity.d.ts +0 -25
  601. package/dist/types/wallet-server/src/core/authService/identityOperations.d.ts +0 -19
  602. package/dist/types/wallet-server/src/core/authService/nearAccountOperations.d.ts +0 -55
  603. package/dist/types/wallet-server/src/core/authService/nearPublicKeyMetadata.d.ts +0 -44
  604. package/dist/types/wallet-server/src/core/authService/oidcVerification.d.ts +0 -66
  605. package/dist/types/wallet-server/src/core/authService/registrationThresholdHelpers.d.ts +0 -11
  606. package/dist/types/wallet-server/src/core/authService/runtime.d.ts +0 -20
  607. package/dist/types/wallet-server/src/core/authService/storeRegistry.d.ts +0 -53
  608. package/dist/types/wallet-server/src/core/authService/thresholdStoreSummary.d.ts +0 -3
  609. package/dist/types/wallet-server/src/core/authService/webauthnAuthority.d.ts +0 -5
  610. package/dist/types/wallet-server/src/core/defaultConfigsServer.d.ts +0 -5
  611. package/dist/types/wallet-server/src/core/hostedAccountIds.d.ts +0 -16
  612. package/dist/types/wallet-server/src/core/routerAbSigning/createRouterAbSigningRuntimes.d.ts +0 -16
  613. package/dist/types/wallet-server/src/core/signingLanes/LaneAggregateRevocationApplicationService.d.ts +0 -36
  614. package/dist/types/wallet-server/src/core/signingLanes/LaneEffectJournalStore.d.ts +0 -62
  615. package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentActivation.d.ts +0 -13
  616. package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentRevocation.d.ts +0 -24
  617. package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleApplicationService.d.ts +0 -141
  618. package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleStore.d.ts +0 -228
  619. package/dist/types/wallet-server/src/core/signingLanes/ecdsaServerRetirement.d.ts +0 -58
  620. package/dist/types/wallet-server/src/core/signingLanes/ed25519ServerRetirement.d.ts +0 -30
  621. package/dist/types/wallet-server/src/core/signingLanes/signingWorkerLaneMaterialIdentity.d.ts +0 -21
  622. package/dist/types/wallet-server/src/core/storeBackends.d.ts +0 -83
  623. package/dist/types/wallet-server/src/core/utils.d.ts +0 -3
  624. package/dist/types/wallet-server/src/core/webAuthnStoreBackends.d.ts +0 -96
  625. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1NearPublicKeyStore.d.ts +0 -29
  626. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.d.ts +0 -4
  627. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.d.ts +0 -4
  628. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.d.ts +0 -24
  629. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.d.ts +0 -20
  630. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.d.ts +0 -13
  631. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.d.ts +0 -51
  632. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLockStore.d.ts +0 -28
  633. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.d.ts +0 -5
  634. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneRecords.d.ts +0 -107
  635. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/index.d.ts +0 -10
  636. package/dist/types/wallet-server/src/router/cloudflare/durableObjects/thresholdStore.d.ts +0 -18
  637. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.d.ts +0 -217
  638. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.d.ts +0 -73
  639. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/index.d.ts +0 -4
  640. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.d.ts +0 -6
  641. package/dist/types/wallet-server/src/router/transport/fetch/routes/nearPublicKeys.d.ts +0 -3
  642. /package/dist/esm/{core/signingLanes/LaneEffectJournalStore.js → authorization/recoveryRouting.js} +0 -0
  643. /package/dist/esm/{core/signingLanes/LaneLifecycleStore.js → authorization/sessionRouting.js} +0 -0
@@ -1,596 +0,0 @@
1
- import { buildMpcMaterialActivationRef, mpcMaterialActivationRefsEqual, parseMpcSigningWorkerRef } from "../../../shared-ts/src/utils/domainIds.js";
2
- import { base64UrlDecode } from "../../../shared-ts/src/utils/base64.js";
3
- import { parseDigestB64u, sha256DigestB64u } from "../../../shared-ts/src/utils/canonicalPrimitives.js";
4
- import { base58Encode } from "../../../shared-ts/src/utils/base58.js";
5
- import { routerAbMpcMaterialActivationRefToWire, sameRouterAbMpcMaterialActivationRef } from "../../../shared-ts/src/utils/routerAbNormalSigningIdentity.js";
6
- import { parseEcdsaLifecycleId } from "../../../shared-ts/src/utils/ecdsaCapabilityActivation.js";
7
- import { parseLaneProtocolCommitReceiptV1, parseLaneServerActivationReceiptV1, parseRevokeSigningLaneV1 } from "../../../shared-ts/src/signing-lanes/rotationParsers.js";
8
- import { encodeLaneProtocolCommitReceiptV1 } from "../../../shared-ts/src/signing-lanes/rotationDigests.js";
9
- import { buildEcdsaServerRetirementRequestV1, parseAndVerifyEcdsaServerRetirementEffectV1 } from "../../../core/signingLanes/ecdsaServerRetirement.js";
10
- import { buildEd25519ServerRetirementRequestV1, parseAndVerifyEd25519ServerRetirementEffectV1 } from "../../../core/signingLanes/ed25519ServerRetirement.js";
11
- //#region src/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.ts
12
- const CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_EXECUTE_PATH_V1 = "/router-ab/internal/signing-worker/ecdsa-additive-lane/execute";
13
- const CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_ACTIVATE_PATH_V1 = "/router-ab/internal/signing-worker/ecdsa-additive-lane/activate";
14
- const CLOUDFLARE_SIGNING_WORKER_ED25519_YAO_LANE_ACTIVATE_PATH_V1 = "/router-ab/internal/signing-worker/ed25519-yao-lane/activate";
15
- const CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_RETIRE_PATH_V1 = "/router-ab/internal/signing-worker/ecdsa-additive-lane/retire";
16
- const CLOUDFLARE_SIGNING_WORKER_ED25519_YAO_LANE_RETIRE_PATH_V1 = "/router-ab/internal/signing-worker/ed25519-yao-lane/retire";
17
- var LaneLifecycleStoreEd25519LanePrivateBindingResolverV1 = class {
18
- constructor(lifecycleStore) {
19
- this.lifecycleStore = lifecycleStore;
20
- }
21
- async resolveRetirementBindingV1(input) {
22
- const product = await this.lifecycleStore.getProductEpoch({
23
- walletId: input.command.walletId,
24
- walletKeyId: input.command.walletKeyId,
25
- laneId: input.command.laneId,
26
- laneShareEpoch: input.command.laneShareEpoch
27
- });
28
- if (product === null || product.keyFamily !== "ed25519" || product.state !== "active" && product.state !== "revocation_pending" && product.state !== "revoked" || !retirementProductMatchesCommandV1(product, input.command)) throw new Error("Ed25519 retirement source product is not the exact active epoch");
29
- const protocol = await this.lifecycleStore.getProtocol(product.operationId);
30
- if (protocol === null || protocol.value.lifecycle.state !== "active" || protocol.value.job.keyFamily !== "ed25519") throw new Error("Ed25519 retirement protocol is not active");
31
- return { identity: ed25519IdentityFromActiveProductV1(product, protocol.value.lifecycle) };
32
- }
33
- };
34
- var LaneLifecycleStoreEcdsaLanePrivateBindingResolverV1 = class {
35
- constructor(lifecycleStore, walletRegistration) {
36
- this.lifecycleStore = lifecycleStore;
37
- this.walletRegistration = walletRegistration;
38
- }
39
- async resolveSourceMaterialV1(input) {
40
- const product = await this.lifecycleStore.getProductEpoch({
41
- walletId: input.job.walletId,
42
- walletKeyId: input.job.walletKeyId,
43
- laneId: input.job.source.laneId,
44
- laneShareEpoch: input.job.source.laneShareEpoch
45
- });
46
- if (input.job.source.sourceKind === "owner_registration") {
47
- if (product !== null) throw new Error("ECDSA registration-backed source conflicts with a lane product epoch");
48
- const signer = await resolveOwnerEcdsaSourceSignerV1({
49
- walletRegistration: this.walletRegistration,
50
- job: input.job
51
- });
52
- return {
53
- kind: "registration_activation",
54
- lookup: {
55
- accountId: input.job.walletId,
56
- materialActivationId: input.job.source.materialActivation.activationId,
57
- signingWorkerId: String(input.job.source.ownerParticipantContinuity.signingWorkerId)
58
- },
59
- sourceDerivation: {
60
- applicationBindingDigestB64u: signer.walletKey.publicCapability.context.application_binding_digest_b64u,
61
- clientShareRetryCounter: signer.walletKey.publicCapability.public_identity.client_share_retry_counter
62
- }
63
- };
64
- }
65
- if (product === null) throw new Error("ECDSA lane-backed source product epoch is missing");
66
- if (product.state !== "active" || product.keyFamily !== "ecdsa_secp256k1" || product.holderParticipant.participantId !== input.job.source.holderParticipantId || product.signingWorkerParticipant.participantId !== input.job.source.signingWorkerParticipantId || product.signingWorkerParticipant.recipientKeyId !== input.job.source.signingWorkerRecipientKeyId || !mpcMaterialActivationRefsEqual(product.materialActivation, input.job.source.materialActivation)) throw new Error("ECDSA source product epoch does not match the admitted job");
67
- const protocol = await this.lifecycleStore.getProtocol(product.operationId);
68
- if (protocol === null || protocol.value.lifecycle.state !== "active") throw new Error("ECDSA source product protocol is not active");
69
- const identity = identityFromActiveProductV1(product, protocol.value.lifecycle);
70
- return {
71
- kind: "lane_material",
72
- lookup: {
73
- identity,
74
- admittedLaneIdentityDigestB64u: await digestSigningWorkerLaneIdentityV1(identity)
75
- }
76
- };
77
- }
78
- async resolveActivationBindingV1(input) {
79
- const receipt = parseLaneProtocolCommitReceiptV1(input.protocolCommitReceipt);
80
- return {
81
- identity: await identityFromProtocolReceiptV1(input.job, receipt),
82
- targetMaterialActivation: buildMpcMaterialActivationRef({
83
- activationId: input.job.targetMaterialActivationId,
84
- capability: input.job.source.materialActivation.capability,
85
- materialOwner: input.job.source.materialActivation.materialOwner,
86
- keyBinding: input.job.source.materialActivation.keyBinding,
87
- lifecycleBinding: input.job.source.materialActivation.lifecycleBinding,
88
- signingWorker: targetSigningWorkerRefV1(input.job)
89
- })
90
- };
91
- }
92
- async resolveRetirementBindingV1(input) {
93
- const product = await this.lifecycleStore.getProductEpoch({
94
- walletId: input.command.walletId,
95
- walletKeyId: input.command.walletKeyId,
96
- laneId: input.command.laneId,
97
- laneShareEpoch: input.command.laneShareEpoch
98
- });
99
- if (product === null || product.keyFamily !== "ecdsa_secp256k1" || product.state !== "active" && product.state !== "revocation_pending" && product.state !== "revoked" || !retirementProductMatchesCommandV1(product, input.command)) throw new Error("ECDSA retirement source product is not the exact active epoch");
100
- const protocol = await this.lifecycleStore.getProtocol(product.operationId);
101
- if (protocol === null || protocol.value.lifecycle.state !== "active" || protocol.value.job.keyFamily !== "ecdsa_secp256k1") throw new Error("ECDSA retirement protocol is not active");
102
- const job = protocol.value.job;
103
- return {
104
- identity: identityFromActiveProductV1(product, protocol.value.lifecycle),
105
- manifest: {
106
- manifestId: job.targetCapability.manifestId,
107
- manifestRevision: job.targetCapability.manifestRevision
108
- },
109
- materialActivation: product.materialActivation,
110
- serverGeneration: job.sourceCapability.serverGeneration,
111
- lifecycleId: parseEcdsaLifecycleId(product.materialActivation.lifecycleBinding)
112
- };
113
- }
114
- };
115
- function targetSigningWorkerRefV1(job) {
116
- const parsed = parseMpcSigningWorkerRef(job.targetSigningWorker.participantId);
117
- if (!parsed.ok) throw new Error(`ECDSA target SigningWorker is invalid: ${parsed.error.message}`);
118
- return parsed.value;
119
- }
120
- async function resolveOwnerEcdsaSourceSignerV1(input) {
121
- const signers = await input.walletRegistration.listWalletEcdsaCustodyContinuity({ walletId: input.job.walletId });
122
- const expectedMaterialActivation = routerAbMpcMaterialActivationRefToWire(input.job.source.materialActivation);
123
- const matching = matchingOwnerEcdsaSourceSignersV1({
124
- signers,
125
- job: input.job,
126
- expectedMaterialActivation
127
- });
128
- const first = matching[0];
129
- if (!first) throw new Error("authoritative ECDSA registration source signer is unavailable");
130
- const firstContext = first.walletKey.publicCapability.context.application_binding_digest_b64u;
131
- const firstClientRetry = first.walletKey.publicCapability.public_identity.client_share_retry_counter;
132
- for (const signer of matching.slice(1)) if (signer.walletKey.publicCapability.context.application_binding_digest_b64u !== firstContext || signer.walletKey.publicCapability.public_identity.client_share_retry_counter !== firstClientRetry) throw new Error("authoritative ECDSA registration source signer records conflict");
133
- return first;
134
- }
135
- function matchingOwnerEcdsaSourceSignersV1(input) {
136
- const matching = [];
137
- for (const signer of input.signers) {
138
- if (signer.walletId !== input.job.walletId || signer.walletKey.ecdsaThresholdKeyId !== String(input.job.sourceCapability.ecdsaThresholdKeyId) || signer.walletKey.relayerKeyId !== String(input.job.sourceCapability.relayerKeyId) || signer.walletKey.derivationClientSharePublicKey33B64u !== input.job.sourceHolderVerifyingShare33B64u || signer.walletKey.relayerVerifyingShareB64u !== input.job.sourceServerVerifyingShare33B64u || !sameRouterAbMpcMaterialActivationRef(signer.walletKey.publicCapability.material_activation, input.expectedMaterialActivation)) continue;
139
- matching.push(signer);
140
- }
141
- return matching;
142
- }
143
- var CloudflareSigningWorkerEcdsaRetirementTransportV1 = class {
144
- constructor(options) {
145
- this.options = options;
146
- this.internalServiceAuth = requiredText(options.internalServiceAuth, "internalServiceAuth");
147
- }
148
- async retireServerMaterialV1(input) {
149
- if (input.curve === "ed25519_yao") {
150
- const binding = await this.options.ed25519BindingResolver.resolveRetirementBindingV1({ command: input.command });
151
- const request = buildEd25519ServerRetirementRequestV1({
152
- command: input.command,
153
- binding
154
- });
155
- const effect = await parseAndVerifyEd25519ServerRetirementEffectV1({
156
- raw: await postSigningWorkerJsonV1({
157
- binding: this.options.signingWorker,
158
- internalServiceAuth: this.internalServiceAuth,
159
- path: CLOUDFLARE_SIGNING_WORKER_ED25519_YAO_LANE_RETIRE_PATH_V1,
160
- body: request
161
- }),
162
- request
163
- });
164
- return {
165
- kind: "signing_worker_lane_retirement_projection_v1",
166
- outcome: effect.outcome,
167
- command: input.command,
168
- retirementEffectBindingDigestB64u: effect.retirementEffectBindingDigestB64u,
169
- retirementReceipt: effect.receipt
170
- };
171
- }
172
- const binding = await this.options.bindingResolver.resolveRetirementBindingV1({ command: input.command });
173
- const request = buildEcdsaServerRetirementRequestV1({
174
- command: input.command,
175
- binding
176
- });
177
- const effect = await parseAndVerifyEcdsaServerRetirementEffectV1({
178
- raw: await postSigningWorkerJsonV1({
179
- binding: this.options.signingWorker,
180
- internalServiceAuth: this.internalServiceAuth,
181
- path: CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_RETIRE_PATH_V1,
182
- body: request
183
- }),
184
- expectation: {
185
- manifest: binding.manifest,
186
- materialActivation: binding.materialActivation,
187
- walletKeyId: input.command.walletKeyId,
188
- laneId: input.command.laneId,
189
- laneShareEpoch: input.command.laneShareEpoch,
190
- revocationEpoch: input.command.expectedRevocationEpoch,
191
- retirementReason: request.retirementReason,
192
- retirementCorrelationId: request.retirementCorrelationId,
193
- retirementRequestDigestB64u: request.retirementRequestDigestB64u,
194
- serverGeneration: binding.serverGeneration,
195
- lifecycleId: binding.lifecycleId,
196
- retirementEffectBindingDigestB64u: request.retirementEffectBindingDigestB64u
197
- }
198
- });
199
- return {
200
- kind: "signing_worker_lane_retirement_projection_v1",
201
- outcome: effect.outcome,
202
- command: input.command,
203
- retirementEffectBindingDigestB64u: effect.retirementEffectBindingDigestB64u,
204
- retirementReceipt: effect.receipt
205
- };
206
- }
207
- };
208
- var CloudflareSigningWorkerEcdsaLaneTransportV1 = class {
209
- constructor(options) {
210
- this.options = options;
211
- this.internalServiceAuth = requiredText(options.internalServiceAuth, "internalServiceAuth");
212
- }
213
- async commitEcdsaProtocolV1(input) {
214
- const sourceMaterial = await this.options.bindingResolver.resolveSourceMaterialV1({ job: input.job });
215
- const holderPackage = parseJsonRecord(input.holderPackage.ecdsaEncryptedMaterialEnvelopeJson, "holderPackage.ecdsaEncryptedMaterialEnvelopeJson");
216
- const encryptedDelta = parseJsonRecord(input.encryptedDeltaPackageJson, "encryptedDeltaPackageJson");
217
- const effect = exactRecord(await postSigningWorkerJsonV1({
218
- binding: this.options.signingWorker,
219
- internalServiceAuth: this.internalServiceAuth,
220
- path: CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_EXECUTE_PATH_V1,
221
- body: {
222
- job: input.job,
223
- holderRound: input.holderRound,
224
- holderPackage,
225
- encryptedDelta,
226
- sourceMaterial: sourceMaterialWireV1(sourceMaterial)
227
- }
228
- }), ["outcome", "receipt"], "ecdsaLaneExecuteEffect");
229
- return {
230
- kind: "signing_worker_lane_protocol_commit_projection_v1",
231
- outcome: parseMutationOutcome(Reflect.get(effect, "outcome"), "ecdsaLaneExecuteEffect.outcome"),
232
- receipt: parseLaneProtocolCommitReceiptV1(Reflect.get(effect, "receipt"))
233
- };
234
- }
235
- async activateServerMaterialV1(input) {
236
- const binding = input.curve === "ecdsa_additive" ? await this.options.bindingResolver.resolveActivationBindingV1({
237
- job: input.job,
238
- protocolCommitReceipt: input.protocolCommitReceipt
239
- }) : await buildEd25519ActivationBindingV1({
240
- job: input.job,
241
- protocolCommitReceipt: input.protocolCommitReceipt
242
- });
243
- const effect = exactRecord(await postSigningWorkerJsonV1({
244
- binding: this.options.signingWorker,
245
- internalServiceAuth: this.internalServiceAuth,
246
- path: input.curve === "ecdsa_additive" ? CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_ACTIVATE_PATH_V1 : CLOUDFLARE_SIGNING_WORKER_ED25519_YAO_LANE_ACTIVATE_PATH_V1,
247
- body: {
248
- identity: binding.identity,
249
- targetMaterialActivation: binding.targetMaterialActivation,
250
- holderDeliveryReceipt: input.holderDeliveryReceipt
251
- }
252
- }), ["outcome", "receipt"], input.curve === "ecdsa_additive" ? "ecdsaLaneActivateEffect" : "ed25519LaneActivateEffect");
253
- return {
254
- kind: "signing_worker_lane_server_activation_projection_v1",
255
- outcome: parseMutationOutcome(Reflect.get(effect, "outcome"), input.curve === "ecdsa_additive" ? "ecdsaLaneActivateEffect.outcome" : "ed25519LaneActivateEffect.outcome"),
256
- receipt: parseLaneServerActivationReceiptV1(Reflect.get(effect, "receipt"))
257
- };
258
- }
259
- async retireServerMaterialV1(input) {
260
- return await this.options.retirementTransport.retireServerMaterialV1(input);
261
- }
262
- };
263
- function sourceMaterialWireV1(source) {
264
- switch (source.kind) {
265
- case "lane_material": return source;
266
- case "registration_activation": return {
267
- kind: source.kind,
268
- lookup: {
269
- account_id: source.lookup.accountId,
270
- material_activation_id: source.lookup.materialActivationId,
271
- signing_worker_id: source.lookup.signingWorkerId
272
- },
273
- sourceDerivation: {
274
- application_binding_digest_b64u: source.sourceDerivation.applicationBindingDigestB64u,
275
- client_share_retry_counter: source.sourceDerivation.clientShareRetryCounter
276
- }
277
- };
278
- }
279
- }
280
- function createCloudflareLaneCurveExecutionPortsV1(options) {
281
- return {
282
- ed25519: {
283
- async executeProtocolCommitV1(input) {
284
- return parseLaneProtocolCommitReceiptV1((await options.ed25519Transport.executeProtocolCommitV1(input)).receipt);
285
- },
286
- async executeServerActivationV1(input) {
287
- const projection = await options.signingWorker.activateServerMaterialV1({
288
- curve: "ed25519_yao",
289
- ...input
290
- });
291
- requireProjection(projection, "signing_worker_lane_server_activation_projection_v1");
292
- return parseLaneServerActivationReceiptV1(projection.receipt);
293
- },
294
- async executeServerRetirementV1(input) {
295
- return retirementExecution(await options.signingWorker.retireServerMaterialV1({
296
- curve: "ed25519_yao",
297
- command: input.command
298
- }));
299
- }
300
- },
301
- ecdsa: {
302
- async executeProtocolCommitV1(input) {
303
- const projection = await options.signingWorker.commitEcdsaProtocolV1(input);
304
- requireProjection(projection, "signing_worker_lane_protocol_commit_projection_v1");
305
- return parseLaneProtocolCommitReceiptV1(projection.receipt);
306
- },
307
- async executeServerActivationV1(input) {
308
- const projection = await options.signingWorker.activateServerMaterialV1({
309
- curve: "ecdsa_additive",
310
- ...input
311
- });
312
- requireProjection(projection, "signing_worker_lane_server_activation_projection_v1");
313
- return parseLaneServerActivationReceiptV1(projection.receipt);
314
- },
315
- async executeServerRetirementV1(input) {
316
- return retirementExecution(await options.signingWorker.retireServerMaterialV1({
317
- curve: "ecdsa_additive",
318
- command: input.command
319
- }));
320
- }
321
- }
322
- };
323
- }
324
- function retirementExecution(projection) {
325
- requireProjection(projection, "signing_worker_lane_retirement_projection_v1");
326
- const command = parseRevokeSigningLaneV1(projection.command);
327
- if (typeof projection.retirementEffectBindingDigestB64u !== "string" || projection.retirementEffectBindingDigestB64u.length === 0) throw new Error("SigningWorker lane retirement effect binding digest is invalid");
328
- return {
329
- kind: "lane_lifecycle_retirement_execution_v1",
330
- command,
331
- retirementEffectBindingDigestB64u: parseDigestB64u(projection.retirementEffectBindingDigestB64u),
332
- retirementReceipt: projection.retirementReceipt
333
- };
334
- }
335
- function requireProjection(projection, expectedKind) {
336
- if (projection.kind !== expectedKind) throw new Error("SigningWorker lane material projection kind is invalid");
337
- if (projection.outcome !== "applied" && projection.outcome !== "replayed") throw new Error("SigningWorker lane material projection outcome is invalid");
338
- }
339
- function requiredText(value, label) {
340
- const normalized = value.trim();
341
- if (normalized.length === 0) throw new Error(`${label} is required`);
342
- return normalized;
343
- }
344
- function requiredTextValue(value, label) {
345
- if (typeof value !== "string") throw new Error(`${label} must be a string`);
346
- return requiredText(value, label);
347
- }
348
- /**
349
- * Resolves one exact active child product before a normal-signing request is
350
- * forwarded to SigningWorker. The resolver deliberately requires immutable
351
- * lane coordinates and the full activation reference; activation IDs alone
352
- * cannot select a private lane artifact.
353
- */
354
- var LaneLifecycleStoreNormalSigningLaneMaterialResolverV1 = class {
355
- constructor(lifecycleStore) {
356
- this.lifecycleStore = lifecycleStore;
357
- }
358
- async resolveV1(input) {
359
- const product = await this.lifecycleStore.getProductEpoch(input.lookup);
360
- if (product === null || product.state !== "active" || product.keyFamily !== input.keyFamily || !mpcMaterialActivationRefsEqual(product.materialActivation, input.materialActivation) || product.targetMaterialActivationId !== input.materialActivation.activationId) throw new Error("normal-signing lane product is not the exact active child");
361
- const enrollment = await this.lifecycleStore.getEnrollment(product.enrollmentId);
362
- if (enrollment === null || enrollment.value.lifecycle.state !== "active" || enrollment.value.lifecycle.manifestDigestB64u !== product.aggregateManifestDigestB64u) throw new Error("normal-signing lane enrollment is not active for the child product");
363
- const protocol = await this.lifecycleStore.getProtocol(product.operationId);
364
- if (protocol === null || protocol.value.lifecycle.state !== "active" || protocol.value.job.keyFamily !== product.keyFamily) throw new Error("normal-signing lane protocol is not active for the child product");
365
- assertActiveLaneProtocolMatchesProductV1(product, protocol.value.job);
366
- const identity = signingWorkerIdentityFromActiveProductV1(product, protocol.value.lifecycle);
367
- return {
368
- product,
369
- source: {
370
- kind: "rotatable_lane",
371
- lookup: {
372
- identity,
373
- admittedLaneIdentityDigestB64u: await digestSigningWorkerLaneIdentityV1(identity)
374
- },
375
- group_public_key: groupPublicKeyFromLaneJobV1(protocol.value.job)
376
- }
377
- };
378
- }
379
- };
380
- function assertActiveLaneProtocolMatchesProductV1(product, job) {
381
- if (job.operationId !== product.operationId || job.enrollmentId !== product.enrollmentId || job.walletId !== product.walletId || job.walletKeyId !== product.walletKeyId || job.target.laneId !== product.laneId || job.target.laneShareEpoch !== product.laneShareEpoch || job.targetMaterialActivationId !== product.targetMaterialActivationId || job.target.laneKind !== product.laneKind || job.keyFamily !== product.keyFamily || job.targetHolder.participantId !== product.holderParticipant.participantId || job.targetHolder.participantBindingDigestB64u !== product.holderParticipant.participantBindingDigestB64u || job.targetHolder.hpkePublicKeyDigestB64u !== product.holderParticipant.hpkePublicKeyDigestB64u || job.targetSigningWorker.participantId !== product.signingWorkerParticipant.participantId || job.targetSigningWorker.participantBindingDigestB64u !== product.signingWorkerParticipant.participantBindingDigestB64u || job.targetSigningWorker.recipientKeyId !== product.signingWorkerParticipant.recipientKeyId || job.targetSigningWorker.hpkePublicKeyDigestB64u !== product.signingWorkerParticipant.hpkePublicKeyDigestB64u) throw new Error("normal-signing lane protocol does not match the active child product");
382
- }
383
- function signingWorkerIdentityFromActiveProductV1(product, lifecycle) {
384
- return product.keyFamily === "ed25519" ? ed25519IdentityFromActiveProductV1(product, lifecycle) : identityFromActiveProductV1(product, lifecycle);
385
- }
386
- function groupPublicKeyFromLaneJobV1(job) {
387
- if (job.keyFamily === "ecdsa_secp256k1") return requiredText(job.thresholdPublicKey33B64u, "ECDSA lane threshold public key");
388
- const registeredPublicKey = base64UrlDecode(job.registeredPublicKeyB64u);
389
- if (registeredPublicKey.length !== 32) throw new Error("Ed25519 lane registered public key must be 32 bytes");
390
- return `ed25519:${base58Encode(registeredPublicKey)}`;
391
- }
392
- function identityFromActiveProductV1(product, lifecycle) {
393
- if (product.keyFamily !== "ecdsa_secp256k1") throw new Error("ECDSA source product has the wrong key family");
394
- return {
395
- operationId: product.operationId,
396
- enrollmentId: product.enrollmentId,
397
- walletId: product.walletId,
398
- walletKeyId: product.walletKeyId,
399
- targetLaneId: product.laneId,
400
- targetLaneShareEpoch: product.laneShareEpoch,
401
- targetMaterialActivationId: product.targetMaterialActivationId,
402
- keyFamily: "ecdsa_secp256k1",
403
- holderParticipantBindingDigestB64u: product.holderParticipant.participantBindingDigestB64u,
404
- signingWorkerParticipantBindingDigestB64u: product.signingWorkerParticipant.participantBindingDigestB64u,
405
- holderRecipientKeyDigestB64u: product.holderParticipant.hpkePublicKeyDigestB64u,
406
- serverRecipientKeyDigestB64u: product.signingWorkerParticipant.hpkePublicKeyDigestB64u,
407
- transcriptHashB64u: parseDigestB64u(lifecycle.transcriptHashB64u),
408
- protocolCommitReceiptDigestB64u: parseDigestB64u(lifecycle.protocolCommitReceiptDigestB64u)
409
- };
410
- }
411
- function ed25519IdentityFromActiveProductV1(product, lifecycle) {
412
- if (product.keyFamily !== "ed25519") throw new Error("Ed25519 source product has the wrong key family");
413
- return {
414
- operationId: product.operationId,
415
- enrollmentId: product.enrollmentId,
416
- walletId: product.walletId,
417
- walletKeyId: product.walletKeyId,
418
- targetLaneId: product.laneId,
419
- targetLaneShareEpoch: product.laneShareEpoch,
420
- targetMaterialActivationId: product.targetMaterialActivationId,
421
- keyFamily: "ed25519",
422
- holderParticipantBindingDigestB64u: product.holderParticipant.participantBindingDigestB64u,
423
- signingWorkerParticipantBindingDigestB64u: product.signingWorkerParticipant.participantBindingDigestB64u,
424
- holderRecipientKeyDigestB64u: product.holderParticipant.hpkePublicKeyDigestB64u,
425
- serverRecipientKeyDigestB64u: product.signingWorkerParticipant.hpkePublicKeyDigestB64u,
426
- transcriptHashB64u: parseDigestB64u(lifecycle.transcriptHashB64u),
427
- protocolCommitReceiptDigestB64u: parseDigestB64u(lifecycle.protocolCommitReceiptDigestB64u)
428
- };
429
- }
430
- function retirementProductMatchesCommandV1(product, command) {
431
- if (product.state === "active") return product.revocationEpoch === command.expectedRevocationEpoch;
432
- return product.revocationEpoch === command.expectedRevocationEpoch + 1 && product.retirementEffectBindingDigestB64u === command.retirementEffectBindingDigestB64u;
433
- }
434
- async function identityFromProtocolReceiptV1(job, receipt) {
435
- if (receipt.operationId !== job.operationId || receipt.enrollmentId !== job.enrollmentId || receipt.walletId !== job.walletId || receipt.walletKeyId !== job.walletKeyId || receipt.targetLaneId !== job.target.laneId || receipt.targetLaneShareEpoch !== job.target.laneShareEpoch || receipt.targetMaterialActivationId !== job.targetMaterialActivationId || receipt.keyFamily !== "ecdsa_secp256k1") throw new Error("ECDSA protocol receipt does not match the admitted job");
436
- return {
437
- operationId: job.operationId,
438
- enrollmentId: job.enrollmentId,
439
- walletId: job.walletId,
440
- walletKeyId: job.walletKeyId,
441
- targetLaneId: job.target.laneId,
442
- targetLaneShareEpoch: job.target.laneShareEpoch,
443
- targetMaterialActivationId: job.targetMaterialActivationId,
444
- keyFamily: "ecdsa_secp256k1",
445
- holderParticipantBindingDigestB64u: job.targetHolder.participantBindingDigestB64u,
446
- signingWorkerParticipantBindingDigestB64u: job.targetSigningWorker.participantBindingDigestB64u,
447
- holderRecipientKeyDigestB64u: job.targetHolder.hpkePublicKeyDigestB64u,
448
- serverRecipientKeyDigestB64u: job.targetSigningWorker.hpkePublicKeyDigestB64u,
449
- transcriptHashB64u: parseDigestB64u(receipt.transcriptHashB64u),
450
- protocolCommitReceiptDigestB64u: await sha256DigestB64u(encodeLaneProtocolCommitReceiptV1(receipt))
451
- };
452
- }
453
- async function buildEd25519ActivationBindingV1(input) {
454
- const receipt = parseLaneProtocolCommitReceiptV1(input.protocolCommitReceipt);
455
- if (receipt.operationId !== input.job.operationId || receipt.enrollmentId !== input.job.enrollmentId || receipt.walletId !== input.job.walletId || receipt.walletKeyId !== input.job.walletKeyId || receipt.targetLaneId !== input.job.target.laneId || receipt.targetLaneShareEpoch !== input.job.target.laneShareEpoch || receipt.targetMaterialActivationId !== input.job.targetMaterialActivationId || receipt.keyFamily !== "ed25519") throw new Error("Ed25519 protocol receipt does not match the admitted job");
456
- const targetSigningWorker = parseMpcSigningWorkerRef(input.job.targetSigningWorker.participantId);
457
- if (!targetSigningWorker.ok) throw new Error(`Ed25519 target SigningWorker is invalid: ${targetSigningWorker.error.message}`);
458
- return {
459
- identity: {
460
- operationId: input.job.operationId,
461
- enrollmentId: input.job.enrollmentId,
462
- walletId: input.job.walletId,
463
- walletKeyId: input.job.walletKeyId,
464
- targetLaneId: input.job.target.laneId,
465
- targetLaneShareEpoch: input.job.target.laneShareEpoch,
466
- targetMaterialActivationId: input.job.targetMaterialActivationId,
467
- keyFamily: "ed25519",
468
- holderParticipantBindingDigestB64u: input.job.targetHolder.participantBindingDigestB64u,
469
- signingWorkerParticipantBindingDigestB64u: input.job.targetSigningWorker.participantBindingDigestB64u,
470
- holderRecipientKeyDigestB64u: input.job.targetHolder.hpkePublicKeyDigestB64u,
471
- serverRecipientKeyDigestB64u: input.job.targetSigningWorker.hpkePublicKeyDigestB64u,
472
- transcriptHashB64u: parseDigestB64u(receipt.transcriptHashB64u),
473
- protocolCommitReceiptDigestB64u: await sha256DigestB64u(encodeLaneProtocolCommitReceiptV1(receipt))
474
- },
475
- targetMaterialActivation: buildMpcMaterialActivationRef({
476
- activationId: input.job.targetMaterialActivationId,
477
- capability: input.job.source.materialActivation.capability,
478
- materialOwner: input.job.source.materialActivation.materialOwner,
479
- keyBinding: input.job.source.materialActivation.keyBinding,
480
- lifecycleBinding: input.job.source.materialActivation.lifecycleBinding,
481
- signingWorker: targetSigningWorker.value
482
- })
483
- };
484
- }
485
- async function digestSigningWorkerLaneIdentityV1(identity) {
486
- const encoder = new TextEncoder();
487
- const chunks = [encoder.encode("seams/signing-worker/lane-material-identity/v1")];
488
- for (const value of [
489
- identity.operationId,
490
- identity.enrollmentId,
491
- identity.walletId,
492
- identity.walletKeyId,
493
- identity.targetLaneId,
494
- identity.targetLaneShareEpoch,
495
- identity.targetMaterialActivationId,
496
- identity.keyFamily,
497
- identity.holderParticipantBindingDigestB64u,
498
- identity.signingWorkerParticipantBindingDigestB64u,
499
- identity.holderRecipientKeyDigestB64u,
500
- identity.serverRecipientKeyDigestB64u,
501
- identity.transcriptHashB64u,
502
- identity.protocolCommitReceiptDigestB64u
503
- ]) {
504
- const encoded = encoder.encode(value);
505
- chunks.push(u64Length(encoded.length), encoded);
506
- }
507
- let length = 0;
508
- for (const chunk of chunks) length += chunk.length;
509
- const bytes = new Uint8Array(length);
510
- let offset = 0;
511
- for (const chunk of chunks) {
512
- bytes.set(chunk, offset);
513
- offset += chunk.length;
514
- }
515
- return sha256DigestB64u(bytes);
516
- }
517
- function u64Length(value) {
518
- let remaining = BigInt(value);
519
- const bytes = new Uint8Array(8);
520
- for (let index = 7; index >= 0; index -= 1) {
521
- bytes[index] = Number(remaining & 255n);
522
- remaining >>= 8n;
523
- }
524
- return bytes;
525
- }
526
- function parseJsonRecord(value, label) {
527
- let parsed;
528
- try {
529
- parsed = JSON.parse(requiredText(value, label));
530
- } catch {
531
- throw new Error(`${label} must contain valid JSON`);
532
- }
533
- const record = exactObject(parsed, [
534
- "kind",
535
- "recipientPublicKeyB64u",
536
- "aadDigestB64u",
537
- "encappedKeyB64u",
538
- "ciphertextB64u"
539
- ], label);
540
- if (Reflect.get(record, "kind") !== "ecdsa_additive_lane_encrypted_payload_v1") throw new Error(`${label}.kind is invalid`);
541
- return {
542
- kind: "ecdsa_additive_lane_encrypted_payload_v1",
543
- recipientPublicKeyB64u: requiredTextValue(Reflect.get(record, "recipientPublicKeyB64u"), `${label}.recipientPublicKeyB64u`),
544
- aadDigestB64u: requiredTextValue(Reflect.get(record, "aadDigestB64u"), `${label}.aadDigestB64u`),
545
- encappedKeyB64u: requiredTextValue(Reflect.get(record, "encappedKeyB64u"), `${label}.encappedKeyB64u`),
546
- ciphertextB64u: requiredTextValue(Reflect.get(record, "ciphertextB64u"), `${label}.ciphertextB64u`)
547
- };
548
- }
549
- function requireObject(value, label) {
550
- if (typeof value !== "object" || value === null || Array.isArray(value)) throw new Error(`${label} must be an object`);
551
- return value;
552
- }
553
- function exactObject(value, fields, label) {
554
- const record = requireObject(value, label);
555
- const allowed = new Set(fields);
556
- for (const key of Object.keys(record)) if (!allowed.has(key)) throw new Error(`${label}.${key} is unsupported`);
557
- for (const field of fields) if (!Object.hasOwn(record, field)) throw new Error(`${label}.${field} is required`);
558
- return record;
559
- }
560
- function exactRecord(value, fields, label) {
561
- return exactObject(value, fields, label);
562
- }
563
- function parseMutationOutcome(value, label) {
564
- if (value === "applied" || value === "replayed") return value;
565
- throw new Error(`${label} is invalid`);
566
- }
567
- async function postSigningWorkerJsonV1(input) {
568
- const response = await input.binding.fetch(new Request(`https://signing-worker.router-ab.internal${input.path}`, {
569
- method: "POST",
570
- headers: {
571
- "content-type": "application/json",
572
- "x-router-ab-internal-service-auth": input.internalServiceAuth
573
- },
574
- body: JSON.stringify(input.body)
575
- }));
576
- const body = await response.text();
577
- if (!response.ok) {
578
- const detail = boundedSigningWorkerErrorBodyV1(body);
579
- throw new Error(detail ? `SigningWorker lane endpoint returned HTTP ${response.status}: ${detail}` : `SigningWorker lane endpoint returned HTTP ${response.status}`);
580
- }
581
- try {
582
- return body.length === 0 ? null : JSON.parse(body);
583
- } catch {
584
- throw new Error("SigningWorker lane endpoint returned invalid JSON");
585
- }
586
- }
587
- const SIGNING_WORKER_ERROR_BODY_LIMIT_V1 = 512;
588
- function boundedSigningWorkerErrorBodyV1(body) {
589
- const normalized = body.trim().replace(/\s+/g, " ");
590
- if (normalized.length <= SIGNING_WORKER_ERROR_BODY_LIMIT_V1) return normalized;
591
- return `${normalized.slice(0, SIGNING_WORKER_ERROR_BODY_LIMIT_V1 - 1)}…`;
592
- }
593
- //#endregion
594
- export { CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_ACTIVATE_PATH_V1, CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_EXECUTE_PATH_V1, CLOUDFLARE_SIGNING_WORKER_ECDSA_LANE_RETIRE_PATH_V1, CLOUDFLARE_SIGNING_WORKER_ED25519_YAO_LANE_ACTIVATE_PATH_V1, CLOUDFLARE_SIGNING_WORKER_ED25519_YAO_LANE_RETIRE_PATH_V1, CloudflareSigningWorkerEcdsaLaneTransportV1, CloudflareSigningWorkerEcdsaRetirementTransportV1, LaneLifecycleStoreEcdsaLanePrivateBindingResolverV1, LaneLifecycleStoreEd25519LanePrivateBindingResolverV1, LaneLifecycleStoreNormalSigningLaneMaterialResolverV1, createCloudflareLaneCurveExecutionPortsV1, digestSigningWorkerLaneIdentityV1 };
595
-
596
- //# sourceMappingURL=cloudflareLaneCurveExecution.js.map