@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.
- package/artifact-manifest.json +147 -32
- package/cloudflare-router-ab/build/deriver-a/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/deriver-a/index.js +2 -2
- package/cloudflare-router-ab/build/deriver-a/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/deriver-b/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/deriver-b/index.js +2 -2
- package/cloudflare-router-ab/build/deriver-b/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/local-tools/darwin-arm64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/local-tools/darwin-x64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/local-tools/linux-x64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/router/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/router/index.js +2 -2
- package/cloudflare-router-ab/build/router/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/signing-worker/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/signing-worker/index.js +2 -2
- package/cloudflare-router-ab/build/signing-worker/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/index.js +2 -2
- package/cloudflare-router-ab/build/tenant-root-control-plane/index_bg.wasm +0 -0
- package/cloudflare-router-ab/migrations/deriver-a/0012_tenant_root_creation_tombstones.sql +20 -0
- package/cloudflare-router-ab/migrations/deriver-a/0013_tenant_root_root_use_admissions.sql +32 -0
- package/cloudflare-router-ab/migrations/deriver-a/0014_tenant_root_refresh_supersessions.sql +24 -0
- package/cloudflare-router-ab/migrations/deriver-a/0015_tenant_root_root_use_attempts.sql +56 -0
- package/cloudflare-router-ab/migrations/deriver-a/0016_tenant_root_root_use_admission_settlement.sql +5 -0
- package/cloudflare-router-ab/migrations/deriver-a/0017_tenant_root_root_use_admission_claims.sql +64 -0
- package/cloudflare-router-ab/migrations/deriver-a/0018_tenant_root_recovery_retention_keys.sql +12 -0
- package/cloudflare-router-ab/migrations/deriver-b/0012_tenant_root_creation_tombstones.sql +20 -0
- package/cloudflare-router-ab/migrations/deriver-b/0013_tenant_root_root_use_admissions.sql +32 -0
- package/cloudflare-router-ab/migrations/deriver-b/0014_tenant_root_refresh_supersessions.sql +24 -0
- package/cloudflare-router-ab/migrations/deriver-b/0015_tenant_root_root_use_attempts.sql +56 -0
- package/cloudflare-router-ab/migrations/deriver-b/0016_tenant_root_root_use_admission_settlement.sql +5 -0
- package/cloudflare-router-ab/migrations/deriver-b/0017_tenant_root_root_use_admission_claims.sql +64 -0
- package/cloudflare-router-ab/migrations/deriver-b/0018_tenant_root_recovery_retention_keys.sql +12 -0
- package/cloudflare-router-ab/scripts/bootstrap-local-tenant-root.mjs +81 -16
- package/cloudflare-router-ab/scripts/prepare-local-runtime-config.mjs +102 -9
- package/cloudflare-router-ab/scripts/start-local-role-workers.mjs +4 -1
- package/cloudflare-router-ab/wrangler.deriver-a.toml +24 -0
- package/cloudflare-router-ab/wrangler.router.toml +13 -0
- package/dist/esm/authorization/capabilityPolicy.js +1 -1
- package/dist/esm/authorization/domain.js +2 -2
- package/dist/esm/authorization/factorEvidence.js +6 -100
- package/dist/esm/authorization/service.js +34 -2
- package/dist/esm/authorization/vaultProxyUse.js +3 -4
- package/dist/esm/cloud-host.js +16 -11
- package/dist/esm/core/EmailOtpRecords.js +19 -1
- package/dist/esm/core/EmailOtpStores.js +323 -924
- package/dist/esm/core/IdentityStore.js +44 -235
- package/dist/esm/core/NearPublicKeyStore.js +21 -63
- package/dist/esm/core/RegistrationCeremonyStore.js +3 -1793
- package/dist/esm/core/ThresholdService/config.js +1 -82
- package/dist/esm/core/ThresholdService/kv.js +3 -3
- package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.js +37 -5
- package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.js +4 -74
- package/dist/esm/core/ThresholdService/stores/CloudflareDurableObjectStore.js +15 -51
- package/dist/esm/core/ThresholdService/stores/KeyStore.js +3 -3
- package/dist/esm/core/ThresholdService/stores/SessionStore.js +5 -81
- package/dist/esm/core/ThresholdService/stores/WalletSessionStore.js +185 -290
- package/dist/esm/core/ThresholdService/validation.js +18 -230
- package/dist/esm/core/WalletAuthMethodStore.js +22 -79
- package/dist/esm/core/WalletStore.js +58 -185
- package/dist/esm/core/WebAuthnAuthenticatorStore.js +57 -340
- package/dist/esm/core/WebAuthnCredentialBindingStore.js +90 -369
- package/dist/esm/core/WebAuthnLoginChallengeStore.js +17 -397
- package/dist/esm/core/WebAuthnSyncChallengeStore.js +17 -397
- package/dist/esm/core/authService/AuthService.js +2 -19
- package/dist/esm/core/authService/emailOtpChallengeProof.js +1 -1
- package/dist/esm/core/authService/emailOtpChallenges.js +1 -1
- package/dist/esm/core/authService/emailOtpConfig.js +1 -32
- package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +6 -153
- package/dist/esm/core/authService/googleEmailOtpRegistration.js +1 -1
- package/dist/esm/core/authService/nearPrivateKeySigning.js +7 -15
- package/dist/esm/core/authService/nearTransactions.js +2 -1
- package/dist/esm/core/authService/oidcVerification.js +3 -4
- package/dist/esm/core/authService/rateLimits.js +1 -31
- package/dist/esm/core/authService/registrationThresholdHelpers.js +2 -103
- package/dist/esm/core/authService/storeRegistry.js +2 -13
- package/dist/esm/core/authService/thresholdEcdsaKeyInventory.js +4 -5
- package/dist/esm/core/authService/webauthn.js +15 -50
- package/dist/esm/core/authService/webauthnOidcHelpers.js +1 -6
- package/dist/esm/core/authService/webauthnVerificationOutcomes.js +60 -0
- package/dist/esm/core/authService/webauthnWalletBinding.js +2 -122
- package/dist/esm/core/d1IdentityStore.js +32 -66
- package/dist/esm/core/d1TenantStore.js +82 -0
- package/dist/esm/core/d1WalletAuthMethodStore.js +92 -143
- package/dist/esm/core/d1WalletStore.js +14 -12
- package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +10 -8
- package/dist/esm/core/deviceLinking/linkedDeviceManagement.js +25 -3
- package/dist/esm/core/deviceLinking/linkedDeviceSession.js +6 -895
- package/dist/esm/core/deviceLinking/linkedDeviceSessionApproval.js +102 -0
- package/dist/esm/core/deviceLinking/linkedDeviceSessionRecord.js +668 -0
- package/dist/esm/core/emailOtpD1Statements.js +383 -0
- package/dist/esm/core/hostedAccountIds.js +2 -2
- package/dist/esm/core/keyMaterialBrands.js +2 -48
- package/dist/esm/core/nearRelayerAccountProvisioning.js +25 -150
- package/dist/esm/core/nearSignerWasmRuntime.js +1 -4
- package/dist/esm/core/rpcClients/near/NearClient.js +15 -218
- package/dist/esm/core/signingLanes/LaneEnrollmentActivation.js +1 -1
- package/dist/esm/core/signingLanes/LaneLifecycleApplicationService.js +2 -4
- package/dist/esm/core/signingLanes/LaneLifecycleStore.js +0 -24
- package/dist/esm/core/signingLanes/WalletExecutionLaneProjection.js +5 -5
- package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +3 -8
- package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +1 -4
- package/dist/esm/core/storeBackends.js +208 -0
- package/dist/esm/core/thresholdEcdsaChainTarget.js +1 -7
- package/dist/esm/core/webAuthnD1Statements.js +92 -0
- package/dist/esm/core/webAuthnStoreBackends.js +198 -0
- package/dist/esm/hosted-wallet-gateway.js +33 -16
- package/dist/esm/index.js +2 -2
- package/dist/esm/local-hosted-wallet-gateway-worker.js +2 -23
- package/dist/esm/localHostedWalletGatewayHandler.js +299 -0
- package/dist/esm/localIntendedEcdsaFinalizeFault.js +85 -0
- package/dist/esm/localIntendedLinkExecuteFault.js +140 -0
- package/dist/esm/localIntendedRevokeFault.js +106 -0
- package/dist/esm/localIntendedSessionAdmissionFault.js +139 -0
- package/dist/esm/localIntendedYaoExportFault.js +117 -0
- package/dist/esm/localIntendedYaoFault.js +13 -16
- package/dist/esm/localIntendedYaoFinalizeFault.js +99 -0
- package/dist/esm/localIntendedYaoRecoveryFault.js +102 -0
- package/dist/esm/localIntendedYaoSigningFault.js +127 -0
- package/dist/esm/router/auth/authRequestValidation.js +1 -1
- package/dist/esm/router/auth/commonRouterUtils.js +10 -2
- package/dist/esm/router/auth/walletSessionFailure.js +1 -14
- package/dist/esm/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.js +23 -0
- package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +86 -66
- package/dist/esm/router/cloudflare/d1/authorization/authorizedOperationStatements.js +208 -0
- package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +246 -296
- package/dist/esm/router/cloudflare/d1/authorization/persistedWalletSessionAuthorization.js +14 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +62 -63
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.js +3 -6
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.js +1 -19
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceManagementService.js +4 -3
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.js +52 -9
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.js +3 -6
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRevocation.js +100 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.js +7 -10
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.js +33 -124
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.js +2 -2
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.js +9 -17
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.js +6 -6
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkSourceReader.js +3 -1
- package/dist/esm/router/cloudflare/d1/deviceLinking/index.js +3 -3
- package/dist/esm/router/cloudflare/d1/deviceLinking/installedEcdsaAuthority.js +69 -0
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.js +39 -68
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.js +69 -0
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoProductRegistrationPartitionedStateStore.js +2 -2
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.js +26 -71
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.js +20 -3
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.js +7 -94
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.js +5 -47
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.js +26 -123
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +0 -2
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +2 -2
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.js +15 -134
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.js +54 -260
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.js +1 -1
- package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +1 -28
- package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +2 -8
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.js +1 -1
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +3 -3
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +23 -73
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.js +15 -2
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.js +12 -203
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +16 -32
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +29 -72
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +4 -1
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +3 -1
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +6 -30
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +261 -205
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetup.js +5 -3
- package/dist/esm/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.js +2 -2
- package/dist/esm/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.js +3 -3
- package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +43 -25
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.js +0 -1
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.js +1 -1
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneRecords.js +2 -1
- package/dist/esm/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.js +2 -60
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerService.js +158 -19
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.js +19 -49
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodRevocationReplayStore.js +100 -0
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodService.js +132 -33
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorityStore.js +83 -4
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.js +14 -49
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +4 -4
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +22 -116
- package/dist/esm/router/cloudflare/runtime/createSelfHostedCloudflareSigningWorker.js +1 -2
- package/dist/esm/router/cloudflare/runtime/walletConsoleTenantRootLineage.js +11 -2
- package/dist/esm/router/cloudflare/runtime/walletGateway.js +1 -1
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +5 -6
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +2 -1
- package/dist/esm/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.js +48 -21
- package/dist/esm/router/cloudflare.js +11480 -12853
- package/dist/esm/router/domains/ecdsa/routerAbEcdsaStrictRegistration.js +16 -5
- package/dist/esm/router/domains/ecdsa/thresholdEcdsaRequestValidation.js +2 -8
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision.js +33 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js +17 -9
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.js +29 -431
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.js +7 -2
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.js +2 -1
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.js +70 -2
- package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.js +134 -169
- package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.js +77 -162
- package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.js +205 -51
- package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.js +29 -11
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.js +182 -55
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.js +2 -1
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.js +63 -247
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.js +3 -2
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.js +87 -132
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.js +5 -4
- package/dist/esm/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.js +45 -0
- package/dist/esm/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.js +1 -1
- package/dist/esm/router/domains/emailOtp/emailOtpExportPolicy.js +1 -42
- package/dist/esm/router/domains/emailOtp/emailOtpRequestValidation.js +1 -6
- package/dist/esm/router/domains/emailOtp/emailOtpSessionRouteHelpers.js +1 -142
- package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.js +1 -1
- package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationCommit.js +2 -2
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryFinalization.js +23 -45
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryKeyManifest.js +5 -5
- package/dist/esm/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.js +1 -1
- package/dist/esm/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.js +827 -0
- package/dist/esm/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.js +698 -0
- package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmission.js +209 -0
- package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.js +16 -15
- package/dist/esm/router/domains/signingOperations/routerAbOperationStepUp.js +313 -0
- package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +62 -2159
- package/dist/esm/router/domains/tenantRoot/tenantRootIdentityResolution.js +1 -1
- package/dist/esm/router/domains/walletRegistration/walletRegistrationRoutes.js +18 -22
- package/dist/esm/router/domains/walletRegistration/walletRegistrationSetupPayload.js +3 -4
- package/dist/esm/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.js +2 -2
- package/dist/esm/router/domains/walletUnlock/walletUnlockRouteHandlers.js +97 -150
- package/dist/esm/router/express.js +5967 -6410
- package/dist/esm/router/framework/http.js +1 -4
- package/dist/esm/router/framework/ror/normalize.js +1 -1
- package/dist/esm/router/framework/routerApiRouteSurface.js +1 -1
- package/dist/esm/router/node/nodeHostedWalletGateway.js +64 -0
- package/dist/esm/router/node/nodeHostedWalletGatewayCheck.js +163 -0
- package/dist/esm/router/node/nodeHostedWalletGatewayMain.js +120 -0
- package/dist/esm/router/node/nodeHttp.js +79 -0
- package/dist/esm/router/node/nodeSqlite.js +43 -0
- package/dist/esm/router/node/signerSqlMigrations.js +48 -0
- package/dist/esm/router/transport/fetch/createFetchRouter.js +1 -1
- package/dist/esm/router/transport/fetch/routes/deviceLinking.js +16 -18
- package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +3 -5
- package/dist/esm/router/transport/fetch/routes/deviceManagement.js +15 -24
- package/dist/esm/router/transport/fetch/routes/normalSigningRouterProxy.js +3 -16
- package/dist/esm/router/transport/fetch/routes/passkeyCustody.js +144 -461
- package/dist/esm/router/transport/fetch/routes/sessions.js +4 -4
- package/dist/esm/router/transport/fetch/routes/syncAccount.js +4 -6
- package/dist/esm/router/transport/fetch/routes/syncAccountBootstrap.js +2 -2
- package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +69 -23
- package/dist/esm/router/transport/fetch/routes/thresholdEd25519.js +52 -27
- package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +1 -1
- package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +1 -1
- package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +1 -2
- package/dist/esm/shared-ts/src/authorization/walletAuthority.js +99 -227
- package/dist/esm/shared-ts/src/authorization/walletCustodyOperation.js +4 -6
- package/dist/esm/shared-ts/src/device-linking/activeWalletSession.js +74 -0
- package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +50 -0
- package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +8 -9
- package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +3 -1
- package/dist/esm/shared-ts/src/device-linking/deviceManagement.js +55 -0
- package/dist/esm/shared-ts/src/device-linking/digests.js +10 -65
- package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +3 -1
- package/dist/esm/shared-ts/src/device-linking/index.js +4 -1
- package/dist/esm/shared-ts/src/device-linking/parsers.js +510 -1063
- package/dist/esm/shared-ts/src/device-linking/requestProof.js +5 -14
- package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +6 -9
- package/dist/esm/shared-ts/src/device-linking/walletSessionCredentialDelivery.js +9 -9
- package/dist/esm/shared-ts/src/device-linking/wireFields.js +59 -0
- package/dist/esm/shared-ts/src/near/nearClient.js +252 -0
- package/dist/esm/shared-ts/src/passkey-custody/credentialActivity.js +3 -1
- package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +7 -5
- package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +6 -4
- package/dist/esm/shared-ts/src/passkey-custody/primitives.js +5 -39
- package/dist/esm/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js +1 -5
- package/dist/esm/shared-ts/src/signing-lanes/index.js +3 -3
- package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +5 -12
- package/dist/esm/shared-ts/src/signing-lanes/participantDigest.js +5 -14
- package/dist/esm/shared-ts/src/signing-lanes/participants.js +2 -5
- package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +7 -5
- package/dist/esm/shared-ts/src/signing-lanes/rotationDigests.js +6 -45
- package/dist/esm/shared-ts/src/signing-lanes/rotationParsers.js +423 -1511
- package/dist/esm/shared-ts/src/signing-lanes/rotationProtocolParsers.js +323 -0
- package/dist/esm/shared-ts/src/signing-lanes/rotationWireFields.js +59 -0
- package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +1 -1
- package/dist/esm/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js +1 -2
- package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +49 -0
- package/dist/esm/shared-ts/src/utils/addAuthMethodRegistration.js +3 -4
- package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +8 -1
- package/dist/esm/shared-ts/src/utils/digestEncoding.js +63 -0
- package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +2 -2
- package/dist/esm/shared-ts/src/utils/exactRecord.js +44 -0
- package/dist/esm/shared-ts/src/utils/registrationAuthMethodInput.js +127 -0
- package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +2 -2
- package/dist/esm/shared-ts/src/utils/registrationIds.js +280 -0
- package/dist/esm/shared-ts/src/utils/registrationIntent.js +4 -1170
- package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +429 -0
- package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +11 -136
- package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +3 -163
- package/dist/esm/shared-ts/src/utils/routerAbEd25519YaoDigests.js +160 -0
- package/dist/esm/shared-ts/src/utils/routerAbNormalSigningIdentity.js +1 -4
- package/dist/esm/shared-ts/src/utils/routerAbPublicKeyset.js +7 -15
- package/dist/esm/shared-ts/src/utils/validation.js +37 -6
- package/dist/esm/shared-ts/src/utils/walletAuthMethodRecord.js +362 -0
- package/dist/esm/shared-ts/src/utils/wireSchema.js +77 -0
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +1 -1
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeReservation.js +1 -1
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +7 -11
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +4 -8
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.js +3 -1
- package/dist/esm/storage/d1Sql.js +10 -1
- package/dist/esm/storage/syncSqlite.js +79 -0
- package/dist/esm/threshold/session/signingSessionSeal/crypto/cipher.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +1 -2
- package/dist/esm/threshold/session/signingSessionSeal/options.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/transport/shared.js +18 -55
- package/dist/esm/threshold/statusCodes.js +1 -1
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +3 -3
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
- package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker_bg.wasm +0 -0
- package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +8 -26
- package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +0 -8
- package/dist/types/shared-ts/src/authorization/operationFingerprint.d.ts +1 -3
- package/dist/types/shared-ts/src/authorization/walletAuthority.d.ts +25 -12
- package/dist/types/shared-ts/src/authorization/walletSessionIssuance.d.ts +2 -1
- package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +3 -2
- package/dist/types/shared-ts/src/device-linking/authorityActivation.d.ts +5 -0
- package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +2 -5
- package/dist/types/shared-ts/src/device-linking/contracts.d.ts +8 -11
- package/dist/types/shared-ts/src/device-linking/contracts.typecheck.d.ts +2 -1
- package/dist/types/shared-ts/src/device-linking/deviceManagement.d.ts +7 -0
- package/dist/types/shared-ts/src/device-linking/digests.d.ts +0 -5
- package/dist/types/shared-ts/src/device-linking/ed25519ExportRoot.d.ts +3 -2
- package/dist/types/shared-ts/src/device-linking/index.d.ts +2 -0
- package/dist/types/shared-ts/src/device-linking/parsers.d.ts +4 -41
- package/dist/types/shared-ts/src/device-linking/requestProof.d.ts +0 -1
- package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +3 -2
- package/dist/types/shared-ts/src/device-linking/walletSessionCredentialDelivery.d.ts +2 -1
- package/dist/types/shared-ts/src/device-linking/wireFields.d.ts +26 -0
- package/dist/types/shared-ts/src/near/actions.d.ts +4 -4
- package/dist/types/shared-ts/src/near/delegate.d.ts +3 -2
- package/dist/types/shared-ts/src/near/nearClient.d.ts +145 -0
- package/dist/types/shared-ts/src/passkey-custody/ceremonyCommitPayload.d.ts +0 -22
- package/dist/types/shared-ts/src/passkey-custody/credentialActivity.d.ts +2 -4
- package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +9 -18
- package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +8 -24
- package/dist/types/shared-ts/src/passkey-custody/index.d.ts +0 -2
- package/dist/types/shared-ts/src/passkey-custody/primitives.d.ts +0 -14
- package/dist/types/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.d.ts +0 -15
- package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +2 -51
- package/dist/types/shared-ts/src/signing-lanes/index.d.ts +1 -2
- package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.d.ts +1 -2
- package/dist/types/shared-ts/src/signing-lanes/participantDigest.d.ts +5 -27
- package/dist/types/shared-ts/src/signing-lanes/participants.d.ts +0 -11
- package/dist/types/shared-ts/src/signing-lanes/recordParsers.d.ts +6 -53
- package/dist/types/shared-ts/src/signing-lanes/records.d.ts +1 -2
- package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +15 -37
- package/dist/types/shared-ts/src/signing-lanes/rotationDigests.d.ts +1 -20
- package/dist/types/shared-ts/src/signing-lanes/rotationLifecycle.d.ts +4 -25
- package/dist/types/shared-ts/src/signing-lanes/rotationParsers.d.ts +1 -41
- package/dist/types/shared-ts/src/signing-lanes/rotationProtocolParsers.d.ts +6 -0
- package/dist/types/shared-ts/src/signing-lanes/rotationWireFields.d.ts +20 -0
- package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +2 -35
- package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +8 -35
- package/dist/types/shared-ts/src/threshold/keyMaterialBrands.d.ts +25 -0
- package/dist/types/shared-ts/src/threshold/participants.d.ts +3 -9
- package/dist/types/shared-ts/src/threshold/secp256k1.d.ts +0 -37
- package/dist/types/shared-ts/src/threshold/sessionPolicy.d.ts +24 -0
- package/dist/types/shared-ts/src/threshold/signingRootScope.d.ts +2 -5
- package/dist/types/shared-ts/src/utils/addAuthMethodRegistration.d.ts +3 -4
- package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +7 -108
- package/dist/types/shared-ts/src/utils/addWalletAuthMethod.typecheck.d.ts +16 -3
- package/dist/types/shared-ts/src/utils/canonicalPrimitives.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/digestEncoding.d.ts +9 -0
- package/dist/types/shared-ts/src/utils/domainIds.d.ts +1 -2
- package/dist/types/shared-ts/src/utils/ecdsaKeyFactsInventory.d.ts +1 -2
- package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +5 -5
- package/dist/types/shared-ts/src/utils/emailOtpRecoveryKey.d.ts +0 -2
- package/dist/types/shared-ts/src/utils/errors.d.ts +0 -7
- package/dist/types/shared-ts/src/utils/exactRecord.d.ts +12 -0
- package/dist/types/shared-ts/src/utils/index.d.ts +5 -2
- package/dist/types/shared-ts/src/utils/jsonRpc.d.ts +3 -2
- package/dist/types/shared-ts/src/utils/near.d.ts +2 -1
- package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +7 -7
- package/dist/types/shared-ts/src/utils/normalize.d.ts +0 -4
- package/dist/types/shared-ts/src/utils/registrationAuthMethodInput.d.ts +184 -0
- package/dist/types/shared-ts/src/utils/registrationContracts.d.ts +76 -0
- package/dist/types/shared-ts/src/utils/registrationEstablishedSession.d.ts +1 -2
- package/dist/types/shared-ts/src/utils/registrationIds.d.ts +56 -0
- package/dist/types/shared-ts/src/utils/registrationIntent.d.ts +9 -514
- package/dist/types/shared-ts/src/utils/registrationSignerPlan.d.ts +142 -0
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +21 -92
- package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +14 -99
- package/dist/types/shared-ts/src/utils/routerAbEd25519YaoDigests.d.ts +39 -0
- package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +10 -15
- package/dist/types/shared-ts/src/utils/routerAbTraceContext.d.ts +2 -1
- package/dist/types/shared-ts/src/utils/secureRandomId.d.ts +0 -2
- package/dist/types/shared-ts/src/utils/signerDomain.d.ts +3 -35
- package/dist/types/shared-ts/src/utils/signerSlot.d.ts +0 -4
- package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +1 -7
- package/dist/types/shared-ts/src/utils/validation.d.ts +10 -10
- package/dist/types/shared-ts/src/utils/variant.d.ts +11 -0
- package/dist/types/shared-ts/src/utils/variant.typecheck.d.ts +22 -0
- package/dist/types/shared-ts/src/utils/walletAddSignerActivation.d.ts +2 -2
- package/dist/types/shared-ts/src/utils/walletAuthAuthority.d.ts +1 -58
- package/dist/types/shared-ts/src/utils/walletAuthMethodRecord.d.ts +104 -0
- package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +3 -7
- package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +3 -4
- package/dist/types/shared-ts/src/utils/wireSchema.d.ts +60 -0
- package/dist/types/shared-ts/src/wallet-recovery/backupAcknowledgement.d.ts +2 -1
- package/dist/types/shared-ts/src/wallet-recovery/index.d.ts +0 -1
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeLocator.d.ts +0 -16
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeReservation.d.ts +2 -11
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.d.ts +6 -18
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.d.ts +0 -2
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.d.ts +1 -3
- package/dist/types/wallet-server/src/authorization/capabilityPolicy.d.ts +0 -1
- package/dist/types/wallet-server/src/authorization/domain.d.ts +25 -5
- package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.d.ts +37 -0
- package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/authorization/factorEvidence.d.ts +6 -7
- package/dist/types/wallet-server/src/authorization/service.d.ts +52 -3
- package/dist/types/wallet-server/src/cloud-host.d.ts +6 -2
- package/dist/types/wallet-server/src/core/EmailOtpRecords.d.ts +10 -1
- package/dist/types/wallet-server/src/core/EmailOtpStores.d.ts +16 -116
- package/dist/types/wallet-server/src/core/IdentityStore.d.ts +2 -7
- package/dist/types/wallet-server/src/core/NearPublicKeyStore.d.ts +6 -16
- package/dist/types/wallet-server/src/core/RegistrationCeremonyStore.d.ts +29 -90
- package/dist/types/wallet-server/src/core/ThresholdService/config.d.ts +0 -12
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.d.ts +10 -3
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.d.ts +17 -48
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/internalServiceHttp.d.ts +2 -1
- package/dist/types/wallet-server/src/core/ThresholdService/stores/CloudflareDurableObjectStore.d.ts +4 -71
- package/dist/types/wallet-server/src/core/ThresholdService/stores/KeyStore.d.ts +2 -1
- package/dist/types/wallet-server/src/core/ThresholdService/stores/SessionStore.d.ts +4 -8
- package/dist/types/wallet-server/src/core/ThresholdService/stores/StoreConfig.d.ts +2 -1
- package/dist/types/wallet-server/src/core/ThresholdService/stores/WalletSessionStore.d.ts +1 -3
- package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +14 -47
- package/dist/types/wallet-server/src/core/WalletAuthMethodStore.d.ts +2 -7
- package/dist/types/wallet-server/src/core/WalletStore.d.ts +3 -8
- package/dist/types/wallet-server/src/core/WebAuthnAuthenticatorStore.d.ts +7 -22
- package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.d.ts +14 -36
- package/dist/types/wallet-server/src/core/WebAuthnLoginChallengeStore.d.ts +9 -34
- package/dist/types/wallet-server/src/core/WebAuthnSyncChallengeStore.d.ts +9 -34
- package/dist/types/wallet-server/src/core/authService/AuthService.d.ts +0 -3
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeOperations.d.ts +6 -5
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeProof.d.ts +9 -17
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeVerification.d.ts +3 -2
- package/dist/types/wallet-server/src/core/authService/emailOtpChallenges.d.ts +7 -23
- package/dist/types/wallet-server/src/core/authService/emailOtpConfig.d.ts +3 -10
- package/dist/types/wallet-server/src/core/authService/emailOtpDelivery.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/emailOtpGrant.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/emailOtpRegistrationEnrollment.d.ts +3 -70
- package/dist/types/wallet-server/src/core/authService/emailOtpSeal.d.ts +3 -2
- package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/googleEmailOtpRegistration.d.ts +5 -8
- package/dist/types/wallet-server/src/core/authService/nearPrivateKeySigning.d.ts +3 -2
- package/dist/types/wallet-server/src/core/authService/nearPublicKeyMetadata.d.ts +2 -1
- package/dist/types/wallet-server/src/core/authService/nearTransactions.d.ts +2 -1
- package/dist/types/wallet-server/src/core/authService/oidcVerification.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/rateLimits.d.ts +0 -3
- package/dist/types/wallet-server/src/core/authService/registrationThresholdHelpers.d.ts +0 -26
- package/dist/types/wallet-server/src/core/authService/storeRegistry.d.ts +0 -5
- package/dist/types/wallet-server/src/core/authService/thresholdEcdsaKeyInventory.d.ts +0 -23
- package/dist/types/wallet-server/src/core/authService/webauthn.d.ts +8 -16
- package/dist/types/wallet-server/src/core/authService/webauthnOidcHelpers.d.ts +7 -7
- package/dist/types/wallet-server/src/core/authService/webauthnVerificationOutcomes.d.ts +43 -0
- package/dist/types/wallet-server/src/core/authService/webauthnWalletBinding.d.ts +1 -28
- package/dist/types/wallet-server/src/core/d1IdentityStore.d.ts +6 -16
- package/dist/types/wallet-server/src/core/d1TenantStore.d.ts +51 -0
- package/dist/types/wallet-server/src/core/d1WalletAuthMethodStore.d.ts +11 -29
- package/dist/types/wallet-server/src/core/d1WalletStore.d.ts +6 -1
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEd25519ExportRoot.d.ts +2 -1
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEmailOtpGrant.d.ts +2 -1
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceManagement.d.ts +44 -26
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSession.d.ts +19 -217
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionApproval.d.ts +8 -0
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionRecord.d.ts +259 -0
- package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +2 -2
- package/dist/types/wallet-server/src/core/emailOtpD1Statements.d.ts +54 -0
- package/dist/types/wallet-server/src/core/hostedAccountIds.d.ts +0 -15
- package/dist/types/wallet-server/src/core/keyMaterialBrands.d.ts +4 -24
- package/dist/types/wallet-server/src/core/nearRelayerAccountProvisioning.d.ts +2 -3
- package/dist/types/wallet-server/src/core/nearSignerWasmRuntime.d.ts +0 -1
- package/dist/types/wallet-server/src/core/registrationContracts.d.ts +37 -108
- package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbNormalSigningRuntime.d.ts +5 -4
- package/dist/types/wallet-server/src/core/rpcClients/near/NearClient.d.ts +10 -106
- package/dist/types/wallet-server/src/core/signingLanes/LaneAggregateRevocationApplicationService.d.ts +4 -3
- package/dist/types/wallet-server/src/core/signingLanes/LaneEffectJournalStore.d.ts +2 -3
- package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleStore.d.ts +2 -3
- package/dist/types/wallet-server/src/core/signingLanes/WalletExecutionLaneProjection.d.ts +3 -9
- package/dist/types/wallet-server/src/core/signingLanes/ecdsaServerRetirement.d.ts +4 -4
- package/dist/types/wallet-server/src/core/signingLanes/ed25519ServerRetirement.d.ts +3 -3
- package/dist/types/wallet-server/src/core/storeBackends.d.ts +83 -0
- package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.d.ts +13 -59
- package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.typecheck.d.ts +51 -3
- package/dist/types/wallet-server/src/core/thresholdEcdsaChainTarget.d.ts +0 -1
- package/dist/types/wallet-server/src/core/types.d.ts +3 -24
- package/dist/types/wallet-server/src/core/webAuthnD1Statements.d.ts +29 -0
- package/dist/types/wallet-server/src/core/webAuthnStoreBackends.d.ts +96 -0
- package/dist/types/wallet-server/src/hosted-wallet-gateway.d.ts +11 -7
- package/dist/types/wallet-server/src/index.d.ts +1 -1
- package/dist/types/wallet-server/src/local-hosted-wallet-gateway-worker.d.ts +1 -4
- package/dist/types/wallet-server/src/localHostedWalletGatewayHandler.d.ts +12 -0
- package/dist/types/wallet-server/src/localIntendedEcdsaFinalizeFault.d.ts +33 -0
- package/dist/types/wallet-server/src/localIntendedLinkExecuteFault.d.ts +47 -0
- package/dist/types/wallet-server/src/localIntendedRevokeFault.d.ts +40 -0
- package/dist/types/wallet-server/src/localIntendedSessionAdmissionFault.d.ts +41 -0
- package/dist/types/wallet-server/src/localIntendedYaoExportFault.d.ts +41 -0
- package/dist/types/wallet-server/src/localIntendedYaoFault.d.ts +7 -1
- package/dist/types/wallet-server/src/localIntendedYaoFinalizeFault.d.ts +37 -0
- package/dist/types/wallet-server/src/localIntendedYaoRecoveryFault.d.ts +45 -0
- package/dist/types/wallet-server/src/localIntendedYaoSigningFault.d.ts +51 -0
- package/dist/types/wallet-server/src/router/auth/authRequestValidation.d.ts +10 -21
- package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +5 -10
- package/dist/types/wallet-server/src/router/auth/walletSessionFailure.d.ts +1 -4
- package/dist/types/wallet-server/src/router/auth/webAuthnCredentialCodecs.d.ts +3 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.d.ts +12 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.d.ts +3 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthConfig.d.ts +2 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthService.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/authorizedOperationStatements.d.ts +30 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +45 -21
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/persistedWalletSessionAuthorization.d.ts +3 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/walletSessionAuthorityProjection.d.ts +2 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.d.ts +57 -6
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.d.ts +2 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.d.ts +8 -21
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.d.ts +14 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRevocation.d.ts +49 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.d.ts +4 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.d.ts +2 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.d.ts +8 -4
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.d.ts +3 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/installedEcdsaAuthority.d.ts +7 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.d.ts +1 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.d.ts +33 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.d.ts +13 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.d.ts +24 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.d.ts +2 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.d.ts +1 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.d.ts +3 -4
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +9 -8
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.d.ts +0 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.d.ts +5 -4
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.d.ts +1 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.d.ts +3 -21
- package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityRecords.d.ts +0 -23
- package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1NearPublicKeyStore.d.ts +1 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.d.ts +11 -19
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.d.ts +5 -54
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.d.ts +7 -19
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.d.ts +4 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.d.ts +8 -12
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.d.ts +5 -8
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.d.ts +10 -22
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.d.ts +6 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.d.ts +10 -6
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationService.d.ts +15 -22
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetup.d.ts +5 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.d.ts +4 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.d.ts +5 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.d.ts +3 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.d.ts +0 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.d.ts +0 -16
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.d.ts +29 -14
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.d.ts +15 -12
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodRevocationReplayStore.d.ts +71 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodService.d.ts +34 -24
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorityStore.d.ts +44 -26
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnRecords.d.ts +3 -7
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +8 -19
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleTenantRootLineage.d.ts +2 -1
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletGateway.d.ts +1 -0
- package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.d.ts +15 -2
- package/dist/types/wallet-server/src/router/cloudflare-adaptor.d.ts +2 -2
- package/dist/types/wallet-server/src/router/domains/ecdsa/routerAbEcdsaStrictRegistration.d.ts +9 -7
- package/dist/types/wallet-server/src/router/domains/ecdsa/thresholdEcdsaRequestValidation.d.ts +4 -4
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision.d.ts +46 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.d.ts +5 -3
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.d.ts +20 -79
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.d.ts +1 -1
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.d.ts +4 -3
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.d.ts +62 -42
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.d.ts +108 -32
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryActivation.typecheck.d.ts +5 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.d.ts +36 -5
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.d.ts +5 -4
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.d.ts +41 -50
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.d.ts +2 -2
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.d.ts +3 -3
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.d.ts +6 -5
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.d.ts +14 -4
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.d.ts +12 -1
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.d.ts +5 -5
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.d.ts +3 -4
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpExportPolicy.d.ts +2 -27
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRequestValidation.d.ts +1 -2
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRouteHandlers.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpSessionRouteHelpers.d.ts +2 -102
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/envelopeRevocationAdmission.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.d.ts +3 -2
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.d.ts +1 -9
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/registrationCustodyOutcome.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/verifiedCustodyFactor.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationAdmission.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationCommit.d.ts +2 -28
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryFinalization.d.ts +43 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryKeyManifest.d.ts +7 -7
- package/dist/types/wallet-server/src/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.d.ts +0 -3
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.d.ts +165 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.d.ts +110 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmission.d.ts +360 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.d.ts +11 -10
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbOperationStepUp.d.ts +165 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +16 -702
- package/dist/types/wallet-server/src/router/domains/signingOperations/walletExecutionAdmission.d.ts +5 -12
- package/dist/types/wallet-server/src/router/domains/syncAccount/syncAccountRequestValidation.d.ts +5 -4
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootCustodyLineage.d.ts +6 -1
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootIdentityResolution.d.ts +4 -7
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationInputs.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationRoutes.d.ts +8 -8
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationSetupPayload.d.ts +4 -4
- package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.d.ts +4 -4
- package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRouteHandlers.d.ts +4 -62
- package/dist/types/wallet-server/src/router/express-adaptor.d.ts +2 -2
- package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +64 -61
- package/dist/types/wallet-server/src/router/framework/http.d.ts +0 -1
- package/dist/types/wallet-server/src/router/framework/ror/normalize.d.ts +2 -2
- package/dist/types/wallet-server/src/router/framework/routeMeteringPolicy.d.ts +3 -2
- package/dist/types/wallet-server/src/router/framework/routerApi.d.ts +1 -1
- package/dist/types/wallet-server/src/router/framework/routerApiRouteSurface.d.ts +3 -3
- package/dist/types/wallet-server/src/router/node/nodeHostedWalletGateway.d.ts +34 -0
- package/dist/types/wallet-server/src/router/node/nodeHostedWalletGatewayCheck.d.ts +21 -0
- package/dist/types/wallet-server/src/router/node/nodeHostedWalletGatewayMain.d.ts +2 -0
- package/dist/types/wallet-server/src/router/node/nodeHttp.d.ts +13 -0
- package/dist/types/wallet-server/src/router/node/nodeSqlite.d.ts +22 -0
- package/dist/types/wallet-server/src/router/node/signerSqlMigrations.d.ts +20 -0
- package/dist/types/wallet-server/src/router/transport/fetch/createFetchRouter.d.ts +1 -3
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinking.d.ts +5 -6
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.d.ts +2 -2
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceManagement.d.ts +14 -16
- package/dist/types/wallet-server/src/router/transport/fetch/routes/normalSigningRouterProxy.d.ts +0 -12
- package/dist/types/wallet-server/src/router/transport/fetch/routes/passkeyCustody.d.ts +1 -1
- package/dist/types/wallet-server/src/router/transport/fetch/routes/sessions.d.ts +2 -1
- package/dist/types/wallet-server/src/router/transport/fetch/routes/syncAccountBootstrap.d.ts +7 -13
- package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +3 -57
- package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEd25519.d.ts +0 -44
- package/dist/types/wallet-server/src/storage/d1Sql.d.ts +7 -0
- package/dist/types/wallet-server/src/storage/syncSqlite.d.ts +28 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.d.ts +0 -1
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotencyRecords.d.ts +5 -6
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/transport/shared.d.ts +1 -0
- package/dist/types/wallet-server/src/threshold/statusCodes.d.ts +4 -4
- package/migrations/d1-signer/0036_r150_yao_lifecycle_decisions.sql +22 -0
- package/migrations/d1-signer/0037_r150_wallet_auth_method_revocation_replays.sql +26 -0
- package/migrations/d1-signer/0038_r150_registration_ceremony_cas_guard_seed.sql +8 -0
- package/migrations/d1-signer/0039_r150_revocation_replay_answer_kind.sql +9 -0
- package/package.json +1 -1
- package/dist/esm/core/ThresholdService/ecdsaClientRootProof.js +0 -27
- package/dist/esm/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.js +0 -115
- package/dist/esm/core/ThresholdService/secureRandomId.js +0 -9
- package/dist/esm/core/authService/record.js +0 -8
- package/dist/esm/core/authService/thresholdRuntimePolicy.js +0 -19
- package/dist/esm/core/authService/walletRegistrationPlanning.js +0 -49
- package/dist/esm/core/deviceLinking/index.js +0 -5
- package/dist/esm/core/errors.js +0 -54
- package/dist/esm/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.js +0 -39
- package/dist/esm/core/signingLanes/WalletKeyStore.js +0 -0
- package/dist/esm/core/signingLanes/index.js +0 -8
- package/dist/esm/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.js +0 -55
- package/dist/esm/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.js +0 -56
- package/dist/esm/shared-ts/src/signing-lanes/linkedEcdsaScope.js +0 -1
- package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker.js +0 -414
- package/dist/types/shared-ts/src/passkey-custody/credentialObservations.d.ts +0 -74
- package/dist/types/shared-ts/src/passkey-custody/kekContext.d.ts +0 -34
- package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.d.ts +0 -62
- package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.typecheck.d.ts +0 -2
- package/dist/types/shared-ts/src/signing-lanes/validation.d.ts +0 -11
- package/dist/types/shared-ts/src/utils/bigint.d.ts +0 -3
- package/dist/types/shared-ts/src/utils/paillier.d.ts +0 -37
- package/dist/types/shared-ts/src/utils/recoveryDomain.d.ts +0 -12
- package/dist/types/shared-ts/src/utils/signerDomain.typecheck.d.ts +0 -2
- package/dist/types/shared-ts/src/wallet-recovery/recoveryKekContext.d.ts +0 -37
- package/dist/types/wallet-server/src/core/ThresholdService/ecdsaClientRootProof.d.ts +0 -12
- package/dist/types/wallet-server/src/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.d.ts +0 -17
- package/dist/types/wallet-server/src/core/ThresholdService/secureRandomId.d.ts +0 -2
- package/dist/types/wallet-server/src/core/authService/record.d.ts +0 -2
- package/dist/types/wallet-server/src/core/authService/thresholdRuntimePolicy.d.ts +0 -4
- package/dist/types/wallet-server/src/core/authService/walletRegistrationPlanning.d.ts +0 -19
- package/dist/types/wallet-server/src/core/deviceLinking/index.d.ts +0 -5
- package/dist/types/wallet-server/src/core/errors.d.ts +0 -10
- package/dist/types/wallet-server/src/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.d.ts +0 -28
- package/dist/types/wallet-server/src/core/signingLanes/SigningLaneStore.d.ts +0 -15
- package/dist/types/wallet-server/src/core/signingLanes/WalletKeyStore.d.ts +0 -13
- package/dist/types/wallet-server/src/core/signingLanes/index.d.ts +0 -11
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.d.ts +0 -35
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.d.ts +0 -35
- /package/dist/esm/{core/signingLanes/SigningLaneStore.js → authorization/ecdsaWalletSessionAdmission.js} +0 -0
|
@@ -1,33 +1,37 @@
|
|
|
1
1
|
import { mpcMaterialActivationRefsEqual, parseThresholdEd25519SessionId, parseWalletAuthMethodId, parseWalletAuthorityId, parseWalletKeyId, parseWebAuthnCredentialIdB64u } from "../../../../shared-ts/src/utils/domainIds.js";
|
|
2
2
|
import { parseDeviceId, parseWalletSessionMintId } from "../../../../shared-ts/src/authorization/capabilityKinds.js";
|
|
3
3
|
import { base64UrlDecode, base64UrlEncode } from "../../../../shared-ts/src/utils/base64.js";
|
|
4
|
-
import { parseDigestB64u } from "../../../../shared-ts/src/utils/canonicalPrimitives.js";
|
|
5
4
|
import { alphabetizeStringify, bytesToUnprefixedHex, sha256BytesUtf8 } from "../../../../shared-ts/src/utils/digests.js";
|
|
5
|
+
import { parseDigestB64u } from "../../../../shared-ts/src/utils/canonicalPrimitives.js";
|
|
6
6
|
import "../../../../shared-ts/src/utils/encoders.js";
|
|
7
|
+
import { normalizeOptionalTrimmedString } from "../../../../shared-ts/src/utils/normalize.js";
|
|
8
|
+
import { parseImplicitNearAccountId, parseNamedNearAccountId } from "../../../../shared-ts/src/utils/near.js";
|
|
9
|
+
import "../../../../shared-ts/src/utils/validation.js";
|
|
10
|
+
import { buildFullOwnerPermissionsV1 } from "../../../../shared-ts/src/authorization/delegatedAuthority.js";
|
|
7
11
|
import { parseEd25519PublicKeyB64u, parseSecp256k1CompressedPublicKeyB64u } from "../../../../shared-ts/src/passkey-custody/primitives.js";
|
|
8
12
|
import { buildExactAdministeredSignerManifestV1 } from "../../../../shared-ts/src/device-linking/delegatedActivationPlan.js";
|
|
9
|
-
import { buildFullOwnerPermissionsV1 } from "../../../../shared-ts/src/authorization/delegatedAuthority.js";
|
|
10
|
-
import { buildActiveWalletAuthorityV1, buildWalletSignerActivationSetV1, computeWalletAuthorityDigestB64u, computeWalletSignerActivationSetDigestB64u, extendEcdsaWalletAuthorityWithEd25519, isActiveEcdsaWalletAuthorityV1 } from "../../../../shared-ts/src/authorization/walletAuthority.js";
|
|
11
|
-
import { parseImplicitNearAccountId, parseNamedNearAccountId } from "../../../../shared-ts/src/utils/near.js";
|
|
12
|
-
import { buildWalletAuthMethodRecordV2, findRegistrationSignerPlanEvmFamilyEcdsaBranch, findRegistrationSignerPlanNearEd25519Branch, nearEd25519SigningKeyIdFromString, registrationEd25519AuthorityScopeFromAuthority, registrationIntentGrantFromString, registrationNearEd25519BranchKey, registrationSignerPlanFromSelection, walletIdFromString } from "../../../../shared-ts/src/utils/registrationIntent.js";
|
|
13
13
|
import { routerAbMpcMaterialActivationRefFromWire, routerAbMpcMaterialActivationRefToWire, sameRouterAbMpcMaterialActivationRef } from "../../../../shared-ts/src/utils/routerAbNormalSigningIdentity.js";
|
|
14
|
-
import { deriveRouterAbEd25519YaoRuntimePolicyBindingV1
|
|
14
|
+
import { deriveRouterAbEd25519YaoRuntimePolicyBindingV1 } from "../../../../shared-ts/src/utils/routerAbEd25519YaoDigests.js";
|
|
15
|
+
import { sameRouterAbEd25519YaoRegistrationAdmissionRequestV1 } from "../../../../shared-ts/src/utils/routerAbEd25519Yao.js";
|
|
15
16
|
import { ecdsaClientRootPublicKey33B64uFromString } from "../../../../shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js";
|
|
16
|
-
import { normalizeOptionalTrimmedString } from "../../../../shared-ts/src/utils/normalize.js";
|
|
17
|
-
import "../../../../shared-ts/src/utils/validation.js";
|
|
18
17
|
import { deriveSigningRootId, signingRootScopeFromRuntimePolicyScope } from "../../../../shared-ts/src/threshold/signingRootScope.js";
|
|
19
18
|
import { isEmailOtpWalletAuthAuthority, isPasskeyWalletAuthAuthority, walletAuthAuthoritiesMatch } from "../../../../shared-ts/src/utils/walletAuthAuthority.js";
|
|
20
19
|
import { ROUTER_AB_ECDSA_DERIVATION_NORMAL_SIGNING_STATE_KIND_V1, buildRouterAbEcdsaDerivationActiveStateIdV1, buildRouterAbEcdsaDerivationPublicCapabilityV1, parseRouterAbEcdsaDerivationNormalSigningStateV1, sameRouterAbEcdsaDerivationNormalSigningStateV1, sameRouterAbEcdsaDerivationPublicCapabilityV1, sameRouterAbEcdsaRegistrationActivationReceiptV1, sameRouterAbEcdsaVerifiedClientActivationFactsV1, sameRouterAbPublicDigest32V1Wire } from "../../../../shared-ts/src/utils/routerAbEcdsaDerivation.js";
|
|
20
|
+
import { buildWalletAuthMethodRecordV2 } from "../../../../shared-ts/src/utils/walletAuthMethodRecord.js";
|
|
21
|
+
import { buildActiveWalletAuthorityV1, buildWalletSignerActivationSetV1, computeWalletAuthorityDigestB64u, computeWalletSignerActivationSetDigestB64u, extendEcdsaWalletAuthorityWithEd25519, isActiveEcdsaWalletAuthorityV1 } from "../../../../shared-ts/src/authorization/walletAuthority.js";
|
|
21
22
|
import { secureRandomBase64Url } from "../../../../shared-ts/src/utils/secureRandomId.js";
|
|
22
23
|
import { ROUTER_AB_ED25519_NORMAL_SIGNING_STATE_KIND } from "../../../../shared-ts/src/utils/signingSessionSeal.js";
|
|
23
24
|
import { normalizeThresholdEd25519ParticipantIds } from "../../../../shared-ts/src/threshold/participants.js";
|
|
25
|
+
import { parseEcdsaDerivationPublicIdentity, thresholdEd25519AuthorityScopeFromWalletAuthAuthority } from "../../../../core/ThresholdService/validation.js";
|
|
26
|
+
import { nearEd25519SigningKeyIdFromString, registrationEd25519AuthorityScopeFromAuthority, walletIdFromString } from "../../../../shared-ts/src/utils/registrationIds.js";
|
|
24
27
|
import { registrationPreparationIdFromString } from "../../../../core/types.js";
|
|
25
28
|
import { buildTenantRootIdentityFromAuthenticatedDeploymentV1 } from "../../../../shared-ts/src/tenant-root/tenantRootIdentity.js";
|
|
26
29
|
import { walletCustodyCeremonyCommitPayloadFromWire } from "../../../../shared-ts/src/passkey-custody/ceremonyCommitPayload.js";
|
|
27
30
|
import "../../../../shared-ts/src/passkey-custody/index.js";
|
|
28
31
|
import { computeWalletRegistrationSetupDigestB64u, parseWalletRegistrationSetupClaims, verifySignedWalletRegistrationSetup, verifyWalletRegistrationSetupClaims } from "../../../domains/walletRegistration/walletRegistrationSetupPayload.js";
|
|
32
|
+
import { findRegistrationSignerPlanEvmFamilyEcdsaBranch, findRegistrationSignerPlanNearEd25519Branch, registrationNearEd25519BranchKey, registrationSignerPlanFromSelection } from "../../../../shared-ts/src/utils/registrationSignerPlan.js";
|
|
33
|
+
import { registrationIntentGrantFromString } from "../../../../shared-ts/src/utils/registrationIntent.js";
|
|
29
34
|
import { DEFAULT_WALLET_SESSION_TTL_MS } from "../../../../shared-ts/src/threshold/sessionPolicy.js";
|
|
30
|
-
import { parseEcdsaDerivationPublicIdentity, thresholdEd25519AuthorityScopeFromWalletAuthAuthority } from "../../../../core/ThresholdService/validation.js";
|
|
31
35
|
import { walletAuthAuthorityFromRegistrationAuthority, walletRegistrationFinalizeAuthMethodFromAuthority } from "../wallet/d1WalletAuthMethodBoundary.js";
|
|
32
36
|
import { buildRouterAbEd25519YaoRegistrationCapabilityRecordV1 } from "../../../domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.js";
|
|
33
37
|
import { buildRouterAbEd25519YaoProductAdmissionRequestV1, createRouterAbEd25519YaoMaterialActivationRefV1, projectRouterAbEd25519YaoExactWalletSession } from "../../../domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js";
|
|
@@ -42,6 +46,7 @@ import { listThresholdEcdsaKeyIdentityTargetsForUser } from "../../../../core/au
|
|
|
42
46
|
import { buildWalletRegistrationSetupSignature, normalizeWalletRegistrationSetupRequest, resolveWalletRegistrationSetupWalletId, storedRespondEd25519DeferredWork, walletRegistrationRespondResult, walletRegistrationSetupError, walletRegistrationSetupExpiresAtMs, walletRegistrationSetupIds, walletRegistrationSetupIntentDigest } from "./d1WalletRegistrationSetup.js";
|
|
43
47
|
import { commitRegistrationCustody } from "../../../domains/passkeyCustody/registrationCustodyOutcome.js";
|
|
44
48
|
import { buildD1EvmFamilyEcdsaRegistrationPrepare } from "./d1EvmFamilyEcdsaRegistrationBranch.js";
|
|
49
|
+
import { routerAbEd25519YaoLifecycleDecisionLookupV1, routerAbEd25519YaoLifecycleDecisionV1 } from "../../../domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision.js";
|
|
45
50
|
import { projectWalletRegistrationSessionCommitReceiptV2, registrationReplayAuthMethodFields, replayedRegistrationCommit, unissuedRegistrationCommit } from "./walletRegistrationSessionCommitReceipt.js";
|
|
46
51
|
import { assertDirectWalletSessionOwnerProof, buildRegistrationOwnerProof, issueDirectRegistrationEstablishedEcdsaSession, issueDirectRegistrationEstablishedEd25519Session, projectCurrentNearRegistrationSession, replayDirectRegistrationEstablishedEcdsaSession, replayDirectRegistrationEstablishedEd25519Session, walletSessionPrincipalId } from "./walletRegistrationEstablishedSessionIssuer.js";
|
|
47
52
|
//#region src/router/cloudflare/d1/registration/d1WalletRegistrationService.ts
|
|
@@ -111,13 +116,13 @@ function linkedEd25519ProjectionMatchesDescriptor(input) {
|
|
|
111
116
|
const descriptorPublicKeyBytes = descriptor.registeredPublicKey;
|
|
112
117
|
return projection.applicationBinding.wallet_id === descriptor.applicationBinding.wallet_id && projection.applicationBinding.near_ed25519_signing_key_id === descriptor.applicationBinding.near_ed25519_signing_key_id && projection.applicationBinding.signing_root_id === descriptor.applicationBinding.signing_root_id && projection.applicationBinding.key_creation_signer_slot === descriptor.applicationBinding.key_creation_signer_slot && sameEd25519ParticipantIds(projection.participantIds, descriptor.participantIds) && targetBinding.operation === "registration" && targetLifecycle.work_kind === "registration_prepare" && targetLifecycle.primitive_request_kind === "registration" && targetLifecycle.account_id === descriptor.lifecycle.accountId && targetLifecycle.root_share_epoch === descriptor.lifecycle.rootShareEpoch && targetLifecycle.signer_set_id === descriptor.lifecycle.signerSetId && targetLifecycle.selected_server_id === descriptor.lifecycle.signingWorkerId && sameRouterAbMpcMaterialActivationRef(targetBinding.material_activation, linkedEd25519ProjectionMaterialActivationWire(projection)) && sameRouterAbMpcMaterialActivationRef(projection.activationReceipt.material_activation, linkedEd25519ProjectionMaterialActivationWire(projection)) && ed25519NearPublicKeyFromBytes(registeredPublicKeyBytes) === ed25519NearPublicKeyFromBytes(descriptorPublicKeyBytes) && descriptor.nearAccountId === implicitNearAccountIdFromEd25519PublicKeyBytes(registeredPublicKeyBytes);
|
|
113
118
|
}
|
|
114
|
-
function linkedEcdsaProjectionMatchesSigner(
|
|
115
|
-
const receipt =
|
|
119
|
+
function linkedEcdsaProjectionMatchesSigner(projection, signer) {
|
|
120
|
+
const receipt = projection.activationReceipt;
|
|
116
121
|
const source = receipt.binding.source;
|
|
117
122
|
const sourceScope = receipt.sourceDerivation.sourceNormalSigning.scope;
|
|
118
|
-
const capability =
|
|
119
|
-
const activation =
|
|
120
|
-
return
|
|
123
|
+
const capability = signer.walletKey.publicCapability;
|
|
124
|
+
const activation = signer.activationReceipt.ecdsa_activation;
|
|
125
|
+
return signer.walletId === projection.walletId && projection.signer.walletId === signer.walletId && projection.signer.thresholdPublicKey33B64u === source.thresholdPublicKey33B64u && signer.walletKey.ecdsaThresholdKeyId === sourceScope.ecdsa_threshold_key_id && signer.walletKey.signingRootId === sourceScope.signing_root_id && signer.walletKey.signingRootVersion === sourceScope.signing_root_version && signer.walletKey.thresholdEcdsaPublicKeyB64u === source.thresholdPublicKey33B64u && String(signer.walletKey.derivationClientSharePublicKey33B64u) === source.clientPublicKey33B64u && String(signer.walletKey.relayerVerifyingShareB64u) === source.relayerPublicKey33B64u && sameRouterAbMpcMaterialActivationRef(capability.material_activation, routerAbMpcMaterialActivationRefToWire(source.activation)) && capability.client_id === String(projection.walletId) && capability.context.application_binding_digest_b64u === sourceScope.context.application_binding_digest_b64u && capability.public_identity.context_binding_b64u === sourceScope.public_identity.context_binding_b64u && capability.public_identity.derivation_client_share_public_key33_b64u === source.clientPublicKey33B64u && capability.public_identity.server_public_key33_b64u === source.relayerPublicKey33B64u && capability.public_identity.threshold_public_key33_b64u === source.thresholdPublicKey33B64u && capability.public_identity.ethereum_address20_b64u === source.thresholdEthereumAddress20B64u && capability.public_identity.client_share_retry_counter === sourceScope.public_identity.client_share_retry_counter && capability.public_identity.server_share_retry_counter === sourceScope.public_identity.server_share_retry_counter && capability.signer_set.selected_server.server_id === sourceScope.signing_worker.server_id && capability.activation_epoch === sourceScope.activation_epoch && sameRouterAbMpcMaterialActivationRef(activation.material_activation, routerAbMpcMaterialActivationRefToWire(source.activation)) && activation.context.application_binding_digest_b64u === sourceScope.context.application_binding_digest_b64u && activation.public_identity.context_binding_b64u === sourceScope.public_identity.context_binding_b64u && activation.public_identity.derivation_client_share_public_key33_b64u === source.clientPublicKey33B64u && activation.public_identity.server_public_key33_b64u === source.relayerPublicKey33B64u && activation.public_identity.threshold_public_key33_b64u === source.thresholdPublicKey33B64u && activation.public_identity.ethereum_address20_b64u === source.thresholdEthereumAddress20B64u && activation.signing_worker.server_id === sourceScope.signing_worker.server_id && activation.activation_epoch === sourceScope.activation_epoch;
|
|
121
126
|
}
|
|
122
127
|
function sameLinkedEcdsaResolvedSignerIdentity(left, right) {
|
|
123
128
|
return left.walletId === right.walletId && left.walletKey.keyHandle === right.walletKey.keyHandle && left.walletKey.relayerKeyId === right.walletKey.relayerKeyId && left.walletKey.participantIds[0] === right.walletKey.participantIds[0] && left.walletKey.participantIds[1] === right.walletKey.participantIds[1] && sameRouterAbEcdsaDerivationPublicCapabilityV1(left.walletKey.publicCapability, right.walletKey.publicCapability) && sameWalletRuntimePolicyScope(left.runtimePolicyScope, right.runtimePolicyScope);
|
|
@@ -720,8 +725,7 @@ function sponsoredNamedRegistrationAccountId(provisioning) {
|
|
|
720
725
|
/**
|
|
721
726
|
* A mixed plan finalizes in two calls: `evm_family_ecdsa` first, which returns
|
|
722
727
|
* the wallet ECDSA-ready and leaves the ceremony open, then `near_ed25519`
|
|
723
|
-
* once the Yao ceremony settles
|
|
724
|
-
* still finalize in one call.
|
|
728
|
+
* once the Yao ceremony settles. Single-signer plans still finalize in one call.
|
|
725
729
|
*
|
|
726
730
|
* The requested kind must name only branches the plan admitted, and must be
|
|
727
731
|
* legal for the progress those branches have made — a `near_ed25519` call on a
|
|
@@ -865,7 +869,6 @@ function postRegistrationRequestId(input) {
|
|
|
865
869
|
return input.request.refresh_nonce;
|
|
866
870
|
}
|
|
867
871
|
function pendingEcdsaSessionActivationRecord(input) {
|
|
868
|
-
postRegistrationProofResponse(input.proof);
|
|
869
872
|
return {
|
|
870
873
|
version: "wallet_ecdsa_pending_session_activation_v1",
|
|
871
874
|
walletId: input.walletId,
|
|
@@ -907,9 +910,9 @@ const ROUTER_SERVER_TIMING_MERGE_LIMIT = 32;
|
|
|
907
910
|
/** Metric names the Gateway is willing to re-emit in its own header. */
|
|
908
911
|
const ROUTER_SERVER_TIMING_NAME_PATTERN = /^[A-Za-z0-9_-]+$/;
|
|
909
912
|
/**
|
|
910
|
-
* Folds the Router's own `Server-Timing` header into the Gateway's span list
|
|
911
|
-
*
|
|
912
|
-
*
|
|
913
|
+
* Folds the Router's own `Server-Timing` header into the Gateway's span list,
|
|
914
|
+
* so the Router and role-worker breakdown reaches the browser on the same
|
|
915
|
+
* header as the Gateway's own boundaries.
|
|
913
916
|
*
|
|
914
917
|
* Entries without a finite non-negative `dur` are dropped, which also discards
|
|
915
918
|
* Cloudflare's descriptive metrics, and names are restricted to a token
|
|
@@ -960,11 +963,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
960
963
|
this.walletCustodyCommitStore = input.walletCustodyCommitStore;
|
|
961
964
|
this.walletAuthMethods = input.walletAuthMethods;
|
|
962
965
|
this.getLinkedDeviceEd25519AuthorityReader = input.getLinkedDeviceEd25519AuthorityReader;
|
|
963
|
-
|
|
964
|
-
async getWalletRegistrationRuntimePolicyScope(registrationCeremonyId) {
|
|
965
|
-
const ceremony = await this.getRegistrationCeremonyIntentStore().getCeremony(registrationCeremonyId);
|
|
966
|
-
if (!ceremony) return void 0;
|
|
967
|
-
return registrationPreparedContextRuntimePolicyScope(ceremony.preparedContext);
|
|
966
|
+
this.yaoLifecycleDecisions = input.yaoLifecycleDecisions;
|
|
968
967
|
}
|
|
969
968
|
async resolveEd25519MaterialActivation(input) {
|
|
970
969
|
try {
|
|
@@ -1097,19 +1096,22 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1097
1096
|
})
|
|
1098
1097
|
};
|
|
1099
1098
|
const linkedDeviceReader = this.getLinkedDeviceEd25519AuthorityReader();
|
|
1100
|
-
const
|
|
1099
|
+
const custodyChain = linkedDeviceReader ? await linkedDeviceReader.readInstalledEcdsaAuthorityChainByMaterialActivationV1({
|
|
1101
1100
|
walletId,
|
|
1102
1101
|
materialActivation: routerAbMpcMaterialActivationRefFromWire(input.materialActivation)
|
|
1103
|
-
}) :
|
|
1102
|
+
}) : [];
|
|
1103
|
+
const projection = custodyChain[0];
|
|
1104
1104
|
if (!projection) return {
|
|
1105
1105
|
ok: false,
|
|
1106
1106
|
code: "not_found",
|
|
1107
1107
|
message: "ECDSA material activation is not active for this wallet"
|
|
1108
1108
|
};
|
|
1109
|
-
const
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1109
|
+
const walletSigners = await store.listEcdsaSignersForWallet({ walletId });
|
|
1110
|
+
let matchingSourceSigners = [];
|
|
1111
|
+
for (const custodySource of custodyChain) {
|
|
1112
|
+
matchingSourceSigners = walletSigners.filter(linkedEcdsaProjectionMatchesSigner.bind(null, custodySource));
|
|
1113
|
+
if (matchingSourceSigners.length > 0) break;
|
|
1114
|
+
}
|
|
1113
1115
|
const canonicalSigner = matchingSourceSigners[0];
|
|
1114
1116
|
if (!canonicalSigner) return {
|
|
1115
1117
|
ok: false,
|
|
@@ -1159,7 +1161,9 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1159
1161
|
};
|
|
1160
1162
|
return {
|
|
1161
1163
|
ok: true,
|
|
1162
|
-
|
|
1164
|
+
identity: tenantRoot.identity,
|
|
1165
|
+
identityDigestB64u: tenantRoot.identityDigestB64u,
|
|
1166
|
+
custodyLineageB64u: tenantRoot.custodyLineageB64u
|
|
1163
1167
|
};
|
|
1164
1168
|
} catch (error) {
|
|
1165
1169
|
return {
|
|
@@ -1651,8 +1655,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1651
1655
|
}
|
|
1652
1656
|
}
|
|
1653
1657
|
/**
|
|
1654
|
-
*
|
|
1655
|
-
*
|
|
1658
|
+
* `/wallets/register/setup` — grant, intent, and start in one request, with
|
|
1659
|
+
* one D1 write.
|
|
1656
1660
|
*
|
|
1657
1661
|
* Setup runs before the client's WebAuthn create, because it issues the
|
|
1658
1662
|
* challenge that create signs. So the ECDSA prepare and the Ed25519
|
|
@@ -1989,7 +1993,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1989
1993
|
ed25519: storedRespondEd25519DeferredWork(ceremony.signerState)
|
|
1990
1994
|
});
|
|
1991
1995
|
}
|
|
1992
|
-
if (ecdsaBranch.kind !== "evm_family_ecdsa_prepared") return {
|
|
1996
|
+
if (ecdsaBranch.kind !== "evm_family_ecdsa_prepared" && ecdsaBranch.kind !== "evm_family_ecdsa_response_claimed") return {
|
|
1993
1997
|
ok: false,
|
|
1994
1998
|
code: "invalid_state",
|
|
1995
1999
|
message: "ECDSA registration branch is not respondable"
|
|
@@ -2022,17 +2026,51 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2022
2026
|
code: "scope_mismatch",
|
|
2023
2027
|
message: "registration authority walletId does not match the ceremony"
|
|
2024
2028
|
};
|
|
2025
|
-
|
|
2026
|
-
if (
|
|
2029
|
+
let activeSnapshot = snapshot;
|
|
2030
|
+
if (ecdsaBranch.kind === "evm_family_ecdsa_prepared") {
|
|
2031
|
+
const tenantRootIdentity = registrationTenantRootIdentity(ceremony.preparedContext);
|
|
2032
|
+
if (!tenantRootIdentity) return {
|
|
2033
|
+
ok: false,
|
|
2034
|
+
code: "invalid_state",
|
|
2035
|
+
message: "ECDSA registration has no authoritative tenant-root identity"
|
|
2036
|
+
};
|
|
2037
|
+
const resolved = await this.tenantRootCustodyLineage.resolveActiveLineageForRuntimeScope(tenantRootIdentity);
|
|
2038
|
+
if (!resolved) return {
|
|
2039
|
+
ok: false,
|
|
2040
|
+
code: "invalid_state",
|
|
2041
|
+
message: "ECDSA registration tenant root is not active"
|
|
2042
|
+
};
|
|
2043
|
+
const claimed = await store.claimEcdsaRespond({
|
|
2044
|
+
registrationCeremonyId: ceremony.registrationCeremonyId,
|
|
2045
|
+
strictRegistrationBindingJson,
|
|
2046
|
+
registrationRequest: strictRegistration,
|
|
2047
|
+
projectEnvironmentId: resolved.projectEnvironmentId,
|
|
2048
|
+
tenantRootIdentityDigestB64u: resolved.identityDigestB64u,
|
|
2049
|
+
tenantRootCustodyLineageB64u: resolved.custodyLineageB64u
|
|
2050
|
+
});
|
|
2051
|
+
if (!claimed) return {
|
|
2052
|
+
ok: false,
|
|
2053
|
+
code: "conflict",
|
|
2054
|
+
message: "ECDSA registration owner claim changed; retry the ceremony"
|
|
2055
|
+
};
|
|
2056
|
+
activeSnapshot = claimed;
|
|
2057
|
+
}
|
|
2058
|
+
const claimedSignerState = activeSnapshot.ceremony.signerState;
|
|
2059
|
+
if (claimedSignerState.kind !== "signer_set_registration") return {
|
|
2027
2060
|
ok: false,
|
|
2028
2061
|
code: "invalid_state",
|
|
2029
|
-
message: "ECDSA
|
|
2062
|
+
message: "ECDSA response owner is missing"
|
|
2030
2063
|
};
|
|
2031
|
-
const
|
|
2032
|
-
if (!
|
|
2064
|
+
const claimedBranch = findStoredWalletRegistrationEvmFamilyEcdsaBranch(claimedSignerState);
|
|
2065
|
+
if (claimedBranch?.kind !== "evm_family_ecdsa_response_claimed" || !sameRouterAbEcdsaRegistrationRequest(claimedBranch.registrationRequest, strictRegistration)) return {
|
|
2033
2066
|
ok: false,
|
|
2034
2067
|
code: "invalid_state",
|
|
2035
|
-
message: "ECDSA
|
|
2068
|
+
message: "ECDSA response claim is invalid"
|
|
2069
|
+
};
|
|
2070
|
+
const tenantRoot = {
|
|
2071
|
+
projectEnvironmentId: claimedBranch.projectEnvironmentId,
|
|
2072
|
+
identityDigestB64u: claimedBranch.tenantRootIdentityDigestB64u,
|
|
2073
|
+
custodyLineageB64u: claimedBranch.tenantRootCustodyLineageB64u
|
|
2036
2074
|
};
|
|
2037
2075
|
const routerStartedAtMs = Date.now();
|
|
2038
2076
|
const nearEd25519Branch = registrationSignerBranchesFromPlan(ceremony.signerPlan).nearEd25519;
|
|
@@ -2071,7 +2109,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2071
2109
|
message: ed25519Admission.message
|
|
2072
2110
|
};
|
|
2073
2111
|
let nextSignerState = replaceStoredWalletRegistrationSignerBranch({
|
|
2074
|
-
state:
|
|
2112
|
+
state: claimedSignerState,
|
|
2075
2113
|
replacement: {
|
|
2076
2114
|
kind: "evm_family_ecdsa_pending_activation",
|
|
2077
2115
|
branchKey: ecdsaBranch.branchKey,
|
|
@@ -2090,7 +2128,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2090
2128
|
branches: [ed25519Admission.branch, ...nextSignerState.branches]
|
|
2091
2129
|
};
|
|
2092
2130
|
const next = {
|
|
2093
|
-
...ceremony,
|
|
2131
|
+
...activeSnapshot.ceremony,
|
|
2094
2132
|
authorityState: {
|
|
2095
2133
|
kind: "verified",
|
|
2096
2134
|
authority
|
|
@@ -2100,7 +2138,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2100
2138
|
const commitStartedAtMs = Date.now();
|
|
2101
2139
|
try {
|
|
2102
2140
|
await store.commitEcdsaClaim({
|
|
2103
|
-
expected:
|
|
2141
|
+
expected: activeSnapshot,
|
|
2104
2142
|
next
|
|
2105
2143
|
});
|
|
2106
2144
|
} catch (error) {
|
|
@@ -2158,11 +2196,6 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2158
2196
|
expiresAtMs: ceremony.expiresAtMs
|
|
2159
2197
|
};
|
|
2160
2198
|
}
|
|
2161
|
-
async registrationOwnerProof(input) {
|
|
2162
|
-
const context = await this.readRegistrationOwnerProofContext(input.registrationCeremonyId);
|
|
2163
|
-
if (!context) throw new Error("Registration owner proof context is unavailable");
|
|
2164
|
-
return await this.registrationOwnerProofWithContext(context, input);
|
|
2165
|
-
}
|
|
2166
2199
|
/** For callers that must read the context before finalize tombstones it. */
|
|
2167
2200
|
async registrationOwnerProofWithContext(context, input) {
|
|
2168
2201
|
return await buildRegistrationOwnerProof({
|
|
@@ -2677,7 +2710,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2677
2710
|
wallet,
|
|
2678
2711
|
walletSigners: [],
|
|
2679
2712
|
authority,
|
|
2680
|
-
now
|
|
2713
|
+
now,
|
|
2714
|
+
decisionStatements: []
|
|
2681
2715
|
});
|
|
2682
2716
|
break;
|
|
2683
2717
|
case "email_otp": {
|
|
@@ -2700,7 +2734,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2700
2734
|
walletSigners: [],
|
|
2701
2735
|
authority,
|
|
2702
2736
|
emailOtp: this.emailOtpRegistrationEnrollmentFinalizer.prepareRegistrationCommitPlan(enrollment.persistence),
|
|
2703
|
-
now
|
|
2737
|
+
now,
|
|
2738
|
+
decisionStatements: []
|
|
2704
2739
|
});
|
|
2705
2740
|
const completedIdentity = await this.emailOtpRegistrationEnrollmentFinalizer.completeRegistrationIdentity({
|
|
2706
2741
|
authority,
|
|
@@ -2916,8 +2951,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2916
2951
|
};
|
|
2917
2952
|
}
|
|
2918
2953
|
/**
|
|
2919
|
-
*
|
|
2920
|
-
*
|
|
2954
|
+
* `/wallets/register/activate` — activation and finalization as one
|
|
2955
|
+
* irreversible step behind one Gateway operation row.
|
|
2921
2956
|
*
|
|
2922
2957
|
* Previously activation and finalization were separate requests with
|
|
2923
2958
|
* separate idempotency: activation claimed and CAS'd the ceremony branch,
|
|
@@ -3604,6 +3639,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
3604
3639
|
let ed25519MaterialActivation = null;
|
|
3605
3640
|
let ed25519RegisteredPublicKeyB64u = null;
|
|
3606
3641
|
let ed25519CapabilityInstallation = null;
|
|
3642
|
+
let yaoDecision = null;
|
|
3607
3643
|
if (finalizeNearEd25519) {
|
|
3608
3644
|
const yaoRuntime = this.getEd25519YaoProductRegistration();
|
|
3609
3645
|
if (!yaoRuntime) return {
|
|
@@ -3713,6 +3749,13 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
3713
3749
|
code: activeYaoCapability.code,
|
|
3714
3750
|
message: activeYaoCapability.message
|
|
3715
3751
|
};
|
|
3752
|
+
yaoDecision = await routerAbEd25519YaoLifecycleDecisionV1({
|
|
3753
|
+
kind: "registration_finalized",
|
|
3754
|
+
lifecycleId: activationReference.lifecycle_id,
|
|
3755
|
+
walletId: ceremony.intent.walletId,
|
|
3756
|
+
consumerBinding: requestFingerprint,
|
|
3757
|
+
capability: activeYaoCapability.record
|
|
3758
|
+
});
|
|
3716
3759
|
const activatedEd25519PublicResult = {
|
|
3717
3760
|
signerSlot: finalizeNearEd25519.signerSlot,
|
|
3718
3761
|
nearAccountId,
|
|
@@ -3749,185 +3792,198 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
3749
3792
|
now
|
|
3750
3793
|
});
|
|
3751
3794
|
}
|
|
3752
|
-
const
|
|
3753
|
-
|
|
3754
|
-
now
|
|
3755
|
-
});
|
|
3756
|
-
if (activatedEcdsaBranch && !custodyClientRootPublicKey33B64u) return {
|
|
3795
|
+
const yaoDecisionFound = yaoDecision ? routerAbEd25519YaoLifecycleDecisionLookupV1(yaoDecision, await this.yaoLifecycleDecisions.read(yaoDecision.lifecycleId)) : null;
|
|
3796
|
+
if (yaoDecisionFound?.kind === "decided_otherwise") return {
|
|
3757
3797
|
ok: false,
|
|
3758
3798
|
code: "invalid_state",
|
|
3759
|
-
message: "
|
|
3799
|
+
message: "Ed25519 Yao registration lifecycle was finalized by another request"
|
|
3760
3800
|
};
|
|
3761
|
-
|
|
3762
|
-
if (
|
|
3763
|
-
const
|
|
3764
|
-
if (!custodyClientRootPublicKey) return {
|
|
3765
|
-
ok: false,
|
|
3766
|
-
code: "invalid_state",
|
|
3767
|
-
message: "ECDSA registration is missing its custody client root public key"
|
|
3768
|
-
};
|
|
3769
|
-
walletSigners.push(...buildD1WalletEcdsaSignerRecords({
|
|
3801
|
+
let foundingAuthorityRecords = null;
|
|
3802
|
+
if (yaoDecisionFound?.kind !== "decided") {
|
|
3803
|
+
const wallet = buildD1WalletRecord({
|
|
3770
3804
|
walletId: ceremony.intent.walletId,
|
|
3771
|
-
walletKeys: ecdsaWalletKeys,
|
|
3772
|
-
activationReceipt: activatedEcdsaBranch.activation,
|
|
3773
|
-
runtimePolicyScope: activatedEcdsaBranch.prepare.runtimePolicyScope,
|
|
3774
|
-
custodyKeyManifestDigestB64u,
|
|
3775
|
-
custodyClientRootPublicKey33B64u: custodyClientRootPublicKey,
|
|
3776
3805
|
now
|
|
3777
|
-
})
|
|
3778
|
-
|
|
3779
|
-
if (ed25519SignerRecord) walletSigners.push(ed25519SignerRecord);
|
|
3780
|
-
const foundingAuthorityAlreadyCommitted = finalizeNearEd25519 !== null && ecdsaAlreadyFinalized;
|
|
3781
|
-
const foundingAuthorityNeedsEd25519Extension = foundingAuthorityAlreadyCommitted && requestedEvmFamilyEcdsa !== null;
|
|
3782
|
-
const foundingCommitComplete = finalizeEvmFamilyEcdsa !== null || finalizeNearEd25519 !== null && requestedEvmFamilyEcdsa === null || foundingAuthorityNeedsEd25519Extension;
|
|
3783
|
-
let foundingAuthorityRecords = null;
|
|
3784
|
-
if (foundingAuthorityNeedsEd25519Extension) {
|
|
3785
|
-
if (!ed25519SignerRecord || !ed25519MaterialActivation || !ed25519RegisteredPublicKeyB64u) return {
|
|
3786
|
-
ok: false,
|
|
3787
|
-
code: "invalid_state",
|
|
3788
|
-
message: "Deferred Ed25519 finalize is missing its founding signer facts"
|
|
3789
|
-
};
|
|
3790
|
-
const persistedFoundingRecords = await this.walletAuthMethods.readActiveRegistrationIdentity(ceremonyAuthority);
|
|
3791
|
-
if (!persistedFoundingRecords) return {
|
|
3792
|
-
ok: false,
|
|
3793
|
-
code: "invalid_state",
|
|
3794
|
-
message: "Deferred Ed25519 finalize is missing its founding authority"
|
|
3795
|
-
};
|
|
3796
|
-
if (!isActiveEcdsaWalletAuthorityV1(persistedFoundingRecords.authority)) return {
|
|
3806
|
+
});
|
|
3807
|
+
if (activatedEcdsaBranch && !custodyClientRootPublicKey33B64u) return {
|
|
3797
3808
|
ok: false,
|
|
3798
3809
|
code: "invalid_state",
|
|
3799
|
-
message: "
|
|
3810
|
+
message: "ECDSA registration is missing its custody client root public key"
|
|
3800
3811
|
};
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3812
|
+
const walletSigners = [];
|
|
3813
|
+
if (activatedEcdsaBranch) {
|
|
3814
|
+
const custodyClientRootPublicKey = custodyClientRootPublicKey33B64u;
|
|
3815
|
+
if (!custodyClientRootPublicKey) return {
|
|
3816
|
+
ok: false,
|
|
3817
|
+
code: "invalid_state",
|
|
3818
|
+
message: "ECDSA registration is missing its custody client root public key"
|
|
3819
|
+
};
|
|
3820
|
+
walletSigners.push(...buildD1WalletEcdsaSignerRecords({
|
|
3821
|
+
walletId: ceremony.intent.walletId,
|
|
3822
|
+
walletKeys: ecdsaWalletKeys,
|
|
3823
|
+
activationReceipt: activatedEcdsaBranch.activation,
|
|
3824
|
+
runtimePolicyScope: activatedEcdsaBranch.prepare.runtimePolicyScope,
|
|
3825
|
+
custodyKeyManifestDigestB64u,
|
|
3826
|
+
custodyClientRootPublicKey33B64u: custodyClientRootPublicKey,
|
|
3809
3827
|
now
|
|
3810
|
-
})
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
const
|
|
3815
|
-
|
|
3816
|
-
|
|
3828
|
+
}));
|
|
3829
|
+
}
|
|
3830
|
+
if (ed25519SignerRecord) walletSigners.push(ed25519SignerRecord);
|
|
3831
|
+
const foundingAuthorityAlreadyCommitted = finalizeNearEd25519 !== null && ecdsaAlreadyFinalized;
|
|
3832
|
+
const foundingAuthorityNeedsEd25519Extension = foundingAuthorityAlreadyCommitted && requestedEvmFamilyEcdsa !== null;
|
|
3833
|
+
const foundingCommitComplete = finalizeEvmFamilyEcdsa !== null || finalizeNearEd25519 !== null && requestedEvmFamilyEcdsa === null || foundingAuthorityNeedsEd25519Extension;
|
|
3834
|
+
if (foundingAuthorityNeedsEd25519Extension) {
|
|
3835
|
+
if (!ed25519SignerRecord || !ed25519MaterialActivation || !ed25519RegisteredPublicKeyB64u) return {
|
|
3836
|
+
ok: false,
|
|
3837
|
+
code: "invalid_state",
|
|
3838
|
+
message: "Deferred Ed25519 finalize is missing its founding signer facts"
|
|
3839
|
+
};
|
|
3840
|
+
const persistedFoundingRecords = await this.walletAuthMethods.readActiveRegistrationIdentity(ceremonyAuthority);
|
|
3841
|
+
if (!persistedFoundingRecords) return {
|
|
3817
3842
|
ok: false,
|
|
3818
3843
|
code: "invalid_state",
|
|
3819
|
-
message: "
|
|
3844
|
+
message: "Deferred Ed25519 finalize is missing its founding authority"
|
|
3820
3845
|
};
|
|
3821
|
-
|
|
3846
|
+
if (!isActiveEcdsaWalletAuthorityV1(persistedFoundingRecords.authority)) return {
|
|
3847
|
+
ok: false,
|
|
3848
|
+
code: "invalid_state",
|
|
3849
|
+
message: "Deferred Ed25519 finalize requires an ECDSA-only founding authority"
|
|
3850
|
+
};
|
|
3851
|
+
foundingAuthorityRecords = {
|
|
3852
|
+
authority: await extendFoundingAuthorityWithEd25519({
|
|
3853
|
+
authority: persistedFoundingRecords.authority,
|
|
3854
|
+
ed25519: {
|
|
3855
|
+
signer: ed25519SignerRecord,
|
|
3856
|
+
registeredPublicKeyB64u: ed25519RegisteredPublicKeyB64u,
|
|
3857
|
+
materialActivation: ed25519MaterialActivation
|
|
3858
|
+
},
|
|
3859
|
+
now
|
|
3860
|
+
}),
|
|
3861
|
+
authMethod: persistedFoundingRecords.authMethod
|
|
3862
|
+
};
|
|
3863
|
+
} else if (foundingCommitComplete && !foundingAuthorityAlreadyCommitted) {
|
|
3864
|
+
const ecdsaWalletKey = ecdsaWalletKeys[0];
|
|
3865
|
+
if (ed25519SignerRecord && ed25519MaterialActivation && ed25519RegisteredPublicKeyB64u) if (!ecdsaWalletKey || !ecdsaMaterialActivation) {
|
|
3866
|
+
if (requestedEvmFamilyEcdsa !== null) return {
|
|
3867
|
+
ok: false,
|
|
3868
|
+
code: "invalid_state",
|
|
3869
|
+
message: "Complete registration is missing ECDSA founding facts"
|
|
3870
|
+
};
|
|
3871
|
+
foundingAuthorityRecords = await buildFoundingAuthorityRecords({
|
|
3872
|
+
authority: ceremonyAuthority,
|
|
3873
|
+
walletId: ceremony.intent.walletId,
|
|
3874
|
+
prepared,
|
|
3875
|
+
signerFacts: {
|
|
3876
|
+
kind: "ed25519",
|
|
3877
|
+
keyFamilies: ["ed25519"],
|
|
3878
|
+
ed25519: {
|
|
3879
|
+
signer: ed25519SignerRecord,
|
|
3880
|
+
registeredPublicKeyB64u: ed25519RegisteredPublicKeyB64u,
|
|
3881
|
+
materialActivation: ed25519MaterialActivation
|
|
3882
|
+
}
|
|
3883
|
+
},
|
|
3884
|
+
now
|
|
3885
|
+
});
|
|
3886
|
+
} else foundingAuthorityRecords = await buildFoundingAuthorityRecords({
|
|
3822
3887
|
authority: ceremonyAuthority,
|
|
3823
3888
|
walletId: ceremony.intent.walletId,
|
|
3824
3889
|
prepared,
|
|
3825
3890
|
signerFacts: {
|
|
3826
|
-
kind: "
|
|
3827
|
-
keyFamilies: ["ed25519"],
|
|
3891
|
+
kind: "both",
|
|
3892
|
+
keyFamilies: ["ed25519", "ecdsa_secp256k1"],
|
|
3828
3893
|
ed25519: {
|
|
3829
3894
|
signer: ed25519SignerRecord,
|
|
3830
3895
|
registeredPublicKeyB64u: ed25519RegisteredPublicKeyB64u,
|
|
3831
3896
|
materialActivation: ed25519MaterialActivation
|
|
3897
|
+
},
|
|
3898
|
+
ecdsa: {
|
|
3899
|
+
walletKey: requireSingleFoundingEcdsaWalletKey(ecdsaWalletKeys),
|
|
3900
|
+
materialActivation: ecdsaMaterialActivation
|
|
3832
3901
|
}
|
|
3833
3902
|
},
|
|
3834
3903
|
now
|
|
3835
3904
|
});
|
|
3836
|
-
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
-
|
|
3905
|
+
else if (ecdsaWalletKey && ecdsaMaterialActivation) foundingAuthorityRecords = await buildFoundingAuthorityRecords({
|
|
3906
|
+
authority: ceremonyAuthority,
|
|
3907
|
+
walletId: ceremony.intent.walletId,
|
|
3908
|
+
prepared,
|
|
3909
|
+
signerFacts: {
|
|
3910
|
+
kind: "ecdsa_secp256k1",
|
|
3911
|
+
keyFamilies: ["ecdsa_secp256k1"],
|
|
3912
|
+
ecdsa: {
|
|
3913
|
+
walletKey: requireSingleFoundingEcdsaWalletKey(ecdsaWalletKeys),
|
|
3914
|
+
materialActivation: ecdsaMaterialActivation
|
|
3915
|
+
}
|
|
3847
3916
|
},
|
|
3848
|
-
|
|
3849
|
-
|
|
3850
|
-
|
|
3851
|
-
|
|
3852
|
-
|
|
3853
|
-
|
|
3854
|
-
|
|
3855
|
-
|
|
3856
|
-
|
|
3857
|
-
|
|
3858
|
-
|
|
3859
|
-
|
|
3860
|
-
|
|
3861
|
-
|
|
3862
|
-
|
|
3863
|
-
|
|
3864
|
-
|
|
3917
|
+
now
|
|
3918
|
+
});
|
|
3919
|
+
else return {
|
|
3920
|
+
ok: false,
|
|
3921
|
+
code: "invalid_state",
|
|
3922
|
+
message: "Complete registration is missing founding signer facts"
|
|
3923
|
+
};
|
|
3924
|
+
}
|
|
3925
|
+
const decisionStatements = yaoDecision ? this.yaoLifecycleDecisions.prepareDecideStatements(yaoDecision, now) : [];
|
|
3926
|
+
const persistenceTiming = startD1RegistrationRouteTiming("relayPersistenceMs");
|
|
3927
|
+
try {
|
|
3928
|
+
switch (ceremonyAuthority.kind) {
|
|
3929
|
+
case "passkey":
|
|
3930
|
+
if (emailOtpEnrollment.persistence) return {
|
|
3931
|
+
ok: false,
|
|
3932
|
+
code: "invalid_state",
|
|
3933
|
+
message: "Passkey registration cannot persist Email OTP enrollment state"
|
|
3934
|
+
};
|
|
3935
|
+
if (foundingAuthorityRecords) await this.walletRegistrationCommitStore.commit({
|
|
3936
|
+
kind: "passkey_wallet_registration_commit_v1",
|
|
3937
|
+
wallet,
|
|
3938
|
+
walletSigners,
|
|
3939
|
+
authority: ceremonyAuthority,
|
|
3940
|
+
foundingAuthority: foundingAuthorityRecords.authority,
|
|
3941
|
+
foundingAuthMethod: foundingAuthorityRecords.authMethod,
|
|
3942
|
+
now,
|
|
3943
|
+
decisionStatements
|
|
3944
|
+
});
|
|
3945
|
+
else await this.walletRegistrationCommitStore.commit({
|
|
3946
|
+
kind: "passkey_wallet_registration_commit_v1",
|
|
3947
|
+
wallet,
|
|
3948
|
+
walletSigners,
|
|
3949
|
+
authority: ceremonyAuthority,
|
|
3950
|
+
now,
|
|
3951
|
+
decisionStatements
|
|
3952
|
+
});
|
|
3953
|
+
break;
|
|
3954
|
+
case "email_otp": {
|
|
3955
|
+
if (!emailOtpEnrollment.persistence) return {
|
|
3956
|
+
ok: false,
|
|
3957
|
+
code: "invalid_state",
|
|
3958
|
+
message: "Email OTP registration is missing enrollment persistence state"
|
|
3959
|
+
};
|
|
3960
|
+
const emailOtp = this.emailOtpRegistrationEnrollmentFinalizer.prepareRegistrationCommitPlan(emailOtpEnrollment.persistence);
|
|
3961
|
+
if (foundingAuthorityRecords) await this.walletRegistrationCommitStore.commit({
|
|
3962
|
+
kind: "email_otp_wallet_registration_commit_v1",
|
|
3963
|
+
wallet,
|
|
3964
|
+
walletSigners,
|
|
3965
|
+
authority: ceremonyAuthority,
|
|
3966
|
+
emailOtp,
|
|
3967
|
+
foundingAuthority: foundingAuthorityRecords.authority,
|
|
3968
|
+
foundingAuthMethod: foundingAuthorityRecords.authMethod,
|
|
3969
|
+
now,
|
|
3970
|
+
decisionStatements
|
|
3971
|
+
});
|
|
3972
|
+
else await this.walletRegistrationCommitStore.commit({
|
|
3973
|
+
kind: "email_otp_wallet_registration_commit_v1",
|
|
3974
|
+
wallet,
|
|
3975
|
+
walletSigners,
|
|
3976
|
+
authority: ceremonyAuthority,
|
|
3977
|
+
emailOtp,
|
|
3978
|
+
now,
|
|
3979
|
+
decisionStatements
|
|
3980
|
+
});
|
|
3981
|
+
break;
|
|
3865
3982
|
}
|
|
3866
|
-
},
|
|
3867
|
-
now
|
|
3868
|
-
});
|
|
3869
|
-
else return {
|
|
3870
|
-
ok: false,
|
|
3871
|
-
code: "invalid_state",
|
|
3872
|
-
message: "Complete registration is missing founding signer facts"
|
|
3873
|
-
};
|
|
3874
|
-
}
|
|
3875
|
-
const persistenceTiming = startD1RegistrationRouteTiming("relayPersistenceMs");
|
|
3876
|
-
try {
|
|
3877
|
-
switch (ceremonyAuthority.kind) {
|
|
3878
|
-
case "passkey":
|
|
3879
|
-
if (emailOtpEnrollment.persistence) return {
|
|
3880
|
-
ok: false,
|
|
3881
|
-
code: "invalid_state",
|
|
3882
|
-
message: "Passkey registration cannot persist Email OTP enrollment state"
|
|
3883
|
-
};
|
|
3884
|
-
if (foundingAuthorityRecords) await this.walletRegistrationCommitStore.commit({
|
|
3885
|
-
kind: "passkey_wallet_registration_commit_v1",
|
|
3886
|
-
wallet,
|
|
3887
|
-
walletSigners,
|
|
3888
|
-
authority: ceremonyAuthority,
|
|
3889
|
-
foundingAuthority: foundingAuthorityRecords.authority,
|
|
3890
|
-
foundingAuthMethod: foundingAuthorityRecords.authMethod,
|
|
3891
|
-
now
|
|
3892
|
-
});
|
|
3893
|
-
else await this.walletRegistrationCommitStore.commit({
|
|
3894
|
-
kind: "passkey_wallet_registration_commit_v1",
|
|
3895
|
-
wallet,
|
|
3896
|
-
walletSigners,
|
|
3897
|
-
authority: ceremonyAuthority,
|
|
3898
|
-
now
|
|
3899
|
-
});
|
|
3900
|
-
break;
|
|
3901
|
-
case "email_otp": {
|
|
3902
|
-
if (!emailOtpEnrollment.persistence) return {
|
|
3903
|
-
ok: false,
|
|
3904
|
-
code: "invalid_state",
|
|
3905
|
-
message: "Email OTP registration is missing enrollment persistence state"
|
|
3906
|
-
};
|
|
3907
|
-
const emailOtp = this.emailOtpRegistrationEnrollmentFinalizer.prepareRegistrationCommitPlan(emailOtpEnrollment.persistence);
|
|
3908
|
-
if (foundingAuthorityRecords) await this.walletRegistrationCommitStore.commit({
|
|
3909
|
-
kind: "email_otp_wallet_registration_commit_v1",
|
|
3910
|
-
wallet,
|
|
3911
|
-
walletSigners,
|
|
3912
|
-
authority: ceremonyAuthority,
|
|
3913
|
-
emailOtp,
|
|
3914
|
-
foundingAuthority: foundingAuthorityRecords.authority,
|
|
3915
|
-
foundingAuthMethod: foundingAuthorityRecords.authMethod,
|
|
3916
|
-
now
|
|
3917
|
-
});
|
|
3918
|
-
else await this.walletRegistrationCommitStore.commit({
|
|
3919
|
-
kind: "email_otp_wallet_registration_commit_v1",
|
|
3920
|
-
wallet,
|
|
3921
|
-
walletSigners,
|
|
3922
|
-
authority: ceremonyAuthority,
|
|
3923
|
-
emailOtp,
|
|
3924
|
-
now
|
|
3925
|
-
});
|
|
3926
|
-
break;
|
|
3927
3983
|
}
|
|
3984
|
+
} finally {
|
|
3985
|
+
finishD1RegistrationRouteTiming(finalizeTiming, persistenceTiming);
|
|
3928
3986
|
}
|
|
3929
|
-
} finally {
|
|
3930
|
-
finishD1RegistrationRouteTiming(finalizeTiming, persistenceTiming);
|
|
3931
3987
|
}
|
|
3932
3988
|
const completedRegistrationIdentity = await this.emailOtpRegistrationEnrollmentFinalizer.completeRegistrationIdentity({
|
|
3933
3989
|
authority: ceremonyAuthority,
|
|
@@ -4082,6 +4138,6 @@ function sameRegistrationContinuationSubject(expected, actual) {
|
|
|
4082
4138
|
}
|
|
4083
4139
|
}
|
|
4084
4140
|
//#endregion
|
|
4085
|
-
export { CloudflareD1WalletRegistrationService, buildActivatedEcdsaFamilyBootstrap, ecdsaStrictRegistrationAuthority, exactEcdsaParticipantPair
|
|
4141
|
+
export { CloudflareD1WalletRegistrationService, buildActivatedEcdsaFamilyBootstrap, ecdsaStrictRegistrationAuthority, exactEcdsaParticipantPair };
|
|
4086
4142
|
|
|
4087
4143
|
//# sourceMappingURL=d1WalletRegistrationService.js.map
|