@seams/wallet-server 0.6.2 → 0.7.3
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/THIRD_PARTY_NOTICES.md +1 -105
- 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 +42 -2
- package/dist/esm/authorization/vaultProxyUse.js +5 -10
- package/dist/esm/cloud-host.js +17 -12
- package/dist/esm/core/EmailOtpRecords.js +19 -1
- package/dist/esm/core/EmailOtpStores.js +323 -924
- package/dist/esm/core/IdentityStore.js +67 -345
- package/dist/esm/core/NearPublicKeyStore.js +21 -63
- package/dist/esm/core/RegistrationCeremonyStore.js +3 -1793
- package/dist/esm/core/SessionService.js +7 -30
- 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/routerAbNormalSigningPolicy.js +3 -10
- 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 +191 -372
- package/dist/esm/core/ThresholdService/stores/exportReplayGuard.js +7 -0
- package/dist/esm/core/ThresholdService/validation.js +18 -230
- package/dist/esm/core/WalletAuthMethodStore.js +22 -79
- package/dist/esm/core/WalletStore.js +62 -191
- 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/bytes.js +1 -4
- package/dist/esm/core/authService/emailOtpChallengeOperations.js +2 -5
- package/dist/esm/core/authService/emailOtpChallengeProof.js +10 -41
- package/dist/esm/core/authService/emailOtpChallengeVerification.js +19 -90
- package/dist/esm/core/authService/emailOtpChallenges.js +11 -46
- package/dist/esm/core/authService/emailOtpConfig.js +1 -32
- package/dist/esm/core/authService/emailOtpDelivery.js +10 -45
- package/dist/esm/core/authService/emailOtpEnrollment.js +9 -40
- package/dist/esm/core/authService/emailOtpGrant.js +9 -40
- package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +15 -193
- package/dist/esm/core/authService/emailOtpSeal.js +5 -20
- package/dist/esm/core/authService/emailOtpUnlock.js +20 -110
- package/dist/esm/core/authService/googleEmailOtpRegistration.js +29 -116
- package/dist/esm/core/authService/identity.js +5 -20
- package/dist/esm/core/authService/nearPrivateKeySigning.js +7 -15
- package/dist/esm/core/authService/nearPublicKeyMetadata.js +6 -25
- package/dist/esm/core/authService/nearTransactions.js +2 -1
- package/dist/esm/core/authService/oidcVerification.js +25 -38
- package/dist/esm/core/authService/rateLimits.js +3 -36
- 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 +6 -6
- package/dist/esm/core/authService/webauthn.js +52 -241
- package/dist/esm/core/authService/webauthnOidcHelpers.js +1 -6
- package/dist/esm/core/authService/webauthnVerificationOutcomes.js +41 -0
- package/dist/esm/core/authService/webauthnWalletBinding.js +2 -122
- package/dist/esm/core/d1EcdsaSignerRead.js +76 -0
- package/dist/esm/core/d1IdentityStore.js +46 -139
- package/dist/esm/core/d1TenantStore.js +82 -0
- package/dist/esm/core/d1WalletAuthMethodStore.js +92 -143
- package/dist/esm/core/d1WalletStore.js +28 -36
- package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +10 -12
- 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 +100 -0
- package/dist/esm/core/deviceLinking/linkedDeviceSessionRecord.js +662 -0
- package/dist/esm/core/deviceLinking/requestProof.js +13 -4
- package/dist/esm/core/ecdsaMaterialReadSnapshot.js +85 -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 +27 -155
- 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 +8 -11
- package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +3 -8
- package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +1 -4
- package/dist/esm/core/signingMaterial/ordinaryInactiveSignerMaterialReservation.js +2 -5
- package/dist/esm/core/storeBackends.js +208 -0
- package/dist/esm/core/thresholdEcdsaChainTarget.js +2 -10
- package/dist/esm/core/webAuthnD1Statements.js +92 -0
- package/dist/esm/core/webAuthnStoreBackends.js +198 -0
- package/dist/esm/hosted-wallet-gateway.js +34 -17
- package/dist/esm/index.js +2 -2
- package/dist/esm/local-hosted-wallet-gateway-worker.js +2 -23
- package/dist/esm/localHostedWalletGatewayHandler.js +312 -0
- package/dist/esm/localIntendedEcdsaFinalizeFault.js +85 -0
- package/dist/esm/localIntendedLinkExecuteFault.js +140 -0
- package/dist/esm/localIntendedMaterialAdmissionFault.js +176 -0
- package/dist/esm/localIntendedPresignCancellation.js +44 -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 +34 -12
- package/dist/esm/router/auth/walletSessionFailure.js +3 -19
- package/dist/esm/router/auth/webAuthnCredentialCodecs.js +4 -15
- package/dist/esm/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.js +24 -0
- package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.js +2 -6
- package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +87 -89
- package/dist/esm/router/cloudflare/d1/auth/walletSessionCredentialReaders.js +76 -0
- package/dist/esm/router/cloudflare/d1/authorization/authorizedOperationStatements.js +215 -0
- package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +423 -308
- package/dist/esm/router/cloudflare/d1/authorization/d1VaultProxyStore.js +8 -12
- package/dist/esm/router/cloudflare/d1/authorization/persistedWalletSessionAuthorization.js +14 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +107 -66
- 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 +10 -18
- 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 +4 -4
- 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/d1EmailOtpChallengeIssuer.js +12 -55
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.js +17 -80
- 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/d1EmailOtpDeliveryRuntime.js +6 -25
- 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 +38 -170
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +24 -87
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +9 -32
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.js +5 -20
- 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 +24 -111
- package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +1 -28
- package/dist/esm/router/cloudflare/d1/identity/d1IdentityService.js +9 -40
- package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +5 -18
- package/dist/esm/router/cloudflare/d1/oidc/d1OidcBoundary.js +18 -91
- package/dist/esm/router/cloudflare/d1/oidc/d1OidcVerificationService.js +6 -30
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.js +1 -1
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +7 -18
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +25 -80
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.js +24 -15
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.js +23 -253
- package/dist/esm/router/cloudflare/d1/registration/d1EvmFamilyEcdsaRegistrationBranch.js +5 -20
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +20 -39
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +31 -73
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +4 -1
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +10 -31
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +6 -30
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +286 -220
- 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 +4 -7
- package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +139 -27
- 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 +45 -217
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +10 -13
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +22 -116
- package/dist/esm/router/cloudflare/durableObjects/thresholdStore.js +59 -66
- package/dist/esm/router/cloudflare/runtime/createSelfHostedCloudflareSigningWorker.js +1 -2
- package/dist/esm/router/cloudflare/runtime/routerAbPrewarm.js +2 -2
- package/dist/esm/router/cloudflare/runtime/staticWalletConsoleBinding.js +5 -20
- package/dist/esm/router/cloudflare/runtime/tenantRootCreationGrant.js +2 -9
- package/dist/esm/router/cloudflare/runtime/walletConsoleTenantRootLineage.js +11 -2
- package/dist/esm/router/cloudflare/runtime/walletControlOps.js +2 -1
- package/dist/esm/router/cloudflare/runtime/walletGateway.js +1 -1
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +7 -7
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +4 -3
- package/dist/esm/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.js +48 -21
- package/dist/esm/router/cloudflare.js +13343 -14372
- 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/routerAbEd25519YaoProductRegistrationPersistence.js +5 -8
- 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/recovery/routerAbEd25519YaoRecoveryWalletSessionAuthorization.js +3 -6
- 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 +9 -27
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.js +87 -132
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.js +39 -55
- 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/emailOtpRouteHandlers.js +15 -62
- 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 +836 -0
- package/dist/esm/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.js +698 -0
- package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmission.js +210 -0
- package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.js +16 -15
- package/dist/esm/router/domains/signingOperations/routerAbOperationStepUp.js +314 -0
- package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +62 -2159
- package/dist/esm/router/domains/signingOperations/walletExecutionAdmission.js +1 -4
- package/dist/esm/router/domains/tenantRoot/tenantRootIdentityResolution.js +8 -14
- 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 +127 -339
- package/dist/esm/router/express.js +7172 -7997
- package/dist/esm/router/framework/http.js +5 -4
- package/dist/esm/router/framework/ror/normalize.js +1 -1
- package/dist/esm/router/framework/routerApiRouteSurface.js +1 -1
- package/dist/esm/router/framework/runtimeSnapshotConsumer.js +8 -35
- 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 +4 -7
- package/dist/esm/router/transport/fetch/routes/auth.js +9 -41
- package/dist/esm/router/transport/fetch/routes/deviceLinking.js +16 -18
- package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +8 -27
- package/dist/esm/router/transport/fetch/routes/deviceManagement.js +15 -24
- package/dist/esm/router/transport/fetch/routes/nearPublicKeys.js +4 -16
- 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 +5 -4
- package/dist/esm/router/transport/fetch/routes/syncAccount.js +12 -42
- package/dist/esm/router/transport/fetch/routes/syncAccountBootstrap.js +2 -2
- package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +96 -102
- package/dist/esm/router/transport/fetch/routes/thresholdEd25519.js +52 -27
- package/dist/esm/router/transport/fetch/routes/walletExecutionLanePreflight.js +4 -1
- package/dist/esm/router/transport/fetch/routes/webauthnAuthenticators.js +4 -16
- 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/authorization/walletSignerActivationEquality.js +12 -0
- 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 +10 -14
- package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +3 -5
- 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 +14 -16
- 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 +10 -16
- 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 +9 -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 +8 -19
- 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/tenantRootIdentifier.js +12 -0
- package/dist/esm/shared-ts/src/tenant-root/tenantRootIdentity.js +2 -9
- package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +2 -5
- 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/ecdsaKeyFactsInventory.js +2 -4
- package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +0 -1
- package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +5 -3
- package/dist/esm/shared-ts/src/utils/exactKeys.js +17 -0
- package/dist/esm/shared-ts/src/utils/exactRecord.js +44 -0
- package/dist/esm/shared-ts/src/utils/failure.js +20 -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 +7 -1182
- package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +426 -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/thresholdEcdsaChainTarget.js +9 -0
- 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 +8 -15
- 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 +11 -33
- package/dist/esm/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/idempotencyBackends.js +3 -3
- package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +3 -10
- package/dist/esm/threshold/session/signingSessionSeal/options.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/service.js +8 -35
- package/dist/esm/threshold/session/signingSessionSeal/transport/express.js +18 -94
- package/dist/esm/threshold/session/signingSessionSeal/transport/fetch.js +6 -30
- package/dist/esm/threshold/session/signingSessionSeal/transport/shared.js +23 -75
- package/dist/esm/threshold/statusCodes.js +1 -1
- package/dist/esm/wasm/evm_crypto/pkg/evm_crypto_bg.wasm +0 -0
- 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/types/shared-ts/src/authorization/capabilityKinds.d.ts +8 -26
- package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +2 -9
- 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 +8 -0
- package/dist/types/shared-ts/src/authorization/walletSignerActivationEquality.d.ts +4 -0
- 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 +4 -8
- package/dist/types/shared-ts/src/device-linking/contracts.d.ts +13 -74
- 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 +5 -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 +14 -30
- 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 +9 -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 +11 -50
- package/dist/types/shared-ts/src/signing-lanes/ids.d.ts +1 -10
- 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 +18 -42
- 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/tenant-root/tenantRootIdentifier.d.ts +3 -0
- package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +2 -1
- package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +8 -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 +3 -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 +3 -13
- package/dist/types/shared-ts/src/utils/eip1559TxWasmJson.d.ts +16 -0
- package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +7 -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/exactKeys.d.ts +11 -0
- package/dist/types/shared-ts/src/utils/exactRecord.d.ts +12 -0
- package/dist/types/shared-ts/src/utils/failure.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 +6 -6
- package/dist/types/shared-ts/src/utils/near.d.ts +2 -1
- package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +8 -7
- package/dist/types/shared-ts/src/utils/normalize.d.ts +0 -4
- package/dist/types/shared-ts/src/utils/registrationAuthMethodInput.d.ts +179 -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 +130 -0
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +24 -93
- package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +15 -99
- package/dist/types/shared-ts/src/utils/routerAbEd25519YaoDigests.d.ts +38 -0
- package/dist/types/shared-ts/src/utils/routerAbNormalSigningIdentity.d.ts +30 -8
- 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/routerApiKeyAuth.d.ts +2 -0
- 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 +10 -17
- package/dist/types/shared-ts/src/utils/thresholdEcdsaChainTarget.d.ts +25 -0
- package/dist/types/shared-ts/src/utils/validation.d.ts +10 -10
- package/dist/types/shared-ts/src/utils/variant.d.ts +29 -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 +101 -0
- package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +3 -7
- package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +5 -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/recoveryEnvelopes.d.ts +3 -16
- 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/shared-ts/src/wallet-recovery/walletRecoveryPreparation.d.ts +15 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryTarget.d.ts +3 -4
- package/dist/types/wallet-server/src/authorization/capabilityPolicy.d.ts +0 -1
- package/dist/types/wallet-server/src/authorization/domain.d.ts +36 -5
- package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.d.ts +61 -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 +71 -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 +2 -6
- 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 +2 -4
- package/dist/types/wallet-server/src/core/ThresholdService/stores/exportReplayGuard.d.ts +3 -0
- package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +11 -137
- 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 +15 -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/bytes.d.ts +0 -1
- 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 +8 -32
- 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 +2 -1
- package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +6 -12
- 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/d1EcdsaSignerRead.d.ts +39 -0
- 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 +16 -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 +258 -0
- package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +2 -2
- package/dist/types/wallet-server/src/core/ecdsaMaterialReadSnapshot.d.ts +19 -0
- 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 +8 -9
- package/dist/types/wallet-server/src/core/rpcClients/near/NearClient.d.ts +10 -107
- 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 +5 -20
- 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/signingLanes/signingWorkerLaneMaterialIdentity.d.ts +2 -19
- 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 +3 -12
- package/dist/types/wallet-server/src/core/types.d.ts +5 -30
- 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/localIntendedMaterialAdmissionFault.d.ts +38 -0
- package/dist/types/wallet-server/src/localIntendedPresignCancellation.d.ts +4 -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 +13 -29
- package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +20 -11
- 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 -3
- 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/auth/walletSessionCredentialReaders.d.ts +9 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/authorizedOperationStatements.d.ts +34 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +54 -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 +74 -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 +6 -8
- 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 +7 -10
- 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 +4 -11
- 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 +4 -12
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +13 -12
- 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/d1EmailOtpServerSealRuntime.d.ts +4 -14
- 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 +7 -14
- 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 +21 -26
- 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 +17 -6
- 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 +13 -46
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +8 -19
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOps.d.ts +8 -34
- 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 +6 -18
- 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 +11 -52
- 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 -19
- 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 +164 -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 +373 -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 +164 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +22 -717
- 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 +6 -10
- 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/apiCredentialPorts.d.ts +3 -1
- package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +89 -65
- package/dist/types/wallet-server/src/router/framework/http.d.ts +1 -1
- package/dist/types/wallet-server/src/router/framework/ror/normalize.d.ts +1 -9
- 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 +5 -8
- 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 +9 -17
- package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +3 -58
- 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 -7
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/signingSessionSeal.types.d.ts +6 -8
- 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/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker_bg.wasm +0 -0
- 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 {
|
|
@@ -1079,37 +1078,45 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1079
1078
|
async resolveEcdsaMaterialActivation(input) {
|
|
1080
1079
|
try {
|
|
1081
1080
|
const walletId = walletIdFromString(input.walletId);
|
|
1082
|
-
const
|
|
1083
|
-
|
|
1081
|
+
const canonical = await this.getWalletStore().readEcdsaSignerMaterialSnapshot({
|
|
1082
|
+
source: input.source,
|
|
1084
1083
|
walletId,
|
|
1085
1084
|
materialActivation: input.materialActivation
|
|
1086
1085
|
});
|
|
1087
|
-
if (
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1086
|
+
if (canonical) {
|
|
1087
|
+
const { signer, readSnapshot } = canonical;
|
|
1088
|
+
return {
|
|
1089
|
+
readSnapshot,
|
|
1090
|
+
ok: true,
|
|
1091
|
+
materialActivation: signer.walletKey.publicCapability.material_activation,
|
|
1092
|
+
keyHandle: signer.walletKey.keyHandle,
|
|
1093
|
+
relayerKeyId: signer.walletKey.relayerKeyId,
|
|
1094
|
+
participantIds: signer.walletKey.participantIds,
|
|
1095
|
+
runtimePolicyScope: signer.runtimePolicyScope,
|
|
1096
|
+
routerAbEcdsaDerivationNormalSigning: buildPostRegistrationEcdsaNormalSigningState({
|
|
1097
|
+
walletKey: signer.walletKey,
|
|
1098
|
+
publicCapability: signer.walletKey.publicCapability
|
|
1099
|
+
})
|
|
1100
|
+
};
|
|
1101
|
+
}
|
|
1099
1102
|
const linkedDeviceReader = this.getLinkedDeviceEd25519AuthorityReader();
|
|
1100
|
-
const
|
|
1103
|
+
const custodySnapshot = linkedDeviceReader ? await linkedDeviceReader.readInstalledEcdsaCustodySnapshotV1({
|
|
1104
|
+
source: input.source,
|
|
1101
1105
|
walletId,
|
|
1102
1106
|
materialActivation: routerAbMpcMaterialActivationRefFromWire(input.materialActivation)
|
|
1103
1107
|
}) : null;
|
|
1104
|
-
|
|
1108
|
+
const projection = custodySnapshot?.chain[0];
|
|
1109
|
+
if (!custodySnapshot || !projection) return {
|
|
1105
1110
|
ok: false,
|
|
1106
1111
|
code: "not_found",
|
|
1107
1112
|
message: "ECDSA material activation is not active for this wallet"
|
|
1108
1113
|
};
|
|
1109
|
-
const
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1114
|
+
const { chain, signers } = custodySnapshot;
|
|
1115
|
+
let matchingSourceSigners = [];
|
|
1116
|
+
for (const custodySource of chain) {
|
|
1117
|
+
matchingSourceSigners = signers.filter(linkedEcdsaProjectionMatchesSigner.bind(null, custodySource));
|
|
1118
|
+
if (matchingSourceSigners.length > 0) break;
|
|
1119
|
+
}
|
|
1113
1120
|
const canonicalSigner = matchingSourceSigners[0];
|
|
1114
1121
|
if (!canonicalSigner) return {
|
|
1115
1122
|
ok: false,
|
|
@@ -1123,6 +1130,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1123
1130
|
};
|
|
1124
1131
|
return {
|
|
1125
1132
|
ok: true,
|
|
1133
|
+
readSnapshot: custodySnapshot.readSnapshot,
|
|
1126
1134
|
materialActivation: routerAbMpcMaterialActivationRefToWire(projection.materialActivation),
|
|
1127
1135
|
keyHandle: canonicalSigner.walletKey.keyHandle,
|
|
1128
1136
|
relayerKeyId: canonicalSigner.walletKey.relayerKeyId,
|
|
@@ -1159,7 +1167,9 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1159
1167
|
};
|
|
1160
1168
|
return {
|
|
1161
1169
|
ok: true,
|
|
1162
|
-
|
|
1170
|
+
identity: tenantRoot.identity,
|
|
1171
|
+
identityDigestB64u: tenantRoot.identityDigestB64u,
|
|
1172
|
+
custodyLineageB64u: tenantRoot.custodyLineageB64u
|
|
1163
1173
|
};
|
|
1164
1174
|
} catch (error) {
|
|
1165
1175
|
return {
|
|
@@ -1170,7 +1180,11 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1170
1180
|
}
|
|
1171
1181
|
}
|
|
1172
1182
|
async resolveActiveEcdsaTenantRoot(input) {
|
|
1173
|
-
const activeMaterial = await this.resolveEcdsaMaterialActivation(
|
|
1183
|
+
const activeMaterial = await this.resolveEcdsaMaterialActivation({
|
|
1184
|
+
walletId: input.walletId,
|
|
1185
|
+
materialActivation: input.materialActivation,
|
|
1186
|
+
source: { kind: "database" }
|
|
1187
|
+
});
|
|
1174
1188
|
if (!activeMaterial.ok) return activeMaterial;
|
|
1175
1189
|
const identity = resolveTenantRootIdentityV1({
|
|
1176
1190
|
kind: "ecdsa_b5_active_material",
|
|
@@ -1651,8 +1665,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1651
1665
|
}
|
|
1652
1666
|
}
|
|
1653
1667
|
/**
|
|
1654
|
-
*
|
|
1655
|
-
*
|
|
1668
|
+
* `/wallets/register/setup` — grant, intent, and start in one request, with
|
|
1669
|
+
* one D1 write.
|
|
1656
1670
|
*
|
|
1657
1671
|
* Setup runs before the client's WebAuthn create, because it issues the
|
|
1658
1672
|
* challenge that create signs. So the ECDSA prepare and the Ed25519
|
|
@@ -1989,7 +2003,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
1989
2003
|
ed25519: storedRespondEd25519DeferredWork(ceremony.signerState)
|
|
1990
2004
|
});
|
|
1991
2005
|
}
|
|
1992
|
-
if (ecdsaBranch.kind !== "evm_family_ecdsa_prepared") return {
|
|
2006
|
+
if (ecdsaBranch.kind !== "evm_family_ecdsa_prepared" && ecdsaBranch.kind !== "evm_family_ecdsa_response_claimed") return {
|
|
1993
2007
|
ok: false,
|
|
1994
2008
|
code: "invalid_state",
|
|
1995
2009
|
message: "ECDSA registration branch is not respondable"
|
|
@@ -2022,17 +2036,51 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2022
2036
|
code: "scope_mismatch",
|
|
2023
2037
|
message: "registration authority walletId does not match the ceremony"
|
|
2024
2038
|
};
|
|
2025
|
-
|
|
2026
|
-
if (
|
|
2039
|
+
let activeSnapshot = snapshot;
|
|
2040
|
+
if (ecdsaBranch.kind === "evm_family_ecdsa_prepared") {
|
|
2041
|
+
const tenantRootIdentity = registrationTenantRootIdentity(ceremony.preparedContext);
|
|
2042
|
+
if (!tenantRootIdentity) return {
|
|
2043
|
+
ok: false,
|
|
2044
|
+
code: "invalid_state",
|
|
2045
|
+
message: "ECDSA registration has no authoritative tenant-root identity"
|
|
2046
|
+
};
|
|
2047
|
+
const resolved = await this.tenantRootCustodyLineage.resolveActiveLineageForRuntimeScope(tenantRootIdentity);
|
|
2048
|
+
if (!resolved) return {
|
|
2049
|
+
ok: false,
|
|
2050
|
+
code: "invalid_state",
|
|
2051
|
+
message: "ECDSA registration tenant root is not active"
|
|
2052
|
+
};
|
|
2053
|
+
const claimed = await store.claimEcdsaRespond({
|
|
2054
|
+
registrationCeremonyId: ceremony.registrationCeremonyId,
|
|
2055
|
+
strictRegistrationBindingJson,
|
|
2056
|
+
registrationRequest: strictRegistration,
|
|
2057
|
+
projectEnvironmentId: resolved.projectEnvironmentId,
|
|
2058
|
+
tenantRootIdentityDigestB64u: resolved.identityDigestB64u,
|
|
2059
|
+
tenantRootCustodyLineageB64u: resolved.custodyLineageB64u
|
|
2060
|
+
});
|
|
2061
|
+
if (!claimed) return {
|
|
2062
|
+
ok: false,
|
|
2063
|
+
code: "conflict",
|
|
2064
|
+
message: "ECDSA registration owner claim changed; retry the ceremony"
|
|
2065
|
+
};
|
|
2066
|
+
activeSnapshot = claimed;
|
|
2067
|
+
}
|
|
2068
|
+
const claimedSignerState = activeSnapshot.ceremony.signerState;
|
|
2069
|
+
if (claimedSignerState.kind !== "signer_set_registration") return {
|
|
2027
2070
|
ok: false,
|
|
2028
2071
|
code: "invalid_state",
|
|
2029
|
-
message: "ECDSA
|
|
2072
|
+
message: "ECDSA response owner is missing"
|
|
2030
2073
|
};
|
|
2031
|
-
const
|
|
2032
|
-
if (!
|
|
2074
|
+
const claimedBranch = findStoredWalletRegistrationEvmFamilyEcdsaBranch(claimedSignerState);
|
|
2075
|
+
if (claimedBranch?.kind !== "evm_family_ecdsa_response_claimed" || !sameRouterAbEcdsaRegistrationRequest(claimedBranch.registrationRequest, strictRegistration)) return {
|
|
2033
2076
|
ok: false,
|
|
2034
2077
|
code: "invalid_state",
|
|
2035
|
-
message: "ECDSA
|
|
2078
|
+
message: "ECDSA response claim is invalid"
|
|
2079
|
+
};
|
|
2080
|
+
const tenantRoot = {
|
|
2081
|
+
projectEnvironmentId: claimedBranch.projectEnvironmentId,
|
|
2082
|
+
identityDigestB64u: claimedBranch.tenantRootIdentityDigestB64u,
|
|
2083
|
+
custodyLineageB64u: claimedBranch.tenantRootCustodyLineageB64u
|
|
2036
2084
|
};
|
|
2037
2085
|
const routerStartedAtMs = Date.now();
|
|
2038
2086
|
const nearEd25519Branch = registrationSignerBranchesFromPlan(ceremony.signerPlan).nearEd25519;
|
|
@@ -2071,7 +2119,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2071
2119
|
message: ed25519Admission.message
|
|
2072
2120
|
};
|
|
2073
2121
|
let nextSignerState = replaceStoredWalletRegistrationSignerBranch({
|
|
2074
|
-
state:
|
|
2122
|
+
state: claimedSignerState,
|
|
2075
2123
|
replacement: {
|
|
2076
2124
|
kind: "evm_family_ecdsa_pending_activation",
|
|
2077
2125
|
branchKey: ecdsaBranch.branchKey,
|
|
@@ -2090,7 +2138,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2090
2138
|
branches: [ed25519Admission.branch, ...nextSignerState.branches]
|
|
2091
2139
|
};
|
|
2092
2140
|
const next = {
|
|
2093
|
-
...ceremony,
|
|
2141
|
+
...activeSnapshot.ceremony,
|
|
2094
2142
|
authorityState: {
|
|
2095
2143
|
kind: "verified",
|
|
2096
2144
|
authority
|
|
@@ -2100,7 +2148,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2100
2148
|
const commitStartedAtMs = Date.now();
|
|
2101
2149
|
try {
|
|
2102
2150
|
await store.commitEcdsaClaim({
|
|
2103
|
-
expected:
|
|
2151
|
+
expected: activeSnapshot,
|
|
2104
2152
|
next
|
|
2105
2153
|
});
|
|
2106
2154
|
} catch (error) {
|
|
@@ -2158,11 +2206,6 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2158
2206
|
expiresAtMs: ceremony.expiresAtMs
|
|
2159
2207
|
};
|
|
2160
2208
|
}
|
|
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
2209
|
/** For callers that must read the context before finalize tombstones it. */
|
|
2167
2210
|
async registrationOwnerProofWithContext(context, input) {
|
|
2168
2211
|
return await buildRegistrationOwnerProof({
|
|
@@ -2677,7 +2720,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2677
2720
|
wallet,
|
|
2678
2721
|
walletSigners: [],
|
|
2679
2722
|
authority,
|
|
2680
|
-
now
|
|
2723
|
+
now,
|
|
2724
|
+
decisionStatements: []
|
|
2681
2725
|
});
|
|
2682
2726
|
break;
|
|
2683
2727
|
case "email_otp": {
|
|
@@ -2700,7 +2744,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2700
2744
|
walletSigners: [],
|
|
2701
2745
|
authority,
|
|
2702
2746
|
emailOtp: this.emailOtpRegistrationEnrollmentFinalizer.prepareRegistrationCommitPlan(enrollment.persistence),
|
|
2703
|
-
now
|
|
2747
|
+
now,
|
|
2748
|
+
decisionStatements: []
|
|
2704
2749
|
});
|
|
2705
2750
|
const completedIdentity = await this.emailOtpRegistrationEnrollmentFinalizer.completeRegistrationIdentity({
|
|
2706
2751
|
authority,
|
|
@@ -2916,8 +2961,8 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
2916
2961
|
};
|
|
2917
2962
|
}
|
|
2918
2963
|
/**
|
|
2919
|
-
*
|
|
2920
|
-
*
|
|
2964
|
+
* `/wallets/register/activate` — activation and finalization as one
|
|
2965
|
+
* irreversible step behind one Gateway operation row.
|
|
2921
2966
|
*
|
|
2922
2967
|
* Previously activation and finalization were separate requests with
|
|
2923
2968
|
* separate idempotency: activation claimed and CAS'd the ceremony branch,
|
|
@@ -3604,6 +3649,7 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
3604
3649
|
let ed25519MaterialActivation = null;
|
|
3605
3650
|
let ed25519RegisteredPublicKeyB64u = null;
|
|
3606
3651
|
let ed25519CapabilityInstallation = null;
|
|
3652
|
+
let yaoDecision = null;
|
|
3607
3653
|
if (finalizeNearEd25519) {
|
|
3608
3654
|
const yaoRuntime = this.getEd25519YaoProductRegistration();
|
|
3609
3655
|
if (!yaoRuntime) return {
|
|
@@ -3713,6 +3759,13 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
3713
3759
|
code: activeYaoCapability.code,
|
|
3714
3760
|
message: activeYaoCapability.message
|
|
3715
3761
|
};
|
|
3762
|
+
yaoDecision = await routerAbEd25519YaoLifecycleDecisionV1({
|
|
3763
|
+
kind: "registration_finalized",
|
|
3764
|
+
lifecycleId: activationReference.lifecycle_id,
|
|
3765
|
+
walletId: ceremony.intent.walletId,
|
|
3766
|
+
consumerBinding: requestFingerprint,
|
|
3767
|
+
capability: activeYaoCapability.record
|
|
3768
|
+
});
|
|
3716
3769
|
const activatedEd25519PublicResult = {
|
|
3717
3770
|
signerSlot: finalizeNearEd25519.signerSlot,
|
|
3718
3771
|
nearAccountId,
|
|
@@ -3749,185 +3802,198 @@ var CloudflareD1WalletRegistrationService = class {
|
|
|
3749
3802
|
now
|
|
3750
3803
|
});
|
|
3751
3804
|
}
|
|
3752
|
-
const
|
|
3753
|
-
|
|
3754
|
-
now
|
|
3755
|
-
});
|
|
3756
|
-
if (activatedEcdsaBranch && !custodyClientRootPublicKey33B64u) return {
|
|
3805
|
+
const yaoDecisionFound = yaoDecision ? routerAbEd25519YaoLifecycleDecisionLookupV1(yaoDecision, await this.yaoLifecycleDecisions.read(yaoDecision.lifecycleId)) : null;
|
|
3806
|
+
if (yaoDecisionFound?.kind === "decided_otherwise") return {
|
|
3757
3807
|
ok: false,
|
|
3758
3808
|
code: "invalid_state",
|
|
3759
|
-
message: "
|
|
3809
|
+
message: "Ed25519 Yao registration lifecycle was finalized by another request"
|
|
3760
3810
|
};
|
|
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({
|
|
3811
|
+
let foundingAuthorityRecords = null;
|
|
3812
|
+
if (yaoDecisionFound?.kind !== "decided") {
|
|
3813
|
+
const wallet = buildD1WalletRecord({
|
|
3770
3814
|
walletId: ceremony.intent.walletId,
|
|
3771
|
-
walletKeys: ecdsaWalletKeys,
|
|
3772
|
-
activationReceipt: activatedEcdsaBranch.activation,
|
|
3773
|
-
runtimePolicyScope: activatedEcdsaBranch.prepare.runtimePolicyScope,
|
|
3774
|
-
custodyKeyManifestDigestB64u,
|
|
3775
|
-
custodyClientRootPublicKey33B64u: custodyClientRootPublicKey,
|
|
3776
3815
|
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 {
|
|
3816
|
+
});
|
|
3817
|
+
if (activatedEcdsaBranch && !custodyClientRootPublicKey33B64u) return {
|
|
3797
3818
|
ok: false,
|
|
3798
3819
|
code: "invalid_state",
|
|
3799
|
-
message: "
|
|
3820
|
+
message: "ECDSA registration is missing its custody client root public key"
|
|
3800
3821
|
};
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3822
|
+
const walletSigners = [];
|
|
3823
|
+
if (activatedEcdsaBranch) {
|
|
3824
|
+
const custodyClientRootPublicKey = custodyClientRootPublicKey33B64u;
|
|
3825
|
+
if (!custodyClientRootPublicKey) return {
|
|
3826
|
+
ok: false,
|
|
3827
|
+
code: "invalid_state",
|
|
3828
|
+
message: "ECDSA registration is missing its custody client root public key"
|
|
3829
|
+
};
|
|
3830
|
+
walletSigners.push(...buildD1WalletEcdsaSignerRecords({
|
|
3831
|
+
walletId: ceremony.intent.walletId,
|
|
3832
|
+
walletKeys: ecdsaWalletKeys,
|
|
3833
|
+
activationReceipt: activatedEcdsaBranch.activation,
|
|
3834
|
+
runtimePolicyScope: activatedEcdsaBranch.prepare.runtimePolicyScope,
|
|
3835
|
+
custodyKeyManifestDigestB64u,
|
|
3836
|
+
custodyClientRootPublicKey33B64u: custodyClientRootPublicKey,
|
|
3809
3837
|
now
|
|
3810
|
-
})
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
const
|
|
3815
|
-
|
|
3816
|
-
|
|
3838
|
+
}));
|
|
3839
|
+
}
|
|
3840
|
+
if (ed25519SignerRecord) walletSigners.push(ed25519SignerRecord);
|
|
3841
|
+
const foundingAuthorityAlreadyCommitted = finalizeNearEd25519 !== null && ecdsaAlreadyFinalized;
|
|
3842
|
+
const foundingAuthorityNeedsEd25519Extension = foundingAuthorityAlreadyCommitted && requestedEvmFamilyEcdsa !== null;
|
|
3843
|
+
const foundingCommitComplete = finalizeEvmFamilyEcdsa !== null || finalizeNearEd25519 !== null && requestedEvmFamilyEcdsa === null || foundingAuthorityNeedsEd25519Extension;
|
|
3844
|
+
if (foundingAuthorityNeedsEd25519Extension) {
|
|
3845
|
+
if (!ed25519SignerRecord || !ed25519MaterialActivation || !ed25519RegisteredPublicKeyB64u) return {
|
|
3846
|
+
ok: false,
|
|
3847
|
+
code: "invalid_state",
|
|
3848
|
+
message: "Deferred Ed25519 finalize is missing its founding signer facts"
|
|
3849
|
+
};
|
|
3850
|
+
const persistedFoundingRecords = await this.walletAuthMethods.readActiveRegistrationIdentity(ceremonyAuthority);
|
|
3851
|
+
if (!persistedFoundingRecords) return {
|
|
3817
3852
|
ok: false,
|
|
3818
3853
|
code: "invalid_state",
|
|
3819
|
-
message: "
|
|
3854
|
+
message: "Deferred Ed25519 finalize is missing its founding authority"
|
|
3820
3855
|
};
|
|
3821
|
-
|
|
3856
|
+
if (!isActiveEcdsaWalletAuthorityV1(persistedFoundingRecords.authority)) return {
|
|
3857
|
+
ok: false,
|
|
3858
|
+
code: "invalid_state",
|
|
3859
|
+
message: "Deferred Ed25519 finalize requires an ECDSA-only founding authority"
|
|
3860
|
+
};
|
|
3861
|
+
foundingAuthorityRecords = {
|
|
3862
|
+
authority: await extendFoundingAuthorityWithEd25519({
|
|
3863
|
+
authority: persistedFoundingRecords.authority,
|
|
3864
|
+
ed25519: {
|
|
3865
|
+
signer: ed25519SignerRecord,
|
|
3866
|
+
registeredPublicKeyB64u: ed25519RegisteredPublicKeyB64u,
|
|
3867
|
+
materialActivation: ed25519MaterialActivation
|
|
3868
|
+
},
|
|
3869
|
+
now
|
|
3870
|
+
}),
|
|
3871
|
+
authMethod: persistedFoundingRecords.authMethod
|
|
3872
|
+
};
|
|
3873
|
+
} else if (foundingCommitComplete && !foundingAuthorityAlreadyCommitted) {
|
|
3874
|
+
const ecdsaWalletKey = ecdsaWalletKeys[0];
|
|
3875
|
+
if (ed25519SignerRecord && ed25519MaterialActivation && ed25519RegisteredPublicKeyB64u) if (!ecdsaWalletKey || !ecdsaMaterialActivation) {
|
|
3876
|
+
if (requestedEvmFamilyEcdsa !== null) return {
|
|
3877
|
+
ok: false,
|
|
3878
|
+
code: "invalid_state",
|
|
3879
|
+
message: "Complete registration is missing ECDSA founding facts"
|
|
3880
|
+
};
|
|
3881
|
+
foundingAuthorityRecords = await buildFoundingAuthorityRecords({
|
|
3882
|
+
authority: ceremonyAuthority,
|
|
3883
|
+
walletId: ceremony.intent.walletId,
|
|
3884
|
+
prepared,
|
|
3885
|
+
signerFacts: {
|
|
3886
|
+
kind: "ed25519",
|
|
3887
|
+
keyFamilies: ["ed25519"],
|
|
3888
|
+
ed25519: {
|
|
3889
|
+
signer: ed25519SignerRecord,
|
|
3890
|
+
registeredPublicKeyB64u: ed25519RegisteredPublicKeyB64u,
|
|
3891
|
+
materialActivation: ed25519MaterialActivation
|
|
3892
|
+
}
|
|
3893
|
+
},
|
|
3894
|
+
now
|
|
3895
|
+
});
|
|
3896
|
+
} else foundingAuthorityRecords = await buildFoundingAuthorityRecords({
|
|
3822
3897
|
authority: ceremonyAuthority,
|
|
3823
3898
|
walletId: ceremony.intent.walletId,
|
|
3824
3899
|
prepared,
|
|
3825
3900
|
signerFacts: {
|
|
3826
|
-
kind: "
|
|
3827
|
-
keyFamilies: ["ed25519"],
|
|
3901
|
+
kind: "both",
|
|
3902
|
+
keyFamilies: ["ed25519", "ecdsa_secp256k1"],
|
|
3828
3903
|
ed25519: {
|
|
3829
3904
|
signer: ed25519SignerRecord,
|
|
3830
3905
|
registeredPublicKeyB64u: ed25519RegisteredPublicKeyB64u,
|
|
3831
3906
|
materialActivation: ed25519MaterialActivation
|
|
3907
|
+
},
|
|
3908
|
+
ecdsa: {
|
|
3909
|
+
walletKey: requireSingleFoundingEcdsaWalletKey(ecdsaWalletKeys),
|
|
3910
|
+
materialActivation: ecdsaMaterialActivation
|
|
3832
3911
|
}
|
|
3833
3912
|
},
|
|
3834
3913
|
now
|
|
3835
3914
|
});
|
|
3836
|
-
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
-
|
|
3915
|
+
else if (ecdsaWalletKey && ecdsaMaterialActivation) foundingAuthorityRecords = await buildFoundingAuthorityRecords({
|
|
3916
|
+
authority: ceremonyAuthority,
|
|
3917
|
+
walletId: ceremony.intent.walletId,
|
|
3918
|
+
prepared,
|
|
3919
|
+
signerFacts: {
|
|
3920
|
+
kind: "ecdsa_secp256k1",
|
|
3921
|
+
keyFamilies: ["ecdsa_secp256k1"],
|
|
3922
|
+
ecdsa: {
|
|
3923
|
+
walletKey: requireSingleFoundingEcdsaWalletKey(ecdsaWalletKeys),
|
|
3924
|
+
materialActivation: ecdsaMaterialActivation
|
|
3925
|
+
}
|
|
3847
3926
|
},
|
|
3848
|
-
|
|
3849
|
-
|
|
3850
|
-
|
|
3851
|
-
|
|
3852
|
-
|
|
3853
|
-
|
|
3854
|
-
|
|
3855
|
-
|
|
3856
|
-
|
|
3857
|
-
|
|
3858
|
-
|
|
3859
|
-
|
|
3860
|
-
|
|
3861
|
-
|
|
3862
|
-
|
|
3863
|
-
|
|
3864
|
-
|
|
3927
|
+
now
|
|
3928
|
+
});
|
|
3929
|
+
else return {
|
|
3930
|
+
ok: false,
|
|
3931
|
+
code: "invalid_state",
|
|
3932
|
+
message: "Complete registration is missing founding signer facts"
|
|
3933
|
+
};
|
|
3934
|
+
}
|
|
3935
|
+
const decisionStatements = yaoDecision ? this.yaoLifecycleDecisions.prepareDecideStatements(yaoDecision, now) : [];
|
|
3936
|
+
const persistenceTiming = startD1RegistrationRouteTiming("relayPersistenceMs");
|
|
3937
|
+
try {
|
|
3938
|
+
switch (ceremonyAuthority.kind) {
|
|
3939
|
+
case "passkey":
|
|
3940
|
+
if (emailOtpEnrollment.persistence) return {
|
|
3941
|
+
ok: false,
|
|
3942
|
+
code: "invalid_state",
|
|
3943
|
+
message: "Passkey registration cannot persist Email OTP enrollment state"
|
|
3944
|
+
};
|
|
3945
|
+
if (foundingAuthorityRecords) await this.walletRegistrationCommitStore.commit({
|
|
3946
|
+
kind: "passkey_wallet_registration_commit_v1",
|
|
3947
|
+
wallet,
|
|
3948
|
+
walletSigners,
|
|
3949
|
+
authority: ceremonyAuthority,
|
|
3950
|
+
foundingAuthority: foundingAuthorityRecords.authority,
|
|
3951
|
+
foundingAuthMethod: foundingAuthorityRecords.authMethod,
|
|
3952
|
+
now,
|
|
3953
|
+
decisionStatements
|
|
3954
|
+
});
|
|
3955
|
+
else await this.walletRegistrationCommitStore.commit({
|
|
3956
|
+
kind: "passkey_wallet_registration_commit_v1",
|
|
3957
|
+
wallet,
|
|
3958
|
+
walletSigners,
|
|
3959
|
+
authority: ceremonyAuthority,
|
|
3960
|
+
now,
|
|
3961
|
+
decisionStatements
|
|
3962
|
+
});
|
|
3963
|
+
break;
|
|
3964
|
+
case "email_otp": {
|
|
3965
|
+
if (!emailOtpEnrollment.persistence) return {
|
|
3966
|
+
ok: false,
|
|
3967
|
+
code: "invalid_state",
|
|
3968
|
+
message: "Email OTP registration is missing enrollment persistence state"
|
|
3969
|
+
};
|
|
3970
|
+
const emailOtp = this.emailOtpRegistrationEnrollmentFinalizer.prepareRegistrationCommitPlan(emailOtpEnrollment.persistence);
|
|
3971
|
+
if (foundingAuthorityRecords) await this.walletRegistrationCommitStore.commit({
|
|
3972
|
+
kind: "email_otp_wallet_registration_commit_v1",
|
|
3973
|
+
wallet,
|
|
3974
|
+
walletSigners,
|
|
3975
|
+
authority: ceremonyAuthority,
|
|
3976
|
+
emailOtp,
|
|
3977
|
+
foundingAuthority: foundingAuthorityRecords.authority,
|
|
3978
|
+
foundingAuthMethod: foundingAuthorityRecords.authMethod,
|
|
3979
|
+
now,
|
|
3980
|
+
decisionStatements
|
|
3981
|
+
});
|
|
3982
|
+
else await this.walletRegistrationCommitStore.commit({
|
|
3983
|
+
kind: "email_otp_wallet_registration_commit_v1",
|
|
3984
|
+
wallet,
|
|
3985
|
+
walletSigners,
|
|
3986
|
+
authority: ceremonyAuthority,
|
|
3987
|
+
emailOtp,
|
|
3988
|
+
now,
|
|
3989
|
+
decisionStatements
|
|
3990
|
+
});
|
|
3991
|
+
break;
|
|
3865
3992
|
}
|
|
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
3993
|
}
|
|
3994
|
+
} finally {
|
|
3995
|
+
finishD1RegistrationRouteTiming(finalizeTiming, persistenceTiming);
|
|
3928
3996
|
}
|
|
3929
|
-
} finally {
|
|
3930
|
-
finishD1RegistrationRouteTiming(finalizeTiming, persistenceTiming);
|
|
3931
3997
|
}
|
|
3932
3998
|
const completedRegistrationIdentity = await this.emailOtpRegistrationEnrollmentFinalizer.completeRegistrationIdentity({
|
|
3933
3999
|
authority: ceremonyAuthority,
|
|
@@ -4082,6 +4148,6 @@ function sameRegistrationContinuationSubject(expected, actual) {
|
|
|
4082
4148
|
}
|
|
4083
4149
|
}
|
|
4084
4150
|
//#endregion
|
|
4085
|
-
export { CloudflareD1WalletRegistrationService, buildActivatedEcdsaFamilyBootstrap, ecdsaStrictRegistrationAuthority, exactEcdsaParticipantPair
|
|
4151
|
+
export { CloudflareD1WalletRegistrationService, buildActivatedEcdsaFamilyBootstrap, ecdsaStrictRegistrationAuthority, exactEcdsaParticipantPair };
|
|
4086
4152
|
|
|
4087
4153
|
//# sourceMappingURL=d1WalletRegistrationService.js.map
|