@seams/wallet-server 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +8 -0
- package/artifact-manifest.json +464 -0
- package/cloudflare-router-ab/build/deriver-a/index.js +2 -0
- package/cloudflare-router-ab/build/deriver-a/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/deriver-a/package.json +16 -0
- package/cloudflare-router-ab/build/deriver-a/worker/shim.mjs +4 -0
- package/cloudflare-router-ab/build/deriver-b/index.js +2 -0
- package/cloudflare-router-ab/build/deriver-b/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/deriver-b/package.json +16 -0
- package/cloudflare-router-ab/build/deriver-b/worker/shim.mjs +4 -0
- package/cloudflare-router-ab/build/local-tools/darwin-arm64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/router/index.js +2 -0
- package/cloudflare-router-ab/build/router/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/router/package.json +16 -0
- package/cloudflare-router-ab/build/router/worker/shim.mjs +4 -0
- package/cloudflare-router-ab/build/signing-worker/index.js +2 -0
- package/cloudflare-router-ab/build/signing-worker/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/signing-worker/package.json +16 -0
- package/cloudflare-router-ab/build/signing-worker/worker/shim.mjs +4 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/index.js +2 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/package.json +16 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/worker/shim.mjs +4 -0
- package/cloudflare-router-ab/env/tenant-root-control-plane.local.example +6 -0
- package/cloudflare-router-ab/migrations/deriver-a/0001_role_private_storage.sql +14 -0
- package/cloudflare-router-ab/migrations/deriver-a/0002_tenant_root_role_shares.sql +32 -0
- package/cloudflare-router-ab/migrations/deriver-a/0003_tenant_root_command_replays.sql +76 -0
- package/cloudflare-router-ab/migrations/deriver-a/0004_tenant_root_creation_admission.sql +7 -0
- package/cloudflare-router-ab/migrations/deriver-a/0005_tenant_root_refresh_state.sql +15 -0
- package/cloudflare-router-ab/migrations/deriver-a/0006_tenant_root_restore_import_keys.sql +119 -0
- package/cloudflare-router-ab/migrations/deriver-a/0007_tenant_root_restore_refresh_attempts.sql +103 -0
- package/cloudflare-router-ab/migrations/deriver-a/0008_tenant_root_restore_promotion.sql +40 -0
- package/cloudflare-router-ab/migrations/deriver-a/0009_tenant_root_restore_preactivation_cleanup.sql +8 -0
- package/cloudflare-router-ab/migrations/deriver-a/0010_tenant_root_recovery_attempts.sql +26 -0
- package/cloudflare-router-ab/migrations/deriver-a/0011_tenant_root_source_retirement.sql +100 -0
- package/cloudflare-router-ab/migrations/deriver-b/0001_role_private_storage.sql +14 -0
- package/cloudflare-router-ab/migrations/deriver-b/0002_tenant_root_role_shares.sql +32 -0
- package/cloudflare-router-ab/migrations/deriver-b/0003_tenant_root_command_replays.sql +76 -0
- package/cloudflare-router-ab/migrations/deriver-b/0004_tenant_root_creation_admission.sql +7 -0
- package/cloudflare-router-ab/migrations/deriver-b/0005_tenant_root_refresh_state.sql +15 -0
- package/cloudflare-router-ab/migrations/deriver-b/0006_tenant_root_restore_import_keys.sql +119 -0
- package/cloudflare-router-ab/migrations/deriver-b/0007_tenant_root_restore_refresh_attempts.sql +103 -0
- package/cloudflare-router-ab/migrations/deriver-b/0008_tenant_root_restore_promotion.sql +40 -0
- package/cloudflare-router-ab/migrations/deriver-b/0009_tenant_root_restore_preactivation_cleanup.sql +8 -0
- package/cloudflare-router-ab/migrations/deriver-b/0010_tenant_root_recovery_attempts.sql +26 -0
- package/cloudflare-router-ab/migrations/deriver-b/0011_tenant_root_source_retirement.sql +100 -0
- package/cloudflare-router-ab/migrations/signing-worker/0001_private_storage.sql +67 -0
- package/cloudflare-router-ab/migrations/signing-worker/0002_activation_revocation_fences.sql +3 -0
- package/cloudflare-router-ab/scripts/bootstrap-local-tenant-root.mjs +182 -0
- package/cloudflare-router-ab/scripts/initialize-local-wallet.mjs +17 -0
- package/cloudflare-router-ab/scripts/local-key-material.mjs +29 -0
- package/cloudflare-router-ab/scripts/prepare-local-runtime-config.mjs +1110 -0
- package/cloudflare-router-ab/scripts/start-local-role-workers.mjs +333 -0
- package/cloudflare-router-ab/scripts/start-local-wallet-system.mjs +427 -0
- package/cloudflare-router-ab/wrangler.deriver-a.toml +123 -0
- package/cloudflare-router-ab/wrangler.deriver-b.toml +123 -0
- package/cloudflare-router-ab/wrangler.router.toml +126 -0
- package/cloudflare-router-ab/wrangler.signing-worker.toml +86 -0
- package/cloudflare-router-ab/wrangler.tenant-root-control-plane.toml +56 -0
- package/dist/esm/authorization/capabilityPolicy.js +96 -0
- package/dist/esm/authorization/domain.js +434 -0
- package/dist/esm/authorization/factorEvidence.js +405 -0
- package/dist/esm/authorization/service.js +319 -0
- package/dist/esm/authorization/vaultProxyUse.js +295 -0
- package/dist/esm/cloud-host.js +126 -0
- package/dist/esm/core/AuthService.js +2 -0
- package/dist/esm/core/EmailOtpRecords.js +361 -0
- package/dist/esm/core/EmailOtpStores.js +1460 -0
- package/dist/esm/core/IdentityStore.js +617 -0
- package/dist/esm/core/NearPublicKeyStore.js +242 -0
- package/dist/esm/core/RegistrationCeremonyStore.js +2101 -0
- package/dist/esm/core/SessionService.js +255 -0
- package/dist/esm/core/ThresholdService/config.js +111 -0
- package/dist/esm/core/ThresholdService/ecdsaClientRootProof.js +27 -0
- package/dist/esm/core/ThresholdService/evmCryptoWasm.js +167 -0
- package/dist/esm/core/ThresholdService/index.js +4 -0
- package/dist/esm/core/ThresholdService/kv.js +368 -0
- package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.js +360 -0
- package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillLiveSession.js +282 -0
- package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.js +272 -0
- package/dist/esm/core/ThresholdService/routerAb/internalServiceHttp.js +57 -0
- package/dist/esm/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.js +115 -0
- package/dist/esm/core/ThresholdService/routerAbNormalSigningPolicy.js +31 -0
- package/dist/esm/core/ThresholdService/secureRandomId.js +9 -0
- package/dist/esm/core/ThresholdService/stores/CloudflareDurableObjectStore.js +603 -0
- package/dist/esm/core/ThresholdService/stores/EcdsaSigningStore.js +422 -0
- package/dist/esm/core/ThresholdService/stores/KeyStore.js +140 -0
- package/dist/esm/core/ThresholdService/stores/SessionStore.js +437 -0
- package/dist/esm/core/ThresholdService/stores/StoreConfig.js +13 -0
- package/dist/esm/core/ThresholdService/stores/WalletSessionStore.js +722 -0
- package/dist/esm/core/ThresholdService/validation.js +718 -0
- package/dist/esm/core/WalletAuthMethodStore.js +180 -0
- package/dist/esm/core/WalletStore.js +495 -0
- package/dist/esm/core/WebAuthnAuthenticatorStore.js +485 -0
- package/dist/esm/core/WebAuthnCredentialBindingStore.js +594 -0
- package/dist/esm/core/WebAuthnLoginChallengeStore.js +432 -0
- package/dist/esm/core/WebAuthnSyncChallengeStore.js +434 -0
- package/dist/esm/core/authService/AuthService.js +611 -0
- package/dist/esm/core/authService/bytes.js +22 -0
- package/dist/esm/core/authService/configValues.js +15 -0
- package/dist/esm/core/authService/emailOtpChallengeOperations.js +126 -0
- package/dist/esm/core/authService/emailOtpChallengeProof.js +214 -0
- package/dist/esm/core/authService/emailOtpChallengeVerification.js +335 -0
- package/dist/esm/core/authService/emailOtpChallenges.js +260 -0
- package/dist/esm/core/authService/emailOtpConfig.js +231 -0
- package/dist/esm/core/authService/emailOtpDelivery.js +169 -0
- package/dist/esm/core/authService/emailOtpEnrollment.js +141 -0
- package/dist/esm/core/authService/emailOtpGrant.js +74 -0
- package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +322 -0
- package/dist/esm/core/authService/emailOtpSeal.js +78 -0
- package/dist/esm/core/authService/emailOtpUnlock.js +264 -0
- package/dist/esm/core/authService/githubOAuth.js +140 -0
- package/dist/esm/core/authService/googleEmailOtpErrors.js +6 -0
- package/dist/esm/core/authService/googleEmailOtpOperations.js +141 -0
- package/dist/esm/core/authService/googleEmailOtpRegistration.js +674 -0
- package/dist/esm/core/authService/identity.js +57 -0
- package/dist/esm/core/authService/identityOperations.js +32 -0
- package/dist/esm/core/authService/nearAccountOperations.js +229 -0
- package/dist/esm/core/authService/nearPrivateKeySigning.js +110 -0
- package/dist/esm/core/authService/nearPublicKeyMetadata.js +127 -0
- package/dist/esm/core/authService/nearTransactions.js +139 -0
- package/dist/esm/core/authService/oidcVerification.js +262 -0
- package/dist/esm/core/authService/portableCrypto.js +19 -0
- package/dist/esm/core/authService/rateLimits.js +117 -0
- package/dist/esm/core/authService/record.js +8 -0
- package/dist/esm/core/authService/registrationThresholdHelpers.js +131 -0
- package/dist/esm/core/authService/runtime.js +45 -0
- package/dist/esm/core/authService/signerWasmUrls.js +20 -0
- package/dist/esm/core/authService/storeRegistry.js +113 -0
- package/dist/esm/core/authService/thresholdEcdsaKeyInventory.js +146 -0
- package/dist/esm/core/authService/thresholdRuntimePolicy.js +19 -0
- package/dist/esm/core/authService/thresholdStoreSummary.js +32 -0
- package/dist/esm/core/authService/walletRegistrationPlanning.js +49 -0
- package/dist/esm/core/authService/wasm.js +78 -0
- package/dist/esm/core/authService/webauthn.js +746 -0
- package/dist/esm/core/authService/webauthnAuthority.js +17 -0
- package/dist/esm/core/authService/webauthnOidcHelpers.js +91 -0
- package/dist/esm/core/authService/webauthnWalletBinding.js +157 -0
- package/dist/esm/core/config.js +110 -0
- package/dist/esm/core/d1IdentityStore.js +340 -0
- package/dist/esm/core/d1WalletAuthMethodStore.js +768 -0
- package/dist/esm/core/d1WalletStore.js +724 -0
- package/dist/esm/core/defaultConfigsServer.js +9 -0
- package/dist/esm/core/deviceLinking/index.js +5 -0
- package/dist/esm/core/deviceLinking/linkedDeviceEd25519ExportRoot.js +0 -0
- package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +211 -0
- package/dist/esm/core/deviceLinking/linkedDeviceManagement.js +279 -0
- package/dist/esm/core/deviceLinking/linkedDeviceSession.js +1419 -0
- package/dist/esm/core/deviceLinking/requestProof.js +172 -0
- package/dist/esm/core/errors.js +54 -0
- package/dist/esm/core/hostedAccountIds.js +225 -0
- package/dist/esm/core/keyMaterialBrands.js +58 -0
- package/dist/esm/core/logger.js +39 -0
- package/dist/esm/core/nearKeys.js +20 -0
- package/dist/esm/core/nearRelayerAccountProvisioning.js +713 -0
- package/dist/esm/core/nearSignerWasmRuntime.js +87 -0
- package/dist/esm/core/registrationContracts.js +2 -0
- package/dist/esm/core/routerAbSigning/RouterAbEcdsaPresignRuntime.js +88 -0
- package/dist/esm/core/routerAbSigning/RouterAbNormalSigningRuntime.js +101 -0
- package/dist/esm/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.js +39 -0
- package/dist/esm/core/routerAbSigning/createRouterAbSigningRuntimes.js +91 -0
- package/dist/esm/core/rpcClients/near/NearClient.js +389 -0
- package/dist/esm/core/sessionValidation.js +0 -0
- package/dist/esm/core/signingLanes/LaneAggregateRevocationApplicationService.js +86 -0
- package/dist/esm/core/signingLanes/LaneEffectJournalStore.js +0 -0
- package/dist/esm/core/signingLanes/LaneEnrollmentActivation.js +324 -0
- package/dist/esm/core/signingLanes/LaneEnrollmentRevocation.js +173 -0
- package/dist/esm/core/signingLanes/LaneLifecycleApplicationService.js +200 -0
- package/dist/esm/core/signingLanes/LaneLifecycleStore.js +24 -0
- package/dist/esm/core/signingLanes/SigningLaneStore.js +0 -0
- package/dist/esm/core/signingLanes/WalletExecutionLaneProjection.js +296 -0
- package/dist/esm/core/signingLanes/WalletKeyStore.js +0 -0
- package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +78 -0
- package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +71 -0
- package/dist/esm/core/signingLanes/index.js +8 -0
- package/dist/esm/core/signingLanes/signingWorkerLaneMaterialIdentity.js +0 -0
- package/dist/esm/core/signingMaterial/ordinaryInactiveSignerMaterialReservation.js +305 -0
- package/dist/esm/core/threeRouteRegistrationContracts.js +5 -0
- package/dist/esm/core/thresholdEcdsaChainTarget.js +49 -0
- package/dist/esm/core/types.js +8 -0
- package/dist/esm/core/utils.js +14 -0
- package/dist/esm/delegateAction/index.js +136 -0
- package/dist/esm/hosted-wallet-gateway-worker.js +18 -0
- package/dist/esm/hosted-wallet-gateway.js +701 -0
- package/dist/esm/index.js +53 -0
- package/dist/esm/local-hosted-wallet-gateway-worker.js +23 -0
- package/dist/esm/node_modules/@near-js/types/lib/esm/provider/response.js +17 -0
- package/dist/esm/router/auth/authRequestValidation.js +264 -0
- package/dist/esm/router/auth/commonRouterUtils.js +305 -0
- package/dist/esm/router/auth/routerApiCredentialAuth.js +91 -0
- package/dist/esm/router/auth/routerApiKeyAuth.js +63 -0
- package/dist/esm/router/auth/walletSessionFailure.js +49 -0
- package/dist/esm/router/auth/webAuthnCredentialCodecs.js +107 -0
- package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.js +84 -0
- package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthConfig.js +321 -0
- package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +1581 -0
- package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +1820 -0
- package/dist/esm/router/cloudflare/d1/authorization/d1VaultProxyStore.js +122 -0
- package/dist/esm/router/cloudflare/d1/authorization/walletSessionAuthorityProjection.js +119 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +1831 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEd25519ExportRootStore.js +118 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.js +81 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.js +539 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceManagementService.js +92 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.js +560 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.js +136 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.js +95 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.js +91 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionService.js +15 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.js +732 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.js +195 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetAuthenticatorStore.js +100 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.js +867 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.js +169 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.js +255 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkSourceReader.js +128 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/index.js +15 -0
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.js +311 -0
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoProductRegistrationPartitionedStateStore.js +21 -0
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoWalletSigner.js +65 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.js +216 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.js +326 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.js +346 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.js +495 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpDeliveryRuntime.js +157 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.js +248 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.js +66 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.js +76 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.js +539 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +404 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +200 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.js +84 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.js +217 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.js +485 -0
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.js +509 -0
- package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +51 -0
- package/dist/esm/router/cloudflare/d1/identity/d1IdentityService.js +135 -0
- package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +62 -0
- package/dist/esm/router/cloudflare/d1/oidc/d1OidcBoundary.js +272 -0
- package/dist/esm/router/cloudflare/d1/oidc/d1OidcVerificationService.js +132 -0
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.js +628 -0
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +871 -0
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +823 -0
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpAttemptStore.js +38 -0
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.js +304 -0
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.js +793 -0
- package/dist/esm/router/cloudflare/d1/registration/d1EvmFamilyEcdsaRegistrationBranch.js +120 -0
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +317 -0
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +2084 -0
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +309 -0
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +120 -0
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +263 -0
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +3887 -0
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetup.js +182 -0
- package/dist/esm/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.js +399 -0
- package/dist/esm/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.js +486 -0
- package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +146 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.js +10 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.js +22 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.js +167 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.js +38 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.js +20 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.js +1459 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLockStore.js +114 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.js +16 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneRecords.js +170 -0
- package/dist/esm/router/cloudflare/d1/signingLanes/index.js +10 -0
- package/dist/esm/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.js +412 -0
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerService.js +1396 -0
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.js +285 -0
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodService.js +2018 -0
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorityStore.js +792 -0
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.js +635 -0
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +538 -0
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +264 -0
- package/dist/esm/router/cloudflare/durableObjects/thresholdStore.js +514 -0
- package/dist/esm/router/cloudflare/durableObjects/versionedJsonRecordStore.js +192 -0
- package/dist/esm/router/cloudflare/runtime/cloudflare.types.js +0 -0
- package/dist/esm/router/cloudflare/runtime/cloudflareSignerWasm.js +8 -0
- package/dist/esm/router/cloudflare/runtime/createCloudflareRouter.js +19 -0
- package/dist/esm/router/cloudflare/runtime/createSelfHostedCloudflareSigningWorker.js +94 -0
- package/dist/esm/router/cloudflare/runtime/ed25519SessionAdapter.js +106 -0
- package/dist/esm/router/cloudflare/runtime/environment.js +25 -0
- package/dist/esm/router/cloudflare/runtime/routerAbPrewarm.js +34 -0
- package/dist/esm/router/cloudflare/runtime/routerAbServiceBindings.js +33 -0
- package/dist/esm/router/cloudflare/runtime/sessionAdapterRuntime.js +104 -0
- package/dist/esm/router/cloudflare/runtime/staticWalletConsoleBinding.js +168 -0
- package/dist/esm/router/cloudflare/runtime/tenantRootCreationGrant.js +147 -0
- package/dist/esm/router/cloudflare/runtime/walletConsoleOps.js +143 -0
- package/dist/esm/router/cloudflare/runtime/walletConsoleOpsClient.js +227 -0
- package/dist/esm/router/cloudflare/runtime/walletConsoleTenantRootLineage.js +30 -0
- package/dist/esm/router/cloudflare/runtime/walletControlOps.js +107 -0
- package/dist/esm/router/cloudflare/runtime/walletGateway.js +149 -0
- package/dist/esm/router/cloudflare/runtime/walletRuntimeOps.js +322 -0
- package/dist/esm/router/cloudflare/runtime/walletRuntimeOpsHandler.js +48 -0
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +597 -0
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +272 -0
- package/dist/esm/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.js +477 -0
- package/dist/esm/router/cloudflare/signingLanes/index.js +4 -0
- package/dist/esm/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.js +32 -0
- package/dist/esm/router/cloudflare-adaptor.js +45 -0
- package/dist/esm/router/cloudflare.js +42794 -0
- package/dist/esm/router/domains/ecdsa/routerAbEcdsaStrictRegistration.js +738 -0
- package/dist/esm/router/domains/ecdsa/thresholdEcdsaRequestValidation.js +134 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js +368 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.js +624 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.js +143 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPersistence.js +270 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.js +31 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.js +162 -0
- package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.js +1366 -0
- package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.js +465 -0
- package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.js +1609 -0
- package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.js +540 -0
- package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryWalletSessionAuthorization.js +394 -0
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.js +572 -0
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.js +555 -0
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.js +268 -0
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.js +329 -0
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.js +423 -0
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.js +432 -0
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.js +58 -0
- package/dist/esm/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.js +0 -0
- package/dist/esm/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.js +0 -0
- package/dist/esm/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.js +275 -0
- package/dist/esm/router/domains/emailOtp/emailOtpExportPolicy.js +70 -0
- package/dist/esm/router/domains/emailOtp/emailOtpRequestValidation.js +34 -0
- package/dist/esm/router/domains/emailOtp/emailOtpRouteHandlers.js +218 -0
- package/dist/esm/router/domains/emailOtp/emailOtpSessionRouteHelpers.js +210 -0
- package/dist/esm/router/domains/passkeyCustody/envelopeRevocationAdmission.js +26 -0
- package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.js +107 -0
- package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.js +45 -0
- package/dist/esm/router/domains/passkeyCustody/registrationCustodyOutcome.js +47 -0
- package/dist/esm/router/domains/passkeyCustody/verifiedCustodyFactor.js +46 -0
- package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationAdmission.js +32 -0
- package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationCommit.js +170 -0
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryAttempt.js +64 -0
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryFinalization.js +652 -0
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryKeyManifest.js +396 -0
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryRotation.js +87 -0
- package/dist/esm/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.js +89 -0
- package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.js +106 -0
- package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +2669 -0
- package/dist/esm/router/domains/signingOperations/walletExecutionAdmission.js +228 -0
- package/dist/esm/router/domains/syncAccount/syncAccountRequestValidation.js +78 -0
- package/dist/esm/router/domains/tenantRoot/tenantRootCustodyLineage.js +0 -0
- package/dist/esm/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.js +55 -0
- package/dist/esm/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.js +56 -0
- package/dist/esm/router/domains/tenantRoot/tenantRootIdentityResolution.js +111 -0
- package/dist/esm/router/domains/walletRegistration/walletRegistrationInputs.js +0 -0
- package/dist/esm/router/domains/walletRegistration/walletRegistrationRoutes.js +2199 -0
- package/dist/esm/router/domains/walletRegistration/walletRegistrationSetupPayload.js +155 -0
- package/dist/esm/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.js +84 -0
- package/dist/esm/router/domains/walletUnlock/walletUnlockRouteHandlers.js +1142 -0
- package/dist/esm/router/express-adaptor.js +84 -0
- package/dist/esm/router/express.js +26616 -0
- package/dist/esm/router/framework/apiCredentialPorts.js +11 -0
- package/dist/esm/router/framework/applyRouteMetering.js +26 -0
- package/dist/esm/router/framework/authServicePort.js +30 -0
- package/dist/esm/router/framework/enforceRoutePolicy.js +92 -0
- package/dist/esm/router/framework/http.js +87 -0
- package/dist/esm/router/framework/logger.js +7 -0
- package/dist/esm/router/framework/modules.js +34 -0
- package/dist/esm/router/framework/ror/index.js +5 -0
- package/dist/esm/router/framework/ror/normalize.js +57 -0
- package/dist/esm/router/framework/ror/options.js +33 -0
- package/dist/esm/router/framework/ror/provider.js +33 -0
- package/dist/esm/router/framework/ror/staticProvider.js +24 -0
- package/dist/esm/router/framework/routeAuthPolicy.js +16 -0
- package/dist/esm/router/framework/routeDefinitions.js +446 -0
- package/dist/esm/router/framework/routeExecutionContext.js +24 -0
- package/dist/esm/router/framework/routeExtensions.js +50 -0
- package/dist/esm/router/framework/routeMeteringPolicy.js +0 -0
- package/dist/esm/router/framework/routeRequestValidation.js +32 -0
- package/dist/esm/router/framework/routeResponses.js +33 -0
- package/dist/esm/router/framework/routerApi.js +42 -0
- package/dist/esm/router/framework/routerApiRouteSurface.js +54 -0
- package/dist/esm/router/framework/routerApiWebhooks.js +60 -0
- package/dist/esm/router/framework/runtimeSnapshotConsumer.js +145 -0
- package/dist/esm/router/framework/versionedJsonRecordStore.js +0 -0
- package/dist/esm/router/ror-adaptor.js +5 -0
- package/dist/esm/router/ror.js +178 -0
- package/dist/esm/router/transport/fetch/createFetchRouter.js +309 -0
- package/dist/esm/router/transport/fetch/fetchRouter.types.js +0 -0
- package/dist/esm/router/transport/fetch/routes/auth.js +219 -0
- package/dist/esm/router/transport/fetch/routes/deviceLinking.js +1196 -0
- package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +264 -0
- package/dist/esm/router/transport/fetch/routes/deviceManagement.js +289 -0
- package/dist/esm/router/transport/fetch/routes/health.js +42 -0
- package/dist/esm/router/transport/fetch/routes/nearPublicKeys.js +39 -0
- package/dist/esm/router/transport/fetch/routes/normalSigningRouterProxy.js +118 -0
- package/dist/esm/router/transport/fetch/routes/passkeyCustody.js +1618 -0
- package/dist/esm/router/transport/fetch/routes/sessions.js +1033 -0
- package/dist/esm/router/transport/fetch/routes/syncAccount.js +187 -0
- package/dist/esm/router/transport/fetch/routes/syncAccountBootstrap.js +214 -0
- package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +1729 -0
- package/dist/esm/router/transport/fetch/routes/thresholdEd25519.js +1321 -0
- package/dist/esm/router/transport/fetch/routes/walletExecutionLanePreflight.js +228 -0
- package/dist/esm/router/transport/fetch/routes/walletRegistration.js +73 -0
- package/dist/esm/router/transport/fetch/routes/webauthnAuthenticators.js +43 -0
- package/dist/esm/router/transport/fetch/routes/wellKnown.js +48 -0
- package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +224 -0
- package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +134 -0
- package/dist/esm/shared-ts/src/authorization/index.js +6 -0
- package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +58 -0
- package/dist/esm/shared-ts/src/authorization/walletAuthority.js +802 -0
- package/dist/esm/shared-ts/src/authorization/walletCustodyOperation.js +18 -0
- package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +5 -0
- package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +332 -0
- package/dist/esm/shared-ts/src/device-linking/contracts.js +8 -0
- package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +132 -0
- package/dist/esm/shared-ts/src/device-linking/digests.js +273 -0
- package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +158 -0
- package/dist/esm/shared-ts/src/device-linking/index.js +9 -0
- package/dist/esm/shared-ts/src/device-linking/parsers.js +1412 -0
- package/dist/esm/shared-ts/src/device-linking/requestProof.js +114 -0
- package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +563 -0
- package/dist/esm/shared-ts/src/device-linking/walletSessionCredentialDelivery.js +207 -0
- package/dist/esm/shared-ts/src/near/actions.js +75 -0
- package/dist/esm/shared-ts/src/passkey-custody/ceremonyCommitPayload.js +69 -0
- package/dist/esm/shared-ts/src/passkey-custody/credentialActivity.js +81 -0
- package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +272 -0
- package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +175 -0
- package/dist/esm/shared-ts/src/passkey-custody/index.js +5 -0
- package/dist/esm/shared-ts/src/passkey-custody/primitives.js +92 -0
- package/dist/esm/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js +53 -0
- package/dist/esm/shared-ts/src/signing-lanes/execution.js +14 -0
- package/dist/esm/shared-ts/src/signing-lanes/index.js +11 -0
- package/dist/esm/shared-ts/src/signing-lanes/linkedEcdsaScope.js +1 -0
- package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +91 -0
- package/dist/esm/shared-ts/src/signing-lanes/participantDigest.js +124 -0
- package/dist/esm/shared-ts/src/signing-lanes/participants.js +262 -0
- package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +143 -0
- package/dist/esm/shared-ts/src/signing-lanes/rotation.js +8 -0
- package/dist/esm/shared-ts/src/signing-lanes/rotationDigests.js +397 -0
- package/dist/esm/shared-ts/src/signing-lanes/rotationLifecycle.js +313 -0
- package/dist/esm/shared-ts/src/signing-lanes/rotationParsers.js +1620 -0
- package/dist/esm/shared-ts/src/tenant-root/index.js +2 -0
- package/dist/esm/shared-ts/src/tenant-root/tenantRootIdentity.js +198 -0
- package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +440 -0
- package/dist/esm/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js +85 -0
- package/dist/esm/shared-ts/src/threshold/participants.js +26 -0
- package/dist/esm/shared-ts/src/threshold/sessionPolicy.js +9 -0
- package/dist/esm/shared-ts/src/threshold/signingRootScope.js +40 -0
- package/dist/esm/shared-ts/src/utils/addAuthMethodRegistration.js +104 -0
- package/dist/esm/shared-ts/src/utils/addWalletAuthMethod.js +36 -0
- package/dist/esm/shared-ts/src/utils/base58.js +28 -0
- package/dist/esm/shared-ts/src/utils/base64.js +70 -0
- package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +27 -0
- package/dist/esm/shared-ts/src/utils/digests.js +33 -0
- package/dist/esm/shared-ts/src/utils/domainIds.js +309 -0
- package/dist/esm/shared-ts/src/utils/ecdsaCapabilityActivation.js +34 -0
- package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +46 -0
- package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +38 -0
- package/dist/esm/shared-ts/src/utils/emailOtpRecoveryKey.js +10 -0
- package/dist/esm/shared-ts/src/utils/encoders.js +2 -0
- package/dist/esm/shared-ts/src/utils/errors.js +88 -0
- package/dist/esm/shared-ts/src/utils/evmRpcResults.js +97 -0
- package/dist/esm/shared-ts/src/utils/jsonRpc.js +64 -0
- package/dist/esm/shared-ts/src/utils/keccak.js +150 -0
- package/dist/esm/shared-ts/src/utils/near.js +99 -0
- package/dist/esm/shared-ts/src/utils/nearRpcResults.js +205 -0
- package/dist/esm/shared-ts/src/utils/normalize.js +87 -0
- package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +201 -0
- package/dist/esm/shared-ts/src/utils/registrationIntent.js +1268 -0
- package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +1655 -0
- package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +984 -0
- package/dist/esm/shared-ts/src/utils/routerAbNormalSigningIdentity.js +118 -0
- package/dist/esm/shared-ts/src/utils/routerAbPublicKeyset.js +138 -0
- package/dist/esm/shared-ts/src/utils/routerAbTraceContext.js +36 -0
- package/dist/esm/shared-ts/src/utils/secureRandomId.js +35 -0
- package/dist/esm/shared-ts/src/utils/signingSessionSeal.js +118 -0
- package/dist/esm/shared-ts/src/utils/thresholdEcdsaKeyHandle.js +28 -0
- package/dist/esm/shared-ts/src/utils/validation.js +23 -0
- package/dist/esm/shared-ts/src/utils/walletAddSignerActivation.js +32 -0
- package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +207 -0
- package/dist/esm/shared-ts/src/utils/walletSessionFailure.js +15 -0
- package/dist/esm/shared-ts/src/utils/webauthnDeviceInfo.js +207 -0
- package/dist/esm/shared-ts/src/wallet-recovery/backupAcknowledgement.js +66 -0
- package/dist/esm/shared-ts/src/wallet-recovery/index.js +10 -0
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeIssuance.js +1 -0
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +34 -0
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeReservation.js +80 -0
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodes.js +4 -0
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryKeyId.js +53 -0
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +108 -0
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +157 -0
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.js +233 -0
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryRotation.js +3 -0
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryTarget.js +29 -0
- package/dist/esm/storage/d1Sql.js +85 -0
- package/dist/esm/storage/tenantRoute.js +89 -0
- package/dist/esm/tenant-root.js +5 -0
- package/dist/esm/threshold/session/signingSessionSeal/crypto/cipher.js +204 -0
- package/dist/esm/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.js +87 -0
- package/dist/esm/threshold/session/signingSessionSeal/guards/backends.js +192 -0
- package/dist/esm/threshold/session/signingSessionSeal/guards/index.js +121 -0
- package/dist/esm/threshold/session/signingSessionSeal/idempotency.js +38 -0
- package/dist/esm/threshold/session/signingSessionSeal/idempotencyBackends.js +131 -0
- package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +55 -0
- package/dist/esm/threshold/session/signingSessionSeal/index.js +13 -0
- package/dist/esm/threshold/session/signingSessionSeal/observability/audit.js +38 -0
- package/dist/esm/threshold/session/signingSessionSeal/options.js +54 -0
- package/dist/esm/threshold/session/signingSessionSeal/routesOptions.js +45 -0
- package/dist/esm/threshold/session/signingSessionSeal/service.js +316 -0
- package/dist/esm/threshold/session/signingSessionSeal/signingSessionSeal.types.js +0 -0
- package/dist/esm/threshold/session/signingSessionSeal/transport/express.js +151 -0
- package/dist/esm/threshold/session/signingSessionSeal/transport/fetch.js +106 -0
- package/dist/esm/threshold/session/signingSessionSeal/transport/shared.js +159 -0
- package/dist/esm/threshold/statusCodes.js +39 -0
- package/dist/esm/wasm/evm_crypto/pkg/evm_crypto.js +601 -0
- package/dist/esm/wasm/evm_crypto/pkg/evm_crypto_bg.wasm +0 -0
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +1078 -0
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
- package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker.js +503 -0
- package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker_bg.wasm +0 -0
- package/dist/esm/wasm/shamir3pass_runtime/pkg/shamir3pass_runtime.js +393 -0
- package/dist/esm/wasm/shamir3pass_runtime/pkg/shamir3pass_runtime_bg.wasm +0 -0
- package/dist/esm/wasm/signer.js +2 -0
- package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +147 -0
- package/dist/types/shared-ts/src/authorization/capabilityKinds.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +44 -0
- package/dist/types/shared-ts/src/authorization/index.d.ts +7 -0
- package/dist/types/shared-ts/src/authorization/operationFingerprint.d.ts +39 -0
- package/dist/types/shared-ts/src/authorization/operationFingerprint.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/authorization/walletAuthority.d.ts +168 -0
- package/dist/types/shared-ts/src/authorization/walletAuthority.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/authorization/walletCustodyOperation.d.ts +10 -0
- package/dist/types/shared-ts/src/authorization/walletSessionIssuance.d.ts +28 -0
- package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +3 -0
- package/dist/types/shared-ts/src/device-linking/activeWalletSession.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +71 -0
- package/dist/types/shared-ts/src/device-linking/contracts.d.ts +843 -0
- package/dist/types/shared-ts/src/device-linking/contracts.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/device-linking/delegatedActivationPlan.d.ts +37 -0
- package/dist/types/shared-ts/src/device-linking/digests.d.ts +23 -0
- package/dist/types/shared-ts/src/device-linking/ed25519ExportRoot.d.ts +93 -0
- package/dist/types/shared-ts/src/device-linking/index.d.ts +11 -0
- package/dist/types/shared-ts/src/device-linking/parsers.d.ts +124 -0
- package/dist/types/shared-ts/src/device-linking/requestProof.d.ts +26 -0
- package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +182 -0
- package/dist/types/shared-ts/src/device-linking/walletSessionCredentialDelivery.d.ts +84 -0
- package/dist/types/shared-ts/src/index.d.ts +10 -0
- package/dist/types/shared-ts/src/near/actions.d.ts +141 -0
- package/dist/types/shared-ts/src/near/delegate.d.ts +55 -0
- package/dist/types/shared-ts/src/near/index.d.ts +3 -0
- package/dist/types/shared-ts/src/passkey-custody/ceremonyCommitPayload.d.ts +211 -0
- package/dist/types/shared-ts/src/passkey-custody/credentialActivity.d.ts +49 -0
- package/dist/types/shared-ts/src/passkey-custody/credentialObservations.d.ts +74 -0
- package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +191 -0
- package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +140 -0
- package/dist/types/shared-ts/src/passkey-custody/envelopeIndex.d.ts +29 -0
- package/dist/types/shared-ts/src/passkey-custody/index.d.ts +9 -0
- package/dist/types/shared-ts/src/passkey-custody/kekContext.d.ts +34 -0
- package/dist/types/shared-ts/src/passkey-custody/passkeyCustody.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/passkey-custody/primitives.d.ts +34 -0
- package/dist/types/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.d.ts +27 -0
- package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +91 -0
- package/dist/types/shared-ts/src/signing-lanes/execution.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/signing-lanes/ids.d.ts +18 -0
- package/dist/types/shared-ts/src/signing-lanes/index.d.ts +14 -0
- package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.d.ts +62 -0
- package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.d.ts +30 -0
- package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/signing-lanes/participantDigest.d.ts +48 -0
- package/dist/types/shared-ts/src/signing-lanes/participantDigest.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/signing-lanes/participants.d.ts +89 -0
- package/dist/types/shared-ts/src/signing-lanes/recordParsers.d.ts +128 -0
- package/dist/types/shared-ts/src/signing-lanes/records.d.ts +160 -0
- package/dist/types/shared-ts/src/signing-lanes/records.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +894 -0
- package/dist/types/shared-ts/src/signing-lanes/rotation.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/signing-lanes/rotationDigests.d.ts +32 -0
- package/dist/types/shared-ts/src/signing-lanes/rotationLifecycle.d.ts +99 -0
- package/dist/types/shared-ts/src/signing-lanes/rotationParsers.d.ts +67 -0
- package/dist/types/shared-ts/src/signing-lanes/validation.d.ts +11 -0
- package/dist/types/shared-ts/src/tenant-root/index.d.ts +3 -0
- package/dist/types/shared-ts/src/tenant-root/tenantRootIdentity.d.ts +72 -0
- package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +192 -0
- package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +77 -0
- package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +130 -0
- package/dist/types/shared-ts/src/threshold/index.d.ts +7 -0
- package/dist/types/shared-ts/src/threshold/participants.d.ts +38 -0
- package/dist/types/shared-ts/src/threshold/secp256k1.d.ts +39 -0
- package/dist/types/shared-ts/src/threshold/sessionPolicy.d.ts +5 -0
- package/dist/types/shared-ts/src/threshold/signingRootScope.d.ts +24 -0
- package/dist/types/shared-ts/src/utils/addAuthMethodRegistration.d.ts +63 -0
- package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +295 -0
- package/dist/types/shared-ts/src/utils/addWalletAuthMethod.typecheck.d.ts +11 -0
- package/dist/types/shared-ts/src/utils/authenticatorOptions.d.ts +25 -0
- package/dist/types/shared-ts/src/utils/base58.d.ts +17 -0
- package/dist/types/shared-ts/src/utils/base64.d.ts +53 -0
- package/dist/types/shared-ts/src/utils/bigint.d.ts +3 -0
- package/dist/types/shared-ts/src/utils/canonicalPrimitives.d.ts +12 -0
- package/dist/types/shared-ts/src/utils/digests.d.ts +6 -0
- package/dist/types/shared-ts/src/utils/domainIds.d.ts +140 -0
- package/dist/types/shared-ts/src/utils/domainIds.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/ecdsaCapabilityActivation.d.ts +29 -0
- package/dist/types/shared-ts/src/utils/ecdsaKeyFactsInventory.d.ts +24 -0
- package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +30 -0
- package/dist/types/shared-ts/src/utils/emailOtpRecoveryKey.d.ts +31 -0
- package/dist/types/shared-ts/src/utils/encoders.d.ts +3 -0
- package/dist/types/shared-ts/src/utils/errors.d.ts +44 -0
- package/dist/types/shared-ts/src/utils/evmRpcResults.d.ts +31 -0
- package/dist/types/shared-ts/src/utils/generated/routerAbEd25519YaoCore.d.ts +128 -0
- package/dist/types/shared-ts/src/utils/index.d.ts +34 -0
- package/dist/types/shared-ts/src/utils/jsonRpc.d.ts +30 -0
- package/dist/types/shared-ts/src/utils/keccak.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/near.d.ts +81 -0
- package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +101 -0
- package/dist/types/shared-ts/src/utils/normalize.d.ts +57 -0
- package/dist/types/shared-ts/src/utils/paillier.d.ts +37 -0
- package/dist/types/shared-ts/src/utils/recoveryDomain.d.ts +12 -0
- package/dist/types/shared-ts/src/utils/registrationEstablishedSession.d.ts +85 -0
- package/dist/types/shared-ts/src/utils/registrationIntent.d.ts +621 -0
- package/dist/types/shared-ts/src/utils/registrationIntent.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +715 -0
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivationRefresh.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +339 -0
- package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/routerAbNormalSigningIdentity.d.ts +71 -0
- package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +51 -0
- package/dist/types/shared-ts/src/utils/routerAbTraceContext.d.ts +16 -0
- package/dist/types/shared-ts/src/utils/secureRandomId.d.ts +6 -0
- package/dist/types/shared-ts/src/utils/signerDomain.d.ts +75 -0
- package/dist/types/shared-ts/src/utils/signerDomain.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/signerSlot.d.ts +11 -0
- package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +153 -0
- package/dist/types/shared-ts/src/utils/signingSessionSeal.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/theme.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/thresholdEcdsaKeyHandle.d.ts +11 -0
- package/dist/types/shared-ts/src/utils/validation.d.ts +35 -0
- package/dist/types/shared-ts/src/utils/walletAddSignerActivation.d.ts +23 -0
- package/dist/types/shared-ts/src/utils/walletAuthAuthority.d.ts +150 -0
- package/dist/types/shared-ts/src/utils/walletAuthAuthority.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +106 -0
- package/dist/types/shared-ts/src/utils/walletCapabilityBindings.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/walletSessionFailure.d.ts +13 -0
- package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +48 -0
- package/dist/types/shared-ts/src/wallet-recovery/backupAcknowledgement.d.ts +56 -0
- package/dist/types/shared-ts/src/wallet-recovery/index.d.ts +10 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeAttempt.d.ts +59 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeIssuance.d.ts +37 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeLocator.d.ts +22 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeReservation.d.ts +79 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodes.d.ts +11 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryEnvelopes.d.ts +42 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryKekContext.d.ts +37 -0
- package/dist/types/shared-ts/src/wallet-recovery/recoveryKeyId.d.ts +58 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecovery.typecheck.d.ts +2 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.d.ts +110 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.d.ts +29 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.d.ts +115 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryRotation.d.ts +18 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryTarget.d.ts +12 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryTarget.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/authorization/capabilityPolicy.d.ts +45 -0
- package/dist/types/wallet-server/src/authorization/capabilityPolicy.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/authorization/domain.d.ts +454 -0
- package/dist/types/wallet-server/src/authorization/domain.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/authorization/factorEvidence.d.ts +165 -0
- package/dist/types/wallet-server/src/authorization/factorEvidence.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/authorization/service.d.ts +227 -0
- package/dist/types/wallet-server/src/authorization/vaultProxyUse.d.ts +75 -0
- package/dist/types/wallet-server/src/cloud-host.d.ts +94 -0
- package/dist/types/wallet-server/src/core/AuthService.d.ts +3 -0
- package/dist/types/wallet-server/src/core/EmailOtpRecords.d.ts +33 -0
- package/dist/types/wallet-server/src/core/EmailOtpStores.d.ts +336 -0
- package/dist/types/wallet-server/src/core/IdentityStore.d.ts +57 -0
- package/dist/types/wallet-server/src/core/NearPublicKeyStore.d.ts +58 -0
- package/dist/types/wallet-server/src/core/RegistrationCeremonyStore.d.ts +551 -0
- package/dist/types/wallet-server/src/core/SessionService.d.ts +70 -0
- package/dist/types/wallet-server/src/core/ThresholdService/config.d.ts +23 -0
- package/dist/types/wallet-server/src/core/ThresholdService/ecdsaClientRootProof.d.ts +12 -0
- package/dist/types/wallet-server/src/core/ThresholdService/evmCryptoWasm.d.ts +32 -0
- package/dist/types/wallet-server/src/core/ThresholdService/index.d.ts +4 -0
- package/dist/types/wallet-server/src/core/ThresholdService/kv.d.ts +52 -0
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.d.ts +45 -0
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillLiveSession.d.ts +93 -0
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.d.ts +138 -0
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/internalServiceHttp.d.ts +30 -0
- package/dist/types/wallet-server/src/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.d.ts +17 -0
- package/dist/types/wallet-server/src/core/ThresholdService/routerAbNormalSigningPolicy.d.ts +21 -0
- package/dist/types/wallet-server/src/core/ThresholdService/secureRandomId.d.ts +2 -0
- package/dist/types/wallet-server/src/core/ThresholdService/stores/CloudflareDurableObjectStore.d.ts +128 -0
- package/dist/types/wallet-server/src/core/ThresholdService/stores/EcdsaSigningStore.d.ts +76 -0
- package/dist/types/wallet-server/src/core/ThresholdService/stores/KeyStore.d.ts +39 -0
- package/dist/types/wallet-server/src/core/ThresholdService/stores/SessionStore.d.ts +102 -0
- package/dist/types/wallet-server/src/core/ThresholdService/stores/StoreConfig.d.ts +3 -0
- package/dist/types/wallet-server/src/core/ThresholdService/stores/ThresholdStoreConfig.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/core/ThresholdService/stores/WalletSessionStore.d.ts +98 -0
- package/dist/types/wallet-server/src/core/ThresholdService/thresholdEd25519AuthorityScope.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +193 -0
- package/dist/types/wallet-server/src/core/WalletAuthMethodStore.d.ts +12 -0
- package/dist/types/wallet-server/src/core/WalletStore.d.ts +143 -0
- package/dist/types/wallet-server/src/core/WalletStore.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/core/WebAuthnAuthenticatorStore.d.ts +62 -0
- package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.d.ts +116 -0
- package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.typecheck.d.ts +13 -0
- package/dist/types/wallet-server/src/core/WebAuthnLoginChallengeStore.d.ts +50 -0
- package/dist/types/wallet-server/src/core/WebAuthnSyncChallengeStore.d.ts +50 -0
- package/dist/types/wallet-server/src/core/authService/AuthService.d.ts +493 -0
- package/dist/types/wallet-server/src/core/authService/bytes.d.ts +4 -0
- package/dist/types/wallet-server/src/core/authService/configValues.d.ts +7 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeOperations.d.ts +108 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeProof.d.ts +177 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeVerification.d.ts +46 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpChallenges.d.ts +110 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpConfig.d.ts +34 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpDelivery.d.ts +65 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpEnrollment.d.ts +79 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpGrant.d.ts +42 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpRegistrationEnrollment.d.ts +116 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpSeal.d.ts +35 -0
- package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +70 -0
- package/dist/types/wallet-server/src/core/authService/githubOAuth.d.ts +35 -0
- package/dist/types/wallet-server/src/core/authService/googleEmailOtpErrors.d.ts +2 -0
- package/dist/types/wallet-server/src/core/authService/googleEmailOtpOperations.d.ts +126 -0
- package/dist/types/wallet-server/src/core/authService/googleEmailOtpRegistration.d.ts +172 -0
- package/dist/types/wallet-server/src/core/authService/identity.d.ts +25 -0
- package/dist/types/wallet-server/src/core/authService/identityOperations.d.ts +19 -0
- package/dist/types/wallet-server/src/core/authService/nearAccountOperations.d.ts +55 -0
- package/dist/types/wallet-server/src/core/authService/nearPrivateKeySigning.d.ts +16 -0
- package/dist/types/wallet-server/src/core/authService/nearPublicKeyMetadata.d.ts +43 -0
- package/dist/types/wallet-server/src/core/authService/nearTransactions.d.ts +49 -0
- package/dist/types/wallet-server/src/core/authService/oidcVerification.d.ts +65 -0
- package/dist/types/wallet-server/src/core/authService/portableCrypto.d.ts +3 -0
- package/dist/types/wallet-server/src/core/authService/rateLimits.d.ts +30 -0
- package/dist/types/wallet-server/src/core/authService/record.d.ts +2 -0
- package/dist/types/wallet-server/src/core/authService/registrationThresholdHelpers.d.ts +37 -0
- package/dist/types/wallet-server/src/core/authService/runtime.d.ts +20 -0
- package/dist/types/wallet-server/src/core/authService/signerWasmUrls.d.ts +3 -0
- package/dist/types/wallet-server/src/core/authService/storeRegistry.d.ts +58 -0
- package/dist/types/wallet-server/src/core/authService/thresholdEcdsaKeyInventory.d.ts +72 -0
- package/dist/types/wallet-server/src/core/authService/thresholdRuntimePolicy.d.ts +4 -0
- package/dist/types/wallet-server/src/core/authService/thresholdStoreSummary.d.ts +3 -0
- package/dist/types/wallet-server/src/core/authService/walletRegistrationPlanning.d.ts +19 -0
- package/dist/types/wallet-server/src/core/authService/wasm.d.ts +12 -0
- package/dist/types/wallet-server/src/core/authService/webauthn.d.ts +207 -0
- package/dist/types/wallet-server/src/core/authService/webauthnAuthority.d.ts +5 -0
- package/dist/types/wallet-server/src/core/authService/webauthnOidcHelpers.d.ts +52 -0
- package/dist/types/wallet-server/src/core/authService/webauthnWalletBinding.d.ts +48 -0
- package/dist/types/wallet-server/src/core/config.d.ts +13 -0
- package/dist/types/wallet-server/src/core/d1IdentityStore.d.ts +44 -0
- package/dist/types/wallet-server/src/core/d1WalletAuthMethodStore.d.ts +214 -0
- package/dist/types/wallet-server/src/core/d1WalletStore.d.ts +108 -0
- package/dist/types/wallet-server/src/core/defaultConfigsServer.d.ts +5 -0
- package/dist/types/wallet-server/src/core/deviceLinking/index.d.ts +5 -0
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEd25519ExportRoot.d.ts +36 -0
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEmailOtpGrant.d.ts +87 -0
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceManagement.d.ts +137 -0
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSession.d.ts +462 -0
- package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +55 -0
- package/dist/types/wallet-server/src/core/errors.d.ts +10 -0
- package/dist/types/wallet-server/src/core/hostedAccountIds.d.ts +31 -0
- package/dist/types/wallet-server/src/core/keyMaterialBrands.d.ts +28 -0
- package/dist/types/wallet-server/src/core/keyMaterialBrands.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/core/logger.d.ts +21 -0
- package/dist/types/wallet-server/src/core/nearKeys.d.ts +3 -0
- package/dist/types/wallet-server/src/core/nearRelayerAccountProvisioning.d.ts +78 -0
- package/dist/types/wallet-server/src/core/nearSignerWasmRuntime.d.ts +3 -0
- package/dist/types/wallet-server/src/core/registrationContracts.d.ts +747 -0
- package/dist/types/wallet-server/src/core/registrationRequests.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbEcdsaPresignRuntime.d.ts +53 -0
- package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbNormalSigningRuntime.d.ts +71 -0
- package/dist/types/wallet-server/src/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.d.ts +28 -0
- package/dist/types/wallet-server/src/core/routerAbSigning/createRouterAbSigningRuntimes.d.ts +16 -0
- package/dist/types/wallet-server/src/core/rpcClients/near/NearClient.d.ts +134 -0
- package/dist/types/wallet-server/src/core/sessionValidation.d.ts +9 -0
- package/dist/types/wallet-server/src/core/signingLanes/LaneAggregateRevocationApplicationService.d.ts +35 -0
- package/dist/types/wallet-server/src/core/signingLanes/LaneEffectJournalStore.d.ts +63 -0
- package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentActivation.d.ts +13 -0
- package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentRevocation.d.ts +24 -0
- package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleApplicationService.d.ts +141 -0
- package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleStore.d.ts +229 -0
- package/dist/types/wallet-server/src/core/signingLanes/SigningLaneStore.d.ts +15 -0
- package/dist/types/wallet-server/src/core/signingLanes/WalletExecutionLaneProjection.d.ts +59 -0
- package/dist/types/wallet-server/src/core/signingLanes/WalletKeyStore.d.ts +13 -0
- package/dist/types/wallet-server/src/core/signingLanes/ecdsaServerRetirement.d.ts +58 -0
- package/dist/types/wallet-server/src/core/signingLanes/ed25519ServerRetirement.d.ts +30 -0
- package/dist/types/wallet-server/src/core/signingLanes/index.d.ts +11 -0
- package/dist/types/wallet-server/src/core/signingLanes/signingWorkerLaneMaterialIdentity.d.ts +21 -0
- package/dist/types/wallet-server/src/core/signingMaterial/ordinaryInactiveSignerMaterialReservation.d.ts +155 -0
- package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.d.ts +442 -0
- package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.typecheck.d.ts +58 -0
- package/dist/types/wallet-server/src/core/thresholdEcdsaChainTarget.d.ts +15 -0
- package/dist/types/wallet-server/src/core/types.d.ts +757 -0
- package/dist/types/wallet-server/src/core/utils.d.ts +3 -0
- package/dist/types/wallet-server/src/delegateAction/index.d.ts +88 -0
- package/dist/types/wallet-server/src/hosted-wallet-gateway-worker.d.ts +10 -0
- package/dist/types/wallet-server/src/hosted-wallet-gateway.d.ts +126 -0
- package/dist/types/wallet-server/src/index.d.ts +34 -0
- package/dist/types/wallet-server/src/local-hosted-wallet-gateway-worker.d.ts +13 -0
- package/dist/types/wallet-server/src/router/auth/authRequestValidation.d.ts +97 -0
- package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +142 -0
- package/dist/types/wallet-server/src/router/auth/routerApiCredentialAuth.d.ts +26 -0
- package/dist/types/wallet-server/src/router/auth/routerApiKeyAuth.d.ts +16 -0
- package/dist/types/wallet-server/src/router/auth/walletSessionFailure.d.ts +14 -0
- package/dist/types/wallet-server/src/router/auth/webAuthnCredentialCodecs.d.ts +20 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.d.ts +28 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthConfig.d.ts +192 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthService.d.ts +13 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +174 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1VaultProxyStore.d.ts +13 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/walletSessionAuthorityProjection.d.ts +24 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.d.ts +241 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEd25519ExportRootStore.d.ts +23 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.d.ts +32 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.d.ts +118 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceManagementService.d.ts +22 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.d.ts +80 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.d.ts +29 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.d.ts +17 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.d.ts +37 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionService.d.ts +12 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.d.ts +149 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.d.ts +38 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetAuthenticatorStore.d.ts +19 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.d.ts +220 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.d.ts +88 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.d.ts +54 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkSourceReader.d.ts +23 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/index.d.ts +15 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.d.ts +33 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoProductRegistrationPartitionedStateStore.d.ts +6 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoWalletSigner.d.ts +27 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.d.ts +80 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.d.ts +48 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.d.ts +64 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.d.ts +126 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpDeliveryRuntime.d.ts +22 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.d.ts +68 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.d.ts +15 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.d.ts +37 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +186 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.d.ts +45 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.d.ts +124 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.d.ts +24 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.d.ts +51 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.d.ts +69 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.d.ts +57 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityRecords.d.ts +38 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityService.d.ts +31 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1NearPublicKeyStore.d.ts +30 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/d1OidcBoundary.d.ts +60 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/d1OidcVerificationService.d.ts +39 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.d.ts +335 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.d.ts +448 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.d.ts +256 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpAttemptStore.d.ts +32 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.d.ts +116 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.d.ts +180 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1EvmFamilyEcdsaRegistrationBranch.d.ts +24 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.d.ts +86 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.d.ts +121 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.d.ts +84 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationIntentService.d.ts +31 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.d.ts +49 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationService.d.ts +369 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetup.d.ts +106 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.d.ts +104 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.d.ts +70 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.d.ts +26 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.d.ts +4 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.d.ts +4 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.d.ts +25 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.d.ts +20 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.d.ts +13 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.d.ts +51 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLockStore.d.ts +28 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.d.ts +5 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneRecords.d.ts +107 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/index.d.ts +10 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.d.ts +118 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.d.ts +114 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.d.ts +90 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodService.d.ts +359 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorityStore.d.ts +143 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.d.ts +42 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnRecords.d.ts +135 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +89 -0
- package/dist/types/wallet-server/src/router/cloudflare/durableObjects/thresholdStore.d.ts +19 -0
- package/dist/types/wallet-server/src/router/cloudflare/durableObjects/versionedJsonRecordStore.d.ts +32 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/cloudflare.types.d.ts +30 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/cloudflareSignerWasm.d.ts +2 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/createCloudflareRouter.d.ts +5 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/createSelfHostedCloudflareSigningWorker.d.ts +23 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/ed25519SessionAdapter.d.ts +16 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/environment.d.ts +5 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/routerAbPrewarm.d.ts +9 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/routerAbServiceBindings.d.ts +11 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/sessionAdapterRuntime.d.ts +28 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/staticWalletConsoleBinding.d.ts +27 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/tenantRootCreationGrant.d.ts +24 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOps.d.ts +143 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOpsClient.d.ts +20 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleTenantRootLineage.d.ts +7 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletControlOps.d.ts +21 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletGateway.d.ts +30 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRuntimeOps.d.ts +64 -0
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRuntimeOpsHandler.d.ts +3 -0
- package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.d.ts +217 -0
- package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.d.ts +73 -0
- package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.d.ts +100 -0
- package/dist/types/wallet-server/src/router/cloudflare/signingLanes/index.d.ts +4 -0
- package/dist/types/wallet-server/src/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.d.ts +6 -0
- package/dist/types/wallet-server/src/router/cloudflare-adaptor.d.ts +75 -0
- package/dist/types/wallet-server/src/router/domains/ecdsa/routerAbEcdsaStrictRegistration.d.ts +199 -0
- package/dist/types/wallet-server/src/router/domains/ecdsa/thresholdEcdsaRequestValidation.d.ts +32 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.d.ts +172 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.d.ts +156 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.d.ts +59 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPersistence.d.ts +47 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.d.ts +29 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.d.ts +20 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.d.ts +271 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.d.ts +12 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.d.ts +509 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryActivation.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.d.ts +14 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryWalletSessionAuthorization.d.ts +20 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.d.ts +56 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.d.ts +200 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.d.ts +70 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.d.ts +73 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.d.ts +9 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.d.ts +131 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.d.ts +62 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.d.ts +17 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.d.ts +178 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.d.ts +19 -0
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpExportPolicy.d.ts +32 -0
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRequestValidation.d.ts +13 -0
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRouteHandlers.d.ts +35 -0
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpSessionRouteHelpers.d.ts +134 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/envelopeRevocationAdmission.d.ts +31 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.d.ts +85 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.d.ts +42 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/registrationCustodyOutcome.d.ts +38 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/verifiedCustodyFactor.d.ts +35 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationAdmission.d.ts +56 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationCommit.d.ts +65 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryAttempt.d.ts +59 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryFinalization.d.ts +81 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryKeyManifest.d.ts +184 -0
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryRotation.d.ts +31 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.d.ts +32 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.d.ts +48 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +909 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/walletExecutionAdmission.d.ts +104 -0
- package/dist/types/wallet-server/src/router/domains/syncAccount/syncAccountRequestValidation.d.ts +30 -0
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootCustodyLineage.d.ts +14 -0
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.d.ts +35 -0
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.d.ts +35 -0
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootIdentityResolution.d.ts +56 -0
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationInputs.d.ts +78 -0
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationRoutes.d.ts +91 -0
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationSetupPayload.d.ts +105 -0
- package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.d.ts +39 -0
- package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRouteHandlers.d.ts +172 -0
- package/dist/types/wallet-server/src/router/express-adaptor.d.ts +22 -0
- package/dist/types/wallet-server/src/router/framework/apiCredentialPorts.d.ts +82 -0
- package/dist/types/wallet-server/src/router/framework/applyRouteMetering.d.ts +23 -0
- package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +1392 -0
- package/dist/types/wallet-server/src/router/framework/enforceRoutePolicy.d.ts +48 -0
- package/dist/types/wallet-server/src/router/framework/http.d.ts +12 -0
- package/dist/types/wallet-server/src/router/framework/logger.d.ts +5 -0
- package/dist/types/wallet-server/src/router/framework/modules.d.ts +17 -0
- package/dist/types/wallet-server/src/router/framework/ror/index.d.ts +7 -0
- package/dist/types/wallet-server/src/router/framework/ror/normalize.d.ts +14 -0
- package/dist/types/wallet-server/src/router/framework/ror/options.d.ts +9 -0
- package/dist/types/wallet-server/src/router/framework/ror/provider.d.ts +17 -0
- package/dist/types/wallet-server/src/router/framework/ror/staticProvider.d.ts +11 -0
- package/dist/types/wallet-server/src/router/framework/routeAuthPolicy.d.ts +34 -0
- package/dist/types/wallet-server/src/router/framework/routeDefinitions.d.ts +27 -0
- package/dist/types/wallet-server/src/router/framework/routeDefinitions.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/framework/routeExecutionContext.d.ts +29 -0
- package/dist/types/wallet-server/src/router/framework/routeExtensions.d.ts +27 -0
- package/dist/types/wallet-server/src/router/framework/routeMeteringPolicy.d.ts +17 -0
- package/dist/types/wallet-server/src/router/framework/routeRequestValidation.d.ts +5 -0
- package/dist/types/wallet-server/src/router/framework/routeResponses.d.ts +17 -0
- package/dist/types/wallet-server/src/router/framework/routerApi.d.ts +221 -0
- package/dist/types/wallet-server/src/router/framework/routerApiRouteSurface.d.ts +14 -0
- package/dist/types/wallet-server/src/router/framework/routerApiWebhooks.d.ts +12 -0
- package/dist/types/wallet-server/src/router/framework/runtimeSnapshotConsumer.d.ts +28 -0
- package/dist/types/wallet-server/src/router/framework/versionedJsonRecordStore.d.ts +20 -0
- package/dist/types/wallet-server/src/router/ror-adaptor.d.ts +3 -0
- package/dist/types/wallet-server/src/router/transport/fetch/createFetchRouter.d.ts +8 -0
- package/dist/types/wallet-server/src/router/transport/fetch/fetchRouter.types.d.ts +23 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/auth.d.ts +3 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinking.d.ts +202 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.d.ts +92 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceManagement.d.ts +29 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/health.d.ts +4 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/nearPublicKeys.d.ts +3 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/normalSigningRouterProxy.d.ts +33 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/passkeyCustody.d.ts +66 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/sessions.d.ts +31 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/syncAccount.d.ts +3 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/syncAccountBootstrap.d.ts +128 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +87 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEd25519.d.ts +47 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/walletExecutionLanePreflight.d.ts +4 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/walletRegistration.d.ts +3 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/webauthnAuthenticators.d.ts +3 -0
- package/dist/types/wallet-server/src/router/transport/fetch/routes/wellKnown.d.ts +3 -0
- package/dist/types/wallet-server/src/storage/d1Sql.d.ts +14 -0
- package/dist/types/wallet-server/src/storage/tenantRoute.d.ts +136 -0
- package/dist/types/wallet-server/src/storage/tenantRoute.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/tenant-root.d.ts +5 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/crypto/cipher.d.ts +45 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.d.ts +16 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/guards/backends.d.ts +23 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/guards/index.d.ts +46 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotency.d.ts +3 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotencyBackends.d.ts +24 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotencyRecords.d.ts +22 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/index.d.ts +23 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/observability/audit.d.ts +9 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/options.d.ts +9 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/routesOptions.d.ts +20 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/service.d.ts +3 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/signingSessionSeal.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/signingSessionSeal.types.d.ts +148 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/transport/express.d.ts +12 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/transport/fetch.d.ts +13 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/transport/shared.d.ts +24 -0
- package/dist/types/wallet-server/src/threshold/statusCodes.d.ts +10 -0
- package/dist/types/wallet-server/src/wasm/signer.d.ts +8 -0
- package/migrations/d1-signer/0001_signer_d1_initial.sql +2486 -0
- package/migrations/d1-signer/0002_signer_post_103_canonical_upgrade.sql +1576 -0
- package/migrations/d1-signer/0003_r107_wallet_authorization.sql +299 -0
- package/migrations/d1-signer/0004_remove_legacy_email_recovery.sql +14 -0
- package/migrations/d1-signer/0005_r103p8_linked_owner_auth_bindings.sql +92 -0
- package/migrations/d1-signer/0006_r103p8_linked_device_custody_transfers.sql +77 -0
- package/migrations/d1-signer/0007_r103p8_wallet_session_auth_method_provenance.sql +18 -0
- package/migrations/d1-signer/0008_r103p8_linked_device_session_cas_guard.sql +35 -0
- package/migrations/d1-signer/0009_linked_device_email_otp.sql +405 -0
- package/migrations/d1-signer/0010_linked_device_session_target_factor.sql +78 -0
- package/migrations/d1-signer/0011_linked_device_ed25519_export_root.sql +9 -0
- package/migrations/d1-signer/0012_versioned_json_cas_guard.sql +3 -0
- package/migrations/d1-signer/0013_linked_device_export_authorization.sql +133 -0
- package/migrations/d1-signer/0014_wallet_recovery_code_locators.sql +19 -0
- package/migrations/d1-signer/0015_r103e_authority_baseline.sql +259 -0
- package/migrations/d1-signer/0016_r103e_wallet_session_authorizations_v2.sql +133 -0
- package/migrations/d1-signer/0017_r103e_link_session_state.sql +83 -0
- package/migrations/d1-signer/0018_r103e_linked_device_authority_installations.sql +34 -0
- package/migrations/d1-signer/0019_r103e_email_otp_device_methods.sql +3 -0
- package/migrations/d1-signer/0020_r103e_wallet_session_operation_credentials.sql +12 -0
- package/migrations/d1-signer/0021_linked_device_source_contribution_transcripts.sql +64 -0
- package/migrations/d1-signer/0022_r109c_multi_auth_email_cardinality.sql +118 -0
- package/migrations/d1-signer/0023_r109d_first_email_linked_device.sql +111 -0
- package/migrations/d1-signer/0024_r103f_v2_authorized_operation_claim.sql +99 -0
- package/migrations/d1-signer/0025_r109d_email_enrollment_wallet_cardinality.sql +57 -0
- package/migrations/d1-signer/0026_r115_wallet_recovery_authority_provenance.sql +253 -0
- package/migrations/d1-signer/0027_r115_email_otp_recovery_bootstrap.sql +90 -0
- package/migrations/d1-signer/0028_r103f_phase1_additive_schema_bridge.sql +1119 -0
- package/migrations/d1-signer/0029_r103f_phase0_registration_replay_tokens.sql +135 -0
- package/migrations/d1-signer/0030_r103f_wallet_session_client_capability.sql +17 -0
- package/migrations/d1-signer/0031_r103f_delete_registration_replay_tokens.sql +4 -0
- package/migrations/d1-signer/0032_r103f_exact_authorized_operation_enforcement.sql +149 -0
- package/migrations/d1-signer/0033_r103f_linked_delivery_recipient.sql +6 -0
- package/migrations/d1-signer/0034_r103f_exact_wallet_session_cutover.sql +743 -0
- package/migrations/d1-signer/0035_r103f_linked_delivery_acknowledgement_cleanup_window.sql +413 -0
- package/package.json +132 -0
- package/scripts/d1-local-migrate-signer.mjs +148 -0
- package/src/README.md +75 -0
- package/wrangler.local-hosted-wallet-gateway.toml +37 -0
|
@@ -0,0 +1,1576 @@
|
|
|
1
|
+
-- Forward bridge from the last deployed signer schema to the post-103 canonical schema.
|
|
2
|
+
-- This migration is safe after the canonical 0001 baseline and preserves deployed rows.
|
|
3
|
+
|
|
4
|
+
DROP TRIGGER IF EXISTS "authorized_operation_audit_claim";
|
|
5
|
+
DROP TRIGGER IF EXISTS "authorized_operation_audit_complete";
|
|
6
|
+
DROP TRIGGER IF EXISTS "authorized_operation_claim_atomic";
|
|
7
|
+
DROP TRIGGER IF EXISTS "authorized_operation_complete_atomic";
|
|
8
|
+
DROP TRIGGER IF EXISTS "authorized_operation_grant_shape_guard";
|
|
9
|
+
DROP TRIGGER IF EXISTS "authorized_operation_linked_grant_claim_atomic";
|
|
10
|
+
DROP TRIGGER IF EXISTS "authorized_operation_owner_grant_claim_atomic";
|
|
11
|
+
DROP TRIGGER IF EXISTS "authorized_operation_step_up_claim_atomic";
|
|
12
|
+
|
|
13
|
+
DROP TABLE IF EXISTS "authorized_operation_audit_events_post_103_upgrade";
|
|
14
|
+
CREATE TABLE "authorized_operation_audit_events_post_103_upgrade" (
|
|
15
|
+
namespace TEXT NOT NULL,
|
|
16
|
+
tenant_id TEXT NOT NULL,
|
|
17
|
+
audit_event_id TEXT NOT NULL,
|
|
18
|
+
authorized_operation_id TEXT NOT NULL,
|
|
19
|
+
operation_fingerprint_digest TEXT NOT NULL,
|
|
20
|
+
authorization_source_kind TEXT NOT NULL,
|
|
21
|
+
authorization_id TEXT,
|
|
22
|
+
evidence_set_digest TEXT,
|
|
23
|
+
quota_id TEXT,
|
|
24
|
+
material_activation_id TEXT,
|
|
25
|
+
result_kind TEXT NOT NULL,
|
|
26
|
+
claimed_at_ms INTEGER NOT NULL,
|
|
27
|
+
completed_at_ms INTEGER, authorization_grant_kind TEXT, material_activation_capability TEXT, material_activation_owner TEXT, material_activation_key_binding TEXT, material_activation_lifecycle_binding TEXT, material_activation_signing_worker TEXT, linked_wallet_id TEXT, linked_enrollment_id TEXT, linked_device_id TEXT, linked_wallet_key_id TEXT, linked_lane_id TEXT, linked_lane_share_epoch TEXT, linked_revocation_epoch INTEGER, linked_scope_org_id TEXT, linked_scope_project_id TEXT, linked_scope_env_id TEXT,
|
|
28
|
+
PRIMARY KEY (namespace, tenant_id, audit_event_id),
|
|
29
|
+
UNIQUE (namespace, tenant_id, authorized_operation_id),
|
|
30
|
+
CHECK (authorization_source_kind IN ('authorization_grant', 'verified_step_up')),
|
|
31
|
+
CHECK (
|
|
32
|
+
(authorization_source_kind = 'authorization_grant'
|
|
33
|
+
AND authorization_id IS NOT NULL
|
|
34
|
+
AND evidence_set_digest IS NULL)
|
|
35
|
+
OR (authorization_source_kind = 'verified_step_up'
|
|
36
|
+
AND authorization_id IS NULL
|
|
37
|
+
AND evidence_set_digest IS NOT NULL)
|
|
38
|
+
),
|
|
39
|
+
CHECK (result_kind IN ('pending', 'succeeded', 'failed_before_side_effect', 'failed_after_side_effect')),
|
|
40
|
+
CHECK (
|
|
41
|
+
(result_kind = 'pending' AND completed_at_ms IS NULL)
|
|
42
|
+
OR (result_kind != 'pending' AND completed_at_ms IS NOT NULL)
|
|
43
|
+
)
|
|
44
|
+
);
|
|
45
|
+
INSERT INTO "authorized_operation_audit_events_post_103_upgrade" (
|
|
46
|
+
"namespace",
|
|
47
|
+
"tenant_id",
|
|
48
|
+
"audit_event_id",
|
|
49
|
+
"authorized_operation_id",
|
|
50
|
+
"operation_fingerprint_digest",
|
|
51
|
+
"authorization_source_kind",
|
|
52
|
+
"authorization_id",
|
|
53
|
+
"evidence_set_digest",
|
|
54
|
+
"quota_id",
|
|
55
|
+
"material_activation_id",
|
|
56
|
+
"result_kind",
|
|
57
|
+
"claimed_at_ms",
|
|
58
|
+
"completed_at_ms",
|
|
59
|
+
"authorization_grant_kind",
|
|
60
|
+
"material_activation_capability",
|
|
61
|
+
"material_activation_owner",
|
|
62
|
+
"material_activation_key_binding",
|
|
63
|
+
"material_activation_lifecycle_binding",
|
|
64
|
+
"material_activation_signing_worker",
|
|
65
|
+
"linked_wallet_id",
|
|
66
|
+
"linked_enrollment_id",
|
|
67
|
+
"linked_device_id",
|
|
68
|
+
"linked_wallet_key_id",
|
|
69
|
+
"linked_lane_id",
|
|
70
|
+
"linked_lane_share_epoch",
|
|
71
|
+
"linked_revocation_epoch",
|
|
72
|
+
"linked_scope_org_id",
|
|
73
|
+
"linked_scope_project_id",
|
|
74
|
+
"linked_scope_env_id"
|
|
75
|
+
) SELECT
|
|
76
|
+
"namespace",
|
|
77
|
+
"tenant_id",
|
|
78
|
+
"audit_event_id",
|
|
79
|
+
"authorized_operation_id",
|
|
80
|
+
"operation_fingerprint_digest",
|
|
81
|
+
"authorization_source_kind",
|
|
82
|
+
"authorization_id",
|
|
83
|
+
"evidence_set_digest",
|
|
84
|
+
"quota_id",
|
|
85
|
+
"material_activation_id",
|
|
86
|
+
"result_kind",
|
|
87
|
+
"claimed_at_ms",
|
|
88
|
+
"completed_at_ms",
|
|
89
|
+
CASE
|
|
90
|
+
WHEN authorization_source_kind = 'authorization_grant'
|
|
91
|
+
THEN 'wallet_session_authorization'
|
|
92
|
+
ELSE NULL
|
|
93
|
+
END,
|
|
94
|
+
NULL,
|
|
95
|
+
NULL,
|
|
96
|
+
NULL,
|
|
97
|
+
NULL,
|
|
98
|
+
NULL,
|
|
99
|
+
NULL,
|
|
100
|
+
NULL,
|
|
101
|
+
NULL,
|
|
102
|
+
NULL,
|
|
103
|
+
NULL,
|
|
104
|
+
NULL,
|
|
105
|
+
NULL,
|
|
106
|
+
NULL,
|
|
107
|
+
NULL,
|
|
108
|
+
NULL
|
|
109
|
+
FROM "authorized_operation_audit_events";
|
|
110
|
+
DROP TABLE "authorized_operation_audit_events";
|
|
111
|
+
ALTER TABLE "authorized_operation_audit_events_post_103_upgrade" RENAME TO "authorized_operation_audit_events";
|
|
112
|
+
|
|
113
|
+
DROP TABLE IF EXISTS "authorized_operations_post_103_upgrade";
|
|
114
|
+
CREATE TABLE "authorized_operations_post_103_upgrade" (
|
|
115
|
+
namespace TEXT NOT NULL,
|
|
116
|
+
tenant_id TEXT NOT NULL,
|
|
117
|
+
authorized_operation_id TEXT NOT NULL,
|
|
118
|
+
audit_event_id TEXT NOT NULL,
|
|
119
|
+
principal_id TEXT NOT NULL,
|
|
120
|
+
capability_id TEXT NOT NULL,
|
|
121
|
+
capability_kind TEXT NOT NULL,
|
|
122
|
+
operation_kind TEXT NOT NULL,
|
|
123
|
+
operation_id TEXT NOT NULL,
|
|
124
|
+
operation_fingerprint_digest TEXT NOT NULL,
|
|
125
|
+
lane_digest TEXT NOT NULL,
|
|
126
|
+
intent_digest TEXT NOT NULL,
|
|
127
|
+
display_digest TEXT NOT NULL,
|
|
128
|
+
authorization_source_kind TEXT NOT NULL,
|
|
129
|
+
authorization_id TEXT,
|
|
130
|
+
evidence_set_digest TEXT,
|
|
131
|
+
quota_id TEXT,
|
|
132
|
+
quota_kind TEXT NOT NULL,
|
|
133
|
+
lifecycle_kind TEXT NOT NULL,
|
|
134
|
+
result_kind TEXT NOT NULL,
|
|
135
|
+
result_digest TEXT,
|
|
136
|
+
result_status INTEGER,
|
|
137
|
+
result_content_type TEXT,
|
|
138
|
+
result_body_text TEXT,
|
|
139
|
+
claimed_at_ms INTEGER NOT NULL,
|
|
140
|
+
completed_at_ms INTEGER,
|
|
141
|
+
material_activation_id TEXT, authorization_grant_kind TEXT, material_activation_capability TEXT, material_activation_owner TEXT, material_activation_key_binding TEXT, material_activation_lifecycle_binding TEXT, material_activation_signing_worker TEXT, linked_wallet_id TEXT, linked_enrollment_id TEXT, linked_device_id TEXT, linked_wallet_key_id TEXT, linked_lane_id TEXT, linked_lane_share_epoch TEXT, linked_revocation_epoch INTEGER, linked_scope_org_id TEXT, linked_scope_project_id TEXT, linked_scope_env_id TEXT,
|
|
142
|
+
PRIMARY KEY (namespace, tenant_id, authorized_operation_id),
|
|
143
|
+
UNIQUE (namespace, tenant_id, operation_fingerprint_digest),
|
|
144
|
+
CHECK (authorization_source_kind IN ('authorization_grant', 'verified_step_up')),
|
|
145
|
+
CHECK (
|
|
146
|
+
(authorization_source_kind = 'authorization_grant'
|
|
147
|
+
AND authorization_id IS NOT NULL
|
|
148
|
+
AND evidence_set_digest IS NULL)
|
|
149
|
+
OR (authorization_source_kind = 'verified_step_up'
|
|
150
|
+
AND authorization_id IS NULL
|
|
151
|
+
AND evidence_set_digest IS NOT NULL)
|
|
152
|
+
),
|
|
153
|
+
CHECK (quota_kind IN ('consume_reusable_wallet_session', 'quota_neutral')),
|
|
154
|
+
CHECK (
|
|
155
|
+
(quota_kind = 'consume_reusable_wallet_session'
|
|
156
|
+
AND authorization_source_kind = 'authorization_grant'
|
|
157
|
+
AND operation_kind NOT IN ('near.export_key', 'evm.export_key')
|
|
158
|
+
AND capability_kind != 'vault_access')
|
|
159
|
+
OR (quota_kind = 'quota_neutral'
|
|
160
|
+
AND (
|
|
161
|
+
operation_kind IN ('near.export_key', 'evm.export_key')
|
|
162
|
+
OR capability_kind = 'vault_access'
|
|
163
|
+
OR authorization_source_kind = 'verified_step_up'
|
|
164
|
+
))
|
|
165
|
+
),
|
|
166
|
+
CHECK (
|
|
167
|
+
(quota_kind = 'consume_reusable_wallet_session' AND quota_id IS NOT NULL)
|
|
168
|
+
OR (quota_kind = 'quota_neutral' AND quota_id IS NULL)
|
|
169
|
+
),
|
|
170
|
+
CHECK (lifecycle_kind IN ('claimed', 'completed')),
|
|
171
|
+
CHECK (
|
|
172
|
+
(lifecycle_kind = 'claimed'
|
|
173
|
+
AND result_kind = 'pending'
|
|
174
|
+
AND result_digest IS NULL
|
|
175
|
+
AND result_status IS NULL
|
|
176
|
+
AND result_content_type IS NULL
|
|
177
|
+
AND result_body_text IS NULL
|
|
178
|
+
AND completed_at_ms IS NULL)
|
|
179
|
+
OR (lifecycle_kind = 'completed'
|
|
180
|
+
AND result_kind IN ('succeeded', 'failed_before_side_effect', 'failed_after_side_effect')
|
|
181
|
+
AND result_digest IS NOT NULL
|
|
182
|
+
AND result_status BETWEEN 100 AND 599
|
|
183
|
+
AND result_content_type IS NOT NULL
|
|
184
|
+
AND trim(result_content_type) = result_content_type
|
|
185
|
+
AND length(result_content_type) BETWEEN 1 AND 255
|
|
186
|
+
AND result_body_text IS NOT NULL
|
|
187
|
+
AND length(CAST(result_body_text AS BLOB)) <= 65536
|
|
188
|
+
AND completed_at_ms IS NOT NULL)
|
|
189
|
+
)
|
|
190
|
+
);
|
|
191
|
+
INSERT INTO "authorized_operations_post_103_upgrade" (
|
|
192
|
+
"namespace",
|
|
193
|
+
"tenant_id",
|
|
194
|
+
"authorized_operation_id",
|
|
195
|
+
"audit_event_id",
|
|
196
|
+
"principal_id",
|
|
197
|
+
"capability_id",
|
|
198
|
+
"capability_kind",
|
|
199
|
+
"operation_kind",
|
|
200
|
+
"operation_id",
|
|
201
|
+
"operation_fingerprint_digest",
|
|
202
|
+
"lane_digest",
|
|
203
|
+
"intent_digest",
|
|
204
|
+
"display_digest",
|
|
205
|
+
"authorization_source_kind",
|
|
206
|
+
"authorization_id",
|
|
207
|
+
"evidence_set_digest",
|
|
208
|
+
"quota_id",
|
|
209
|
+
"quota_kind",
|
|
210
|
+
"lifecycle_kind",
|
|
211
|
+
"result_kind",
|
|
212
|
+
"result_digest",
|
|
213
|
+
"result_status",
|
|
214
|
+
"result_content_type",
|
|
215
|
+
"result_body_text",
|
|
216
|
+
"claimed_at_ms",
|
|
217
|
+
"completed_at_ms",
|
|
218
|
+
"material_activation_id",
|
|
219
|
+
"authorization_grant_kind",
|
|
220
|
+
"material_activation_capability",
|
|
221
|
+
"material_activation_owner",
|
|
222
|
+
"material_activation_key_binding",
|
|
223
|
+
"material_activation_lifecycle_binding",
|
|
224
|
+
"material_activation_signing_worker",
|
|
225
|
+
"linked_wallet_id",
|
|
226
|
+
"linked_enrollment_id",
|
|
227
|
+
"linked_device_id",
|
|
228
|
+
"linked_wallet_key_id",
|
|
229
|
+
"linked_lane_id",
|
|
230
|
+
"linked_lane_share_epoch",
|
|
231
|
+
"linked_revocation_epoch",
|
|
232
|
+
"linked_scope_org_id",
|
|
233
|
+
"linked_scope_project_id",
|
|
234
|
+
"linked_scope_env_id"
|
|
235
|
+
) SELECT
|
|
236
|
+
"namespace",
|
|
237
|
+
"tenant_id",
|
|
238
|
+
"authorized_operation_id",
|
|
239
|
+
"audit_event_id",
|
|
240
|
+
"principal_id",
|
|
241
|
+
"capability_id",
|
|
242
|
+
"capability_kind",
|
|
243
|
+
"operation_kind",
|
|
244
|
+
"operation_id",
|
|
245
|
+
"operation_fingerprint_digest",
|
|
246
|
+
"lane_digest",
|
|
247
|
+
"intent_digest",
|
|
248
|
+
"display_digest",
|
|
249
|
+
"authorization_source_kind",
|
|
250
|
+
"authorization_id",
|
|
251
|
+
"evidence_set_digest",
|
|
252
|
+
"quota_id",
|
|
253
|
+
"quota_kind",
|
|
254
|
+
"lifecycle_kind",
|
|
255
|
+
"result_kind",
|
|
256
|
+
"result_digest",
|
|
257
|
+
"result_status",
|
|
258
|
+
"result_content_type",
|
|
259
|
+
"result_body_text",
|
|
260
|
+
"claimed_at_ms",
|
|
261
|
+
"completed_at_ms",
|
|
262
|
+
"material_activation_id",
|
|
263
|
+
CASE
|
|
264
|
+
WHEN authorization_source_kind = 'authorization_grant'
|
|
265
|
+
THEN 'wallet_session_authorization'
|
|
266
|
+
ELSE NULL
|
|
267
|
+
END,
|
|
268
|
+
NULL,
|
|
269
|
+
NULL,
|
|
270
|
+
NULL,
|
|
271
|
+
NULL,
|
|
272
|
+
NULL,
|
|
273
|
+
NULL,
|
|
274
|
+
NULL,
|
|
275
|
+
NULL,
|
|
276
|
+
NULL,
|
|
277
|
+
NULL,
|
|
278
|
+
NULL,
|
|
279
|
+
NULL,
|
|
280
|
+
NULL,
|
|
281
|
+
NULL,
|
|
282
|
+
NULL
|
|
283
|
+
FROM "authorized_operations";
|
|
284
|
+
DROP TABLE "authorized_operations";
|
|
285
|
+
ALTER TABLE "authorized_operations_post_103_upgrade" RENAME TO "authorized_operations";
|
|
286
|
+
|
|
287
|
+
DROP TABLE IF EXISTS "webauthn_challenges_post_103_upgrade";
|
|
288
|
+
CREATE TABLE "webauthn_challenges_post_103_upgrade" (
|
|
289
|
+
namespace TEXT NOT NULL,
|
|
290
|
+
org_id TEXT NOT NULL,
|
|
291
|
+
project_id TEXT NOT NULL,
|
|
292
|
+
env_id TEXT NOT NULL,
|
|
293
|
+
challenge_id TEXT NOT NULL,
|
|
294
|
+
challenge_kind TEXT NOT NULL,
|
|
295
|
+
record_json TEXT NOT NULL,
|
|
296
|
+
created_at_ms INTEGER NOT NULL,
|
|
297
|
+
expires_at_ms INTEGER NOT NULL,
|
|
298
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, challenge_id),
|
|
299
|
+
CHECK (length(challenge_id) > 0),
|
|
300
|
+
CHECK (challenge_kind IN ('login', 'sync', 'recovery_registration')),
|
|
301
|
+
CHECK (json_valid(record_json)),
|
|
302
|
+
CHECK (created_at_ms > 0),
|
|
303
|
+
CHECK (expires_at_ms > created_at_ms)
|
|
304
|
+
);
|
|
305
|
+
INSERT INTO "webauthn_challenges_post_103_upgrade" (
|
|
306
|
+
"namespace",
|
|
307
|
+
"org_id",
|
|
308
|
+
"project_id",
|
|
309
|
+
"env_id",
|
|
310
|
+
"challenge_id",
|
|
311
|
+
"challenge_kind",
|
|
312
|
+
"record_json",
|
|
313
|
+
"created_at_ms",
|
|
314
|
+
"expires_at_ms"
|
|
315
|
+
) SELECT
|
|
316
|
+
"namespace",
|
|
317
|
+
"org_id",
|
|
318
|
+
"project_id",
|
|
319
|
+
"env_id",
|
|
320
|
+
"challenge_id",
|
|
321
|
+
"challenge_kind",
|
|
322
|
+
"record_json",
|
|
323
|
+
"created_at_ms",
|
|
324
|
+
"expires_at_ms"
|
|
325
|
+
FROM "webauthn_challenges";
|
|
326
|
+
DROP TABLE "webauthn_challenges";
|
|
327
|
+
ALTER TABLE "webauthn_challenges_post_103_upgrade" RENAME TO "webauthn_challenges";
|
|
328
|
+
|
|
329
|
+
CREATE TABLE IF NOT EXISTS lane_cas_guard (
|
|
330
|
+
guard_id INTEGER PRIMARY KEY CHECK (guard_id = 1)
|
|
331
|
+
);
|
|
332
|
+
|
|
333
|
+
CREATE TABLE IF NOT EXISTS lane_effect_journal (
|
|
334
|
+
namespace TEXT NOT NULL,
|
|
335
|
+
org_id TEXT NOT NULL,
|
|
336
|
+
project_id TEXT NOT NULL,
|
|
337
|
+
env_id TEXT NOT NULL,
|
|
338
|
+
effect_id TEXT NOT NULL,
|
|
339
|
+
enrollment_id TEXT NOT NULL,
|
|
340
|
+
operation_id TEXT NOT NULL,
|
|
341
|
+
wallet_id TEXT NOT NULL,
|
|
342
|
+
wallet_key_id TEXT NOT NULL,
|
|
343
|
+
lane_id TEXT NOT NULL,
|
|
344
|
+
lane_share_epoch TEXT NOT NULL,
|
|
345
|
+
effect_kind TEXT NOT NULL,
|
|
346
|
+
request_digest_b64u TEXT NOT NULL,
|
|
347
|
+
status TEXT NOT NULL,
|
|
348
|
+
response_digest_b64u TEXT,
|
|
349
|
+
recorded_at_ms INTEGER NOT NULL,
|
|
350
|
+
confirmed_at_ms INTEGER,
|
|
351
|
+
version INTEGER NOT NULL,
|
|
352
|
+
command_digest_b64u TEXT NOT NULL,
|
|
353
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, effect_id),
|
|
354
|
+
UNIQUE (namespace, org_id, project_id, env_id, operation_id, effect_kind),
|
|
355
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, enrollment_id)
|
|
356
|
+
REFERENCES lane_enrollments(namespace, org_id, project_id, env_id, enrollment_id),
|
|
357
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, operation_id)
|
|
358
|
+
REFERENCES lane_protocol_operations(namespace, org_id, project_id, env_id, operation_id),
|
|
359
|
+
CHECK (effect_kind IN ('activate_server_material', 'retire_server_material', 'invalidate_holder_material')),
|
|
360
|
+
CHECK (status IN ('recorded', 'confirmed')),
|
|
361
|
+
CHECK (
|
|
362
|
+
(status = 'recorded' AND response_digest_b64u IS NULL AND confirmed_at_ms IS NULL)
|
|
363
|
+
OR (status = 'confirmed' AND response_digest_b64u IS NOT NULL AND confirmed_at_ms IS NOT NULL AND confirmed_at_ms >= recorded_at_ms)
|
|
364
|
+
),
|
|
365
|
+
CHECK (version > 0),
|
|
366
|
+
CHECK (recorded_at_ms >= 0)
|
|
367
|
+
);
|
|
368
|
+
|
|
369
|
+
CREATE TABLE IF NOT EXISTS lane_enrollments (
|
|
370
|
+
namespace TEXT NOT NULL,
|
|
371
|
+
org_id TEXT NOT NULL,
|
|
372
|
+
project_id TEXT NOT NULL,
|
|
373
|
+
env_id TEXT NOT NULL,
|
|
374
|
+
enrollment_id TEXT NOT NULL,
|
|
375
|
+
wallet_id TEXT NOT NULL,
|
|
376
|
+
manifest_digest_b64u TEXT NOT NULL,
|
|
377
|
+
manifest_json TEXT NOT NULL,
|
|
378
|
+
lifecycle_json TEXT NOT NULL,
|
|
379
|
+
version INTEGER NOT NULL,
|
|
380
|
+
command_digest_b64u TEXT NOT NULL,
|
|
381
|
+
revocation_fence_command_digest_b64u TEXT,
|
|
382
|
+
created_at_ms INTEGER NOT NULL,
|
|
383
|
+
updated_at_ms INTEGER NOT NULL,
|
|
384
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, enrollment_id),
|
|
385
|
+
UNIQUE (namespace, org_id, project_id, env_id, manifest_digest_b64u),
|
|
386
|
+
CHECK (length(enrollment_id) > 0),
|
|
387
|
+
CHECK (length(wallet_id) > 0),
|
|
388
|
+
CHECK (length(manifest_digest_b64u) > 0),
|
|
389
|
+
CHECK (json_valid(manifest_json)),
|
|
390
|
+
CHECK (json_valid(lifecycle_json)),
|
|
391
|
+
CHECK (version > 0),
|
|
392
|
+
CHECK (created_at_ms >= 0 AND updated_at_ms >= created_at_ms)
|
|
393
|
+
);
|
|
394
|
+
|
|
395
|
+
CREATE TABLE IF NOT EXISTS lane_locks (
|
|
396
|
+
namespace TEXT NOT NULL,
|
|
397
|
+
org_id TEXT NOT NULL,
|
|
398
|
+
project_id TEXT NOT NULL,
|
|
399
|
+
env_id TEXT NOT NULL,
|
|
400
|
+
lock_key TEXT NOT NULL,
|
|
401
|
+
lock_kind TEXT NOT NULL,
|
|
402
|
+
enrollment_id TEXT,
|
|
403
|
+
wallet_key_id TEXT,
|
|
404
|
+
lane_id TEXT,
|
|
405
|
+
lock_id TEXT NOT NULL,
|
|
406
|
+
expires_at_ms INTEGER NOT NULL,
|
|
407
|
+
acquired_at_ms INTEGER NOT NULL,
|
|
408
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, lock_key),
|
|
409
|
+
CHECK (lock_kind IN ('wallet_key', 'enrollment')),
|
|
410
|
+
CHECK (length(lock_id) > 0),
|
|
411
|
+
CHECK (expires_at_ms > acquired_at_ms),
|
|
412
|
+
CHECK ((lock_kind = 'wallet_key' AND wallet_key_id IS NOT NULL AND enrollment_id IS NULL AND lane_id IS NULL) OR
|
|
413
|
+
(lock_kind = 'enrollment' AND enrollment_id IS NOT NULL AND wallet_key_id IS NULL AND lane_id IS NULL))
|
|
414
|
+
);
|
|
415
|
+
|
|
416
|
+
CREATE TABLE IF NOT EXISTS lane_product_epochs (
|
|
417
|
+
namespace TEXT NOT NULL,
|
|
418
|
+
org_id TEXT NOT NULL,
|
|
419
|
+
project_id TEXT NOT NULL,
|
|
420
|
+
env_id TEXT NOT NULL,
|
|
421
|
+
wallet_id TEXT NOT NULL,
|
|
422
|
+
wallet_key_id TEXT NOT NULL,
|
|
423
|
+
lane_id TEXT NOT NULL,
|
|
424
|
+
lane_share_epoch TEXT NOT NULL,
|
|
425
|
+
enrollment_id TEXT NOT NULL,
|
|
426
|
+
operation_id TEXT NOT NULL,
|
|
427
|
+
target_material_activation_id TEXT NOT NULL,
|
|
428
|
+
material_activation_json TEXT NOT NULL,
|
|
429
|
+
holder_participant_json TEXT NOT NULL,
|
|
430
|
+
signing_worker_participant_json TEXT NOT NULL,
|
|
431
|
+
participant_set_binding_digest_b64u TEXT NOT NULL,
|
|
432
|
+
revocation_epoch INTEGER NOT NULL,
|
|
433
|
+
lane_kind TEXT NOT NULL,
|
|
434
|
+
key_family TEXT NOT NULL,
|
|
435
|
+
public_identity_digest_b64u TEXT NOT NULL,
|
|
436
|
+
state TEXT NOT NULL,
|
|
437
|
+
product_json TEXT NOT NULL,
|
|
438
|
+
version INTEGER NOT NULL DEFAULT 1,
|
|
439
|
+
command_digest_b64u TEXT NOT NULL,
|
|
440
|
+
created_at_ms INTEGER NOT NULL,
|
|
441
|
+
updated_at_ms INTEGER NOT NULL,
|
|
442
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, wallet_key_id, lane_id, lane_share_epoch),
|
|
443
|
+
UNIQUE (namespace, org_id, project_id, env_id, target_material_activation_id),
|
|
444
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, enrollment_id)
|
|
445
|
+
REFERENCES lane_enrollments(namespace, org_id, project_id, env_id, enrollment_id),
|
|
446
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, operation_id)
|
|
447
|
+
REFERENCES lane_protocol_operations(namespace, org_id, project_id, env_id, operation_id),
|
|
448
|
+
CHECK (json_valid(material_activation_json)),
|
|
449
|
+
CHECK (json_valid(holder_participant_json)),
|
|
450
|
+
CHECK (json_valid(signing_worker_participant_json)),
|
|
451
|
+
CHECK (length(participant_set_binding_digest_b64u) > 0),
|
|
452
|
+
CHECK (revocation_epoch >= 0),
|
|
453
|
+
CHECK (json_valid(product_json)),
|
|
454
|
+
CHECK (state IN ('pending_visibility', 'active', 'retired', 'revocation_pending', 'revoked')),
|
|
455
|
+
CHECK (lane_kind IN ('owner_passkey', 'owner_email_otp', 'linked_device', 'delegated_execution', 'recovery', 'break_glass')),
|
|
456
|
+
CHECK (length(command_digest_b64u) > 0),
|
|
457
|
+
CHECK (version > 0),
|
|
458
|
+
CHECK (key_family IN ('ed25519', 'ecdsa_secp256k1')),
|
|
459
|
+
CHECK (created_at_ms >= 0 AND updated_at_ms >= created_at_ms)
|
|
460
|
+
);
|
|
461
|
+
|
|
462
|
+
CREATE TABLE IF NOT EXISTS lane_protocol_operations (
|
|
463
|
+
namespace TEXT NOT NULL,
|
|
464
|
+
org_id TEXT NOT NULL,
|
|
465
|
+
project_id TEXT NOT NULL,
|
|
466
|
+
env_id TEXT NOT NULL,
|
|
467
|
+
operation_id TEXT NOT NULL,
|
|
468
|
+
enrollment_id TEXT NOT NULL,
|
|
469
|
+
wallet_id TEXT NOT NULL,
|
|
470
|
+
wallet_key_id TEXT NOT NULL,
|
|
471
|
+
source_lane_id TEXT NOT NULL,
|
|
472
|
+
source_lane_share_epoch TEXT NOT NULL,
|
|
473
|
+
source_revocation_epoch INTEGER NOT NULL,
|
|
474
|
+
target_lane_id TEXT NOT NULL,
|
|
475
|
+
target_lane_share_epoch TEXT NOT NULL,
|
|
476
|
+
target_material_activation_id TEXT NOT NULL,
|
|
477
|
+
key_family TEXT NOT NULL,
|
|
478
|
+
job_json TEXT NOT NULL,
|
|
479
|
+
lifecycle_json TEXT NOT NULL,
|
|
480
|
+
version INTEGER NOT NULL,
|
|
481
|
+
command_digest_b64u TEXT NOT NULL,
|
|
482
|
+
created_at_ms INTEGER NOT NULL,
|
|
483
|
+
updated_at_ms INTEGER NOT NULL,
|
|
484
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, operation_id),
|
|
485
|
+
UNIQUE (namespace, org_id, project_id, env_id, target_material_activation_id),
|
|
486
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, enrollment_id)
|
|
487
|
+
REFERENCES lane_enrollments(namespace, org_id, project_id, env_id, enrollment_id),
|
|
488
|
+
CHECK (source_revocation_epoch >= 0),
|
|
489
|
+
CHECK (key_family IN ('ed25519', 'ecdsa_secp256k1')),
|
|
490
|
+
CHECK (json_valid(job_json)),
|
|
491
|
+
CHECK (json_valid(lifecycle_json)),
|
|
492
|
+
CHECK (version > 0),
|
|
493
|
+
CHECK (created_at_ms >= 0 AND updated_at_ms >= created_at_ms)
|
|
494
|
+
);
|
|
495
|
+
|
|
496
|
+
CREATE TABLE IF NOT EXISTS lane_receipts (
|
|
497
|
+
namespace TEXT NOT NULL,
|
|
498
|
+
org_id TEXT NOT NULL,
|
|
499
|
+
project_id TEXT NOT NULL,
|
|
500
|
+
env_id TEXT NOT NULL,
|
|
501
|
+
receipt_id TEXT NOT NULL,
|
|
502
|
+
enrollment_id TEXT NOT NULL,
|
|
503
|
+
operation_id TEXT,
|
|
504
|
+
receipt_kind TEXT NOT NULL,
|
|
505
|
+
receipt_digest_b64u TEXT NOT NULL,
|
|
506
|
+
receipt_json TEXT NOT NULL,
|
|
507
|
+
created_at_ms INTEGER NOT NULL,
|
|
508
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, receipt_id),
|
|
509
|
+
UNIQUE (namespace, org_id, project_id, env_id, operation_id, receipt_kind),
|
|
510
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, enrollment_id)
|
|
511
|
+
REFERENCES lane_enrollments(namespace, org_id, project_id, env_id, enrollment_id),
|
|
512
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, operation_id)
|
|
513
|
+
REFERENCES lane_protocol_operations(namespace, org_id, project_id, env_id, operation_id),
|
|
514
|
+
CHECK (json_valid(receipt_json)),
|
|
515
|
+
CHECK (created_at_ms >= 0)
|
|
516
|
+
);
|
|
517
|
+
|
|
518
|
+
CREATE TABLE IF NOT EXISTS linked_device_owner_planning_snapshots (
|
|
519
|
+
namespace TEXT NOT NULL,
|
|
520
|
+
org_id TEXT NOT NULL,
|
|
521
|
+
project_id TEXT NOT NULL,
|
|
522
|
+
env_id TEXT NOT NULL,
|
|
523
|
+
link_session_id TEXT NOT NULL,
|
|
524
|
+
wallet_id TEXT NOT NULL,
|
|
525
|
+
owner_context_json TEXT NOT NULL,
|
|
526
|
+
payload_json TEXT NOT NULL,
|
|
527
|
+
policy_digest_b64u TEXT NOT NULL,
|
|
528
|
+
operation_id TEXT NOT NULL,
|
|
529
|
+
idempotency_key TEXT NOT NULL,
|
|
530
|
+
ordered_key_bindings_json TEXT NOT NULL,
|
|
531
|
+
protocol_versions_json TEXT NOT NULL,
|
|
532
|
+
expires_at_ms INTEGER NOT NULL,
|
|
533
|
+
source_children_json TEXT NOT NULL,
|
|
534
|
+
ordered_owner_source_lane_hints_json TEXT NOT NULL,
|
|
535
|
+
snapshot_json TEXT NOT NULL,
|
|
536
|
+
snapshot_digest_b64u TEXT NOT NULL,
|
|
537
|
+
created_at_ms INTEGER NOT NULL,
|
|
538
|
+
updated_at_ms INTEGER NOT NULL,
|
|
539
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, link_session_id),
|
|
540
|
+
CHECK (length(link_session_id) > 0),
|
|
541
|
+
CHECK (length(wallet_id) > 0),
|
|
542
|
+
CHECK (length(policy_digest_b64u) > 0),
|
|
543
|
+
CHECK (length(operation_id) > 0),
|
|
544
|
+
CHECK (length(idempotency_key) > 0),
|
|
545
|
+
CHECK (json_valid(owner_context_json)),
|
|
546
|
+
CHECK (json_valid(payload_json)),
|
|
547
|
+
CHECK (json_valid(ordered_key_bindings_json)),
|
|
548
|
+
CHECK (json_valid(protocol_versions_json)),
|
|
549
|
+
CHECK (json_valid(source_children_json)),
|
|
550
|
+
CHECK (json_valid(ordered_owner_source_lane_hints_json)),
|
|
551
|
+
CHECK (json_valid(snapshot_json)),
|
|
552
|
+
CHECK (expires_at_ms > 0),
|
|
553
|
+
CHECK (created_at_ms > 0 AND updated_at_ms >= created_at_ms)
|
|
554
|
+
);
|
|
555
|
+
|
|
556
|
+
CREATE TABLE IF NOT EXISTS linked_device_provisioning_records (
|
|
557
|
+
namespace TEXT NOT NULL,
|
|
558
|
+
org_id TEXT NOT NULL,
|
|
559
|
+
project_id TEXT NOT NULL,
|
|
560
|
+
env_id TEXT NOT NULL,
|
|
561
|
+
link_session_id TEXT NOT NULL,
|
|
562
|
+
enrollment_id TEXT NOT NULL,
|
|
563
|
+
wallet_id TEXT NOT NULL,
|
|
564
|
+
device_id TEXT NOT NULL,
|
|
565
|
+
manifest_digest_b64u TEXT NOT NULL,
|
|
566
|
+
deliveries_json TEXT NOT NULL,
|
|
567
|
+
aggregate_receipt_json TEXT,
|
|
568
|
+
created_at_ms INTEGER NOT NULL,
|
|
569
|
+
updated_at_ms INTEGER NOT NULL,
|
|
570
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, link_session_id),
|
|
571
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, link_session_id)
|
|
572
|
+
REFERENCES linked_device_sessions(namespace, org_id, project_id, env_id, link_session_id),
|
|
573
|
+
CHECK (length(enrollment_id) > 0),
|
|
574
|
+
CHECK (length(wallet_id) > 0),
|
|
575
|
+
CHECK (length(device_id) > 0),
|
|
576
|
+
CHECK (length(manifest_digest_b64u) > 0),
|
|
577
|
+
CHECK (json_valid(deliveries_json)),
|
|
578
|
+
CHECK (aggregate_receipt_json IS NULL OR json_valid(aggregate_receipt_json))
|
|
579
|
+
);
|
|
580
|
+
|
|
581
|
+
CREATE TABLE IF NOT EXISTS linked_device_request_proof_nonces (
|
|
582
|
+
namespace TEXT NOT NULL,
|
|
583
|
+
org_id TEXT NOT NULL,
|
|
584
|
+
project_id TEXT NOT NULL,
|
|
585
|
+
env_id TEXT NOT NULL,
|
|
586
|
+
link_session_id TEXT NOT NULL,
|
|
587
|
+
request_nonce_b64u TEXT NOT NULL,
|
|
588
|
+
proof_digest_b64u TEXT NOT NULL,
|
|
589
|
+
issued_at_ms INTEGER NOT NULL,
|
|
590
|
+
expires_at_ms INTEGER NOT NULL,
|
|
591
|
+
consumed_at_ms INTEGER NOT NULL,
|
|
592
|
+
PRIMARY KEY (
|
|
593
|
+
namespace,
|
|
594
|
+
org_id,
|
|
595
|
+
project_id,
|
|
596
|
+
env_id,
|
|
597
|
+
link_session_id,
|
|
598
|
+
request_nonce_b64u
|
|
599
|
+
),
|
|
600
|
+
CHECK (length(link_session_id) > 0),
|
|
601
|
+
CHECK (length(request_nonce_b64u) > 0),
|
|
602
|
+
CHECK (length(proof_digest_b64u) > 0),
|
|
603
|
+
CHECK (issued_at_ms > 0),
|
|
604
|
+
CHECK (expires_at_ms > issued_at_ms),
|
|
605
|
+
CHECK (consumed_at_ms >= issued_at_ms),
|
|
606
|
+
CHECK (consumed_at_ms < expires_at_ms)
|
|
607
|
+
);
|
|
608
|
+
|
|
609
|
+
CREATE TABLE IF NOT EXISTS linked_device_session_transcripts (
|
|
610
|
+
namespace TEXT NOT NULL,
|
|
611
|
+
org_id TEXT NOT NULL,
|
|
612
|
+
project_id TEXT NOT NULL,
|
|
613
|
+
env_id TEXT NOT NULL,
|
|
614
|
+
link_session_id TEXT NOT NULL,
|
|
615
|
+
transcript_kind TEXT NOT NULL,
|
|
616
|
+
digest_b64u TEXT NOT NULL,
|
|
617
|
+
transcript_json TEXT NOT NULL,
|
|
618
|
+
created_at_ms INTEGER NOT NULL,
|
|
619
|
+
PRIMARY KEY (
|
|
620
|
+
namespace,
|
|
621
|
+
org_id,
|
|
622
|
+
project_id,
|
|
623
|
+
env_id,
|
|
624
|
+
link_session_id,
|
|
625
|
+
transcript_kind
|
|
626
|
+
),
|
|
627
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, link_session_id)
|
|
628
|
+
REFERENCES linked_device_sessions(namespace, org_id, project_id, env_id, link_session_id),
|
|
629
|
+
CHECK (transcript_kind IN ('claim', 'approval')),
|
|
630
|
+
CHECK (length(digest_b64u) > 0),
|
|
631
|
+
CHECK (json_valid(transcript_json)),
|
|
632
|
+
CHECK (created_at_ms > 0)
|
|
633
|
+
);
|
|
634
|
+
|
|
635
|
+
CREATE TABLE IF NOT EXISTS linked_device_sessions (
|
|
636
|
+
namespace TEXT NOT NULL,
|
|
637
|
+
org_id TEXT NOT NULL,
|
|
638
|
+
project_id TEXT NOT NULL,
|
|
639
|
+
env_id TEXT NOT NULL,
|
|
640
|
+
link_session_id TEXT NOT NULL,
|
|
641
|
+
link_public_key_b64u TEXT NOT NULL,
|
|
642
|
+
device_public_key_b64u TEXT NOT NULL,
|
|
643
|
+
state TEXT NOT NULL,
|
|
644
|
+
record_json TEXT NOT NULL,
|
|
645
|
+
revision INTEGER NOT NULL,
|
|
646
|
+
expires_at_ms INTEGER NOT NULL,
|
|
647
|
+
claim_expires_at_ms INTEGER,
|
|
648
|
+
claim_digest_b64u TEXT,
|
|
649
|
+
approval_digest_b64u TEXT,
|
|
650
|
+
created_at_ms INTEGER NOT NULL,
|
|
651
|
+
updated_at_ms INTEGER NOT NULL,
|
|
652
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, link_session_id),
|
|
653
|
+
CHECK (length(link_session_id) > 0),
|
|
654
|
+
CHECK (length(link_public_key_b64u) > 0),
|
|
655
|
+
CHECK (length(device_public_key_b64u) > 0),
|
|
656
|
+
CHECK (state IN (
|
|
657
|
+
'displaying_qr',
|
|
658
|
+
'claimed_by_owner',
|
|
659
|
+
'awaiting_target_passkey',
|
|
660
|
+
'provisioning',
|
|
661
|
+
'active',
|
|
662
|
+
'expired_unclaimed',
|
|
663
|
+
'expired_claimed',
|
|
664
|
+
'cancelled_unclaimed',
|
|
665
|
+
'cancelled_claimed_precommit',
|
|
666
|
+
'committed_completion_required'
|
|
667
|
+
)),
|
|
668
|
+
CHECK (json_valid(record_json)),
|
|
669
|
+
CHECK (revision > 0),
|
|
670
|
+
CHECK (expires_at_ms > 0),
|
|
671
|
+
CHECK (claim_expires_at_ms IS NULL OR claim_expires_at_ms > 0),
|
|
672
|
+
CHECK (claim_digest_b64u IS NULL OR length(claim_digest_b64u) > 0),
|
|
673
|
+
CHECK (approval_digest_b64u IS NULL OR length(approval_digest_b64u) > 0),
|
|
674
|
+
CHECK (created_at_ms > 0 AND updated_at_ms >= created_at_ms)
|
|
675
|
+
);
|
|
676
|
+
|
|
677
|
+
CREATE TABLE IF NOT EXISTS linked_device_source_handoffs (
|
|
678
|
+
namespace TEXT NOT NULL,
|
|
679
|
+
org_id TEXT NOT NULL,
|
|
680
|
+
project_id TEXT NOT NULL,
|
|
681
|
+
env_id TEXT NOT NULL,
|
|
682
|
+
link_session_id TEXT NOT NULL,
|
|
683
|
+
enrollment_id TEXT NOT NULL,
|
|
684
|
+
wallet_id TEXT NOT NULL,
|
|
685
|
+
device_id TEXT NOT NULL,
|
|
686
|
+
target_ready_json TEXT NOT NULL,
|
|
687
|
+
target_ready_digest_b64u TEXT NOT NULL,
|
|
688
|
+
manifest_digest_b64u TEXT NOT NULL,
|
|
689
|
+
deliveries_json TEXT,
|
|
690
|
+
deliveries_digest_b64u TEXT,
|
|
691
|
+
created_at_ms INTEGER NOT NULL,
|
|
692
|
+
updated_at_ms INTEGER NOT NULL,
|
|
693
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, link_session_id),
|
|
694
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, link_session_id)
|
|
695
|
+
REFERENCES linked_device_sessions(namespace, org_id, project_id, env_id, link_session_id),
|
|
696
|
+
CHECK (length(enrollment_id) > 0),
|
|
697
|
+
CHECK (length(wallet_id) > 0),
|
|
698
|
+
CHECK (length(device_id) > 0),
|
|
699
|
+
CHECK (length(target_ready_digest_b64u) > 0),
|
|
700
|
+
CHECK (length(manifest_digest_b64u) > 0),
|
|
701
|
+
CHECK (json_valid(target_ready_json)),
|
|
702
|
+
CHECK (
|
|
703
|
+
(deliveries_json IS NULL AND deliveries_digest_b64u IS NULL)
|
|
704
|
+
OR
|
|
705
|
+
(deliveries_json IS NOT NULL AND json_valid(deliveries_json) AND length(deliveries_digest_b64u) > 0)
|
|
706
|
+
)
|
|
707
|
+
);
|
|
708
|
+
|
|
709
|
+
CREATE TABLE IF NOT EXISTS linked_device_target_commit_reservations (
|
|
710
|
+
namespace TEXT NOT NULL,
|
|
711
|
+
org_id TEXT NOT NULL,
|
|
712
|
+
project_id TEXT NOT NULL,
|
|
713
|
+
env_id TEXT NOT NULL,
|
|
714
|
+
link_session_id TEXT NOT NULL,
|
|
715
|
+
registration_digest_b64u TEXT NOT NULL,
|
|
716
|
+
state TEXT NOT NULL,
|
|
717
|
+
reserved_at_ms INTEGER NOT NULL,
|
|
718
|
+
committed_at_ms INTEGER,
|
|
719
|
+
key_manifest_digest_b64u TEXT,
|
|
720
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, link_session_id),
|
|
721
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, link_session_id)
|
|
722
|
+
REFERENCES linked_device_sessions(namespace, org_id, project_id, env_id, link_session_id),
|
|
723
|
+
CHECK (length(registration_digest_b64u) > 0),
|
|
724
|
+
CHECK (state IN ('reserved', 'committed')),
|
|
725
|
+
CHECK (
|
|
726
|
+
(state = 'reserved' AND committed_at_ms IS NULL AND key_manifest_digest_b64u IS NULL)
|
|
727
|
+
OR
|
|
728
|
+
(state = 'committed' AND committed_at_ms IS NOT NULL AND length(key_manifest_digest_b64u) > 0)
|
|
729
|
+
)
|
|
730
|
+
);
|
|
731
|
+
|
|
732
|
+
CREATE TABLE IF NOT EXISTS linked_device_target_credentials (
|
|
733
|
+
namespace TEXT NOT NULL,
|
|
734
|
+
org_id TEXT NOT NULL,
|
|
735
|
+
project_id TEXT NOT NULL,
|
|
736
|
+
env_id TEXT NOT NULL,
|
|
737
|
+
link_session_id TEXT NOT NULL,
|
|
738
|
+
wallet_id TEXT NOT NULL,
|
|
739
|
+
enrollment_id TEXT NOT NULL,
|
|
740
|
+
device_id TEXT NOT NULL,
|
|
741
|
+
state TEXT NOT NULL,
|
|
742
|
+
preparation_digest_b64u TEXT NOT NULL,
|
|
743
|
+
preparation_json TEXT NOT NULL,
|
|
744
|
+
registration_json TEXT,
|
|
745
|
+
credential_id_b64u TEXT,
|
|
746
|
+
credential_public_key_b64u TEXT,
|
|
747
|
+
credential_counter INTEGER,
|
|
748
|
+
key_manifest_digest_b64u TEXT,
|
|
749
|
+
prepared_at_ms INTEGER NOT NULL,
|
|
750
|
+
expires_at_ms INTEGER NOT NULL,
|
|
751
|
+
registered_at_ms INTEGER,
|
|
752
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, link_session_id),
|
|
753
|
+
FOREIGN KEY (namespace, org_id, project_id, env_id, link_session_id)
|
|
754
|
+
REFERENCES linked_device_sessions(namespace, org_id, project_id, env_id, link_session_id),
|
|
755
|
+
CHECK (length(wallet_id) > 0),
|
|
756
|
+
CHECK (length(enrollment_id) > 0),
|
|
757
|
+
CHECK (length(device_id) > 0),
|
|
758
|
+
CHECK (state IN ('prepared', 'registered')),
|
|
759
|
+
CHECK (length(preparation_digest_b64u) > 0),
|
|
760
|
+
CHECK (json_valid(preparation_json)),
|
|
761
|
+
CHECK (expires_at_ms > prepared_at_ms),
|
|
762
|
+
CHECK (
|
|
763
|
+
(state = 'prepared'
|
|
764
|
+
AND registration_json IS NULL
|
|
765
|
+
AND credential_id_b64u IS NULL
|
|
766
|
+
AND credential_public_key_b64u IS NULL
|
|
767
|
+
AND credential_counter IS NULL
|
|
768
|
+
AND key_manifest_digest_b64u IS NULL
|
|
769
|
+
AND registered_at_ms IS NULL)
|
|
770
|
+
OR
|
|
771
|
+
(state = 'registered'
|
|
772
|
+
AND json_valid(registration_json)
|
|
773
|
+
AND length(credential_id_b64u) > 0
|
|
774
|
+
AND length(credential_public_key_b64u) > 0
|
|
775
|
+
AND credential_counter >= 0
|
|
776
|
+
AND length(key_manifest_digest_b64u) > 0
|
|
777
|
+
AND registered_at_ms > 0)
|
|
778
|
+
)
|
|
779
|
+
);
|
|
780
|
+
|
|
781
|
+
CREATE TABLE IF NOT EXISTS linked_device_target_deployment_descriptors (
|
|
782
|
+
namespace TEXT NOT NULL,
|
|
783
|
+
org_id TEXT NOT NULL,
|
|
784
|
+
project_id TEXT NOT NULL,
|
|
785
|
+
env_id TEXT NOT NULL,
|
|
786
|
+
link_session_id TEXT NOT NULL,
|
|
787
|
+
target_preparation_digest_b64u TEXT NOT NULL,
|
|
788
|
+
registration_digest_b64u TEXT NOT NULL,
|
|
789
|
+
child_index INTEGER NOT NULL,
|
|
790
|
+
request_digest_b64u TEXT NOT NULL,
|
|
791
|
+
descriptor_digest_b64u TEXT NOT NULL,
|
|
792
|
+
descriptor_json TEXT NOT NULL,
|
|
793
|
+
issued_at_ms INTEGER NOT NULL,
|
|
794
|
+
expires_at_ms INTEGER NOT NULL,
|
|
795
|
+
PRIMARY KEY (
|
|
796
|
+
namespace,
|
|
797
|
+
org_id,
|
|
798
|
+
project_id,
|
|
799
|
+
env_id,
|
|
800
|
+
link_session_id,
|
|
801
|
+
target_preparation_digest_b64u,
|
|
802
|
+
registration_digest_b64u,
|
|
803
|
+
child_index
|
|
804
|
+
),
|
|
805
|
+
CHECK (length(target_preparation_digest_b64u) > 0),
|
|
806
|
+
CHECK (length(registration_digest_b64u) > 0),
|
|
807
|
+
CHECK (child_index >= 0),
|
|
808
|
+
CHECK (length(request_digest_b64u) > 0),
|
|
809
|
+
CHECK (length(descriptor_digest_b64u) > 0),
|
|
810
|
+
CHECK (json_valid(descriptor_json)),
|
|
811
|
+
CHECK (issued_at_ms > 0 AND expires_at_ms > issued_at_ms)
|
|
812
|
+
);
|
|
813
|
+
|
|
814
|
+
CREATE TABLE IF NOT EXISTS linked_device_wallet_session_authorizations (
|
|
815
|
+
namespace TEXT NOT NULL,
|
|
816
|
+
org_id TEXT NOT NULL,
|
|
817
|
+
project_id TEXT NOT NULL,
|
|
818
|
+
env_id TEXT NOT NULL,
|
|
819
|
+
tenant_id TEXT NOT NULL,
|
|
820
|
+
authorization_id TEXT NOT NULL,
|
|
821
|
+
principal_id TEXT NOT NULL,
|
|
822
|
+
wallet_id TEXT NOT NULL,
|
|
823
|
+
enrollment_id TEXT NOT NULL,
|
|
824
|
+
device_id TEXT NOT NULL,
|
|
825
|
+
wallet_session_id TEXT NOT NULL,
|
|
826
|
+
quota_id TEXT NOT NULL,
|
|
827
|
+
key_manifest_digest_b64u TEXT NOT NULL,
|
|
828
|
+
permission_json TEXT NOT NULL,
|
|
829
|
+
revocation_epoch INTEGER NOT NULL,
|
|
830
|
+
lifecycle_kind TEXT NOT NULL,
|
|
831
|
+
issued_at_ms INTEGER NOT NULL,
|
|
832
|
+
expires_at_ms INTEGER NOT NULL,
|
|
833
|
+
revoked_at_ms INTEGER,
|
|
834
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, tenant_id, authorization_id),
|
|
835
|
+
UNIQUE (namespace, org_id, project_id, env_id, tenant_id, wallet_session_id),
|
|
836
|
+
UNIQUE (namespace, org_id, project_id, env_id, tenant_id, quota_id),
|
|
837
|
+
CHECK (length(authorization_id) > 0),
|
|
838
|
+
CHECK (length(principal_id) > 0),
|
|
839
|
+
CHECK (length(wallet_id) > 0),
|
|
840
|
+
CHECK (length(enrollment_id) > 0),
|
|
841
|
+
CHECK (length(device_id) > 0),
|
|
842
|
+
CHECK (length(wallet_session_id) > 0),
|
|
843
|
+
CHECK (length(quota_id) > 0),
|
|
844
|
+
CHECK (length(key_manifest_digest_b64u) > 0),
|
|
845
|
+
CHECK (json_valid(permission_json)),
|
|
846
|
+
CHECK (revocation_epoch >= 0),
|
|
847
|
+
CHECK (lifecycle_kind IN ('active', 'revoked')),
|
|
848
|
+
CHECK (issued_at_ms > 0 AND expires_at_ms > issued_at_ms),
|
|
849
|
+
CHECK (
|
|
850
|
+
(lifecycle_kind = 'active' AND revoked_at_ms IS NULL)
|
|
851
|
+
OR (lifecycle_kind = 'revoked' AND revoked_at_ms IS NOT NULL AND revoked_at_ms >= issued_at_ms)
|
|
852
|
+
)
|
|
853
|
+
);
|
|
854
|
+
|
|
855
|
+
CREATE TABLE IF NOT EXISTS linked_device_wallet_session_quotas (
|
|
856
|
+
namespace TEXT NOT NULL,
|
|
857
|
+
org_id TEXT NOT NULL,
|
|
858
|
+
project_id TEXT NOT NULL,
|
|
859
|
+
env_id TEXT NOT NULL,
|
|
860
|
+
tenant_id TEXT NOT NULL,
|
|
861
|
+
quota_id TEXT NOT NULL,
|
|
862
|
+
authorization_id TEXT NOT NULL,
|
|
863
|
+
wallet_session_id TEXT NOT NULL,
|
|
864
|
+
principal_id TEXT NOT NULL,
|
|
865
|
+
remaining_uses INTEGER NOT NULL,
|
|
866
|
+
lifecycle_kind TEXT NOT NULL,
|
|
867
|
+
expires_at_ms INTEGER NOT NULL,
|
|
868
|
+
PRIMARY KEY (namespace, org_id, project_id, env_id, tenant_id, quota_id),
|
|
869
|
+
UNIQUE (namespace, org_id, project_id, env_id, tenant_id, wallet_session_id),
|
|
870
|
+
FOREIGN KEY (
|
|
871
|
+
namespace, org_id, project_id, env_id, tenant_id, authorization_id
|
|
872
|
+
) REFERENCES linked_device_wallet_session_authorizations(
|
|
873
|
+
namespace, org_id, project_id, env_id, tenant_id, authorization_id
|
|
874
|
+
),
|
|
875
|
+
CHECK (length(quota_id) > 0),
|
|
876
|
+
CHECK (length(authorization_id) > 0),
|
|
877
|
+
CHECK (length(wallet_session_id) > 0),
|
|
878
|
+
CHECK (length(principal_id) > 0),
|
|
879
|
+
CHECK (remaining_uses >= 0),
|
|
880
|
+
CHECK (lifecycle_kind IN ('active', 'exhausted', 'revoked')),
|
|
881
|
+
CHECK (
|
|
882
|
+
(remaining_uses > 0 AND lifecycle_kind = 'active')
|
|
883
|
+
OR (remaining_uses = 0 AND lifecycle_kind IN ('exhausted', 'revoked'))
|
|
884
|
+
),
|
|
885
|
+
CHECK (expires_at_ms > 0)
|
|
886
|
+
);
|
|
887
|
+
|
|
888
|
+
INSERT OR IGNORE INTO lane_cas_guard (guard_id) VALUES (1);
|
|
889
|
+
|
|
890
|
+
CREATE INDEX IF NOT EXISTS authorized_operation_audit_fingerprint_idx
|
|
891
|
+
ON authorized_operation_audit_events(namespace, tenant_id, operation_fingerprint_digest);
|
|
892
|
+
CREATE INDEX IF NOT EXISTS authorized_operation_audit_linked_device_activity_idx
|
|
893
|
+
ON authorized_operation_audit_events(
|
|
894
|
+
namespace,
|
|
895
|
+
authorization_grant_kind,
|
|
896
|
+
linked_scope_org_id,
|
|
897
|
+
linked_scope_project_id,
|
|
898
|
+
linked_scope_env_id,
|
|
899
|
+
linked_wallet_id,
|
|
900
|
+
linked_enrollment_id,
|
|
901
|
+
linked_device_id
|
|
902
|
+
);
|
|
903
|
+
CREATE INDEX IF NOT EXISTS authorized_operation_audit_linked_device_activity_idx
|
|
904
|
+
ON authorized_operation_audit_events(
|
|
905
|
+
namespace,
|
|
906
|
+
authorization_grant_kind,
|
|
907
|
+
linked_scope_org_id,
|
|
908
|
+
linked_scope_project_id,
|
|
909
|
+
linked_scope_env_id,
|
|
910
|
+
linked_wallet_id,
|
|
911
|
+
linked_enrollment_id,
|
|
912
|
+
linked_device_id
|
|
913
|
+
);
|
|
914
|
+
CREATE INDEX IF NOT EXISTS authorized_operations_tenant_fingerprint_idx
|
|
915
|
+
ON authorized_operations(namespace, tenant_id, operation_fingerprint_digest);
|
|
916
|
+
CREATE INDEX IF NOT EXISTS authorized_operations_tenant_lifecycle_idx
|
|
917
|
+
ON authorized_operations(namespace, tenant_id, lifecycle_kind);
|
|
918
|
+
CREATE INDEX IF NOT EXISTS lane_enrollments_wallet_idx
|
|
919
|
+
ON lane_enrollments(namespace, org_id, project_id, env_id, wallet_id, updated_at_ms);
|
|
920
|
+
CREATE UNIQUE INDEX IF NOT EXISTS lane_product_epochs_one_active_idx
|
|
921
|
+
ON lane_product_epochs(namespace, org_id, project_id, env_id, wallet_key_id, lane_id)
|
|
922
|
+
WHERE state = 'active';
|
|
923
|
+
CREATE INDEX IF NOT EXISTS lane_product_epochs_wallet_active_idx
|
|
924
|
+
ON lane_product_epochs(namespace, org_id, project_id, env_id, wallet_id, state, updated_at_ms);
|
|
925
|
+
CREATE INDEX IF NOT EXISTS lane_protocol_operations_enrollment_idx
|
|
926
|
+
ON lane_protocol_operations(namespace, org_id, project_id, env_id, enrollment_id, operation_id);
|
|
927
|
+
CREATE UNIQUE INDEX IF NOT EXISTS linked_device_owner_planning_snapshots_operation_idx
|
|
928
|
+
ON linked_device_owner_planning_snapshots(
|
|
929
|
+
namespace, org_id, project_id, env_id, operation_id
|
|
930
|
+
);
|
|
931
|
+
CREATE INDEX IF NOT EXISTS linked_device_owner_planning_snapshots_wallet_idx
|
|
932
|
+
ON linked_device_owner_planning_snapshots(
|
|
933
|
+
namespace, org_id, project_id, env_id, wallet_id, expires_at_ms
|
|
934
|
+
);
|
|
935
|
+
CREATE INDEX IF NOT EXISTS linked_device_request_proof_nonces_expiry_idx
|
|
936
|
+
ON linked_device_request_proof_nonces(
|
|
937
|
+
namespace,
|
|
938
|
+
org_id,
|
|
939
|
+
project_id,
|
|
940
|
+
env_id,
|
|
941
|
+
expires_at_ms
|
|
942
|
+
);
|
|
943
|
+
CREATE INDEX IF NOT EXISTS linked_device_session_transcripts_digest_idx
|
|
944
|
+
ON linked_device_session_transcripts(
|
|
945
|
+
namespace,
|
|
946
|
+
org_id,
|
|
947
|
+
project_id,
|
|
948
|
+
env_id,
|
|
949
|
+
digest_b64u
|
|
950
|
+
);
|
|
951
|
+
CREATE INDEX IF NOT EXISTS linked_device_sessions_state_idx
|
|
952
|
+
ON linked_device_sessions(namespace, org_id, project_id, env_id, state, updated_at_ms);
|
|
953
|
+
CREATE UNIQUE INDEX IF NOT EXISTS linked_device_target_credentials_credential_idx
|
|
954
|
+
ON linked_device_target_credentials(
|
|
955
|
+
namespace,
|
|
956
|
+
org_id,
|
|
957
|
+
project_id,
|
|
958
|
+
env_id,
|
|
959
|
+
credential_id_b64u
|
|
960
|
+
)
|
|
961
|
+
WHERE credential_id_b64u IS NOT NULL;
|
|
962
|
+
CREATE INDEX IF NOT EXISTS linked_device_target_deployment_descriptors_wallet_idx
|
|
963
|
+
ON linked_device_target_deployment_descriptors(
|
|
964
|
+
namespace,
|
|
965
|
+
org_id,
|
|
966
|
+
project_id,
|
|
967
|
+
env_id,
|
|
968
|
+
expires_at_ms
|
|
969
|
+
);
|
|
970
|
+
CREATE INDEX IF NOT EXISTS linked_device_wallet_session_authorizations_identity_idx
|
|
971
|
+
ON linked_device_wallet_session_authorizations(
|
|
972
|
+
namespace, org_id, project_id, env_id, tenant_id, device_id, wallet_session_id
|
|
973
|
+
);
|
|
974
|
+
CREATE INDEX IF NOT EXISTS linked_device_wallet_session_quotas_identity_idx
|
|
975
|
+
ON linked_device_wallet_session_quotas(
|
|
976
|
+
namespace, org_id, project_id, env_id, tenant_id, authorization_id, wallet_session_id
|
|
977
|
+
);
|
|
978
|
+
CREATE INDEX IF NOT EXISTS webauthn_challenges_expiry_idx
|
|
979
|
+
ON webauthn_challenges (
|
|
980
|
+
namespace,
|
|
981
|
+
org_id,
|
|
982
|
+
project_id,
|
|
983
|
+
env_id,
|
|
984
|
+
challenge_kind,
|
|
985
|
+
expires_at_ms
|
|
986
|
+
);
|
|
987
|
+
|
|
988
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_audit_claim
|
|
989
|
+
AFTER INSERT ON authorized_operations
|
|
990
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
991
|
+
BEGIN
|
|
992
|
+
INSERT INTO authorized_operation_audit_events (
|
|
993
|
+
namespace, tenant_id, audit_event_id, authorized_operation_id,
|
|
994
|
+
operation_fingerprint_digest, authorization_source_kind, authorization_id,
|
|
995
|
+
authorization_grant_kind, evidence_set_digest, quota_id, material_activation_id,
|
|
996
|
+
material_activation_capability, material_activation_owner,
|
|
997
|
+
material_activation_key_binding, material_activation_lifecycle_binding,
|
|
998
|
+
material_activation_signing_worker, linked_wallet_id, linked_enrollment_id,
|
|
999
|
+
linked_device_id, linked_wallet_key_id, linked_lane_id, linked_lane_share_epoch,
|
|
1000
|
+
linked_revocation_epoch, linked_scope_org_id, linked_scope_project_id,
|
|
1001
|
+
linked_scope_env_id, result_kind, claimed_at_ms, completed_at_ms
|
|
1002
|
+
) VALUES (
|
|
1003
|
+
NEW.namespace, NEW.tenant_id, NEW.audit_event_id, NEW.authorized_operation_id,
|
|
1004
|
+
NEW.operation_fingerprint_digest, NEW.authorization_source_kind, NEW.authorization_id,
|
|
1005
|
+
NEW.authorization_grant_kind, NEW.evidence_set_digest, NEW.quota_id,
|
|
1006
|
+
NEW.material_activation_id, NEW.material_activation_capability,
|
|
1007
|
+
NEW.material_activation_owner, NEW.material_activation_key_binding,
|
|
1008
|
+
NEW.material_activation_lifecycle_binding, NEW.material_activation_signing_worker,
|
|
1009
|
+
NEW.linked_wallet_id, NEW.linked_enrollment_id, NEW.linked_device_id,
|
|
1010
|
+
NEW.linked_wallet_key_id, NEW.linked_lane_id, NEW.linked_lane_share_epoch,
|
|
1011
|
+
NEW.linked_revocation_epoch, NEW.linked_scope_org_id, NEW.linked_scope_project_id,
|
|
1012
|
+
NEW.linked_scope_env_id, NEW.result_kind, NEW.claimed_at_ms, NEW.completed_at_ms
|
|
1013
|
+
);
|
|
1014
|
+
END;
|
|
1015
|
+
|
|
1016
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_audit_claim
|
|
1017
|
+
AFTER INSERT ON authorized_operations
|
|
1018
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1019
|
+
BEGIN
|
|
1020
|
+
INSERT INTO authorized_operation_audit_events (
|
|
1021
|
+
namespace, tenant_id, audit_event_id, authorized_operation_id,
|
|
1022
|
+
operation_fingerprint_digest, authorization_source_kind, authorization_id,
|
|
1023
|
+
authorization_grant_kind, evidence_set_digest, quota_id, material_activation_id,
|
|
1024
|
+
material_activation_capability, material_activation_owner,
|
|
1025
|
+
material_activation_key_binding, material_activation_lifecycle_binding,
|
|
1026
|
+
material_activation_signing_worker, linked_wallet_id, linked_enrollment_id,
|
|
1027
|
+
linked_device_id, linked_wallet_key_id, linked_lane_id, linked_lane_share_epoch,
|
|
1028
|
+
linked_revocation_epoch, linked_scope_org_id, linked_scope_project_id,
|
|
1029
|
+
linked_scope_env_id, result_kind, claimed_at_ms, completed_at_ms
|
|
1030
|
+
) VALUES (
|
|
1031
|
+
NEW.namespace, NEW.tenant_id, NEW.audit_event_id, NEW.authorized_operation_id,
|
|
1032
|
+
NEW.operation_fingerprint_digest, NEW.authorization_source_kind, NEW.authorization_id,
|
|
1033
|
+
NEW.authorization_grant_kind, NEW.evidence_set_digest, NEW.quota_id,
|
|
1034
|
+
NEW.material_activation_id, NEW.material_activation_capability,
|
|
1035
|
+
NEW.material_activation_owner, NEW.material_activation_key_binding,
|
|
1036
|
+
NEW.material_activation_lifecycle_binding, NEW.material_activation_signing_worker,
|
|
1037
|
+
NEW.linked_wallet_id, NEW.linked_enrollment_id, NEW.linked_device_id,
|
|
1038
|
+
NEW.linked_wallet_key_id, NEW.linked_lane_id, NEW.linked_lane_share_epoch,
|
|
1039
|
+
NEW.linked_revocation_epoch, NEW.linked_scope_org_id, NEW.linked_scope_project_id,
|
|
1040
|
+
NEW.linked_scope_env_id, NEW.result_kind, NEW.claimed_at_ms, NEW.completed_at_ms
|
|
1041
|
+
);
|
|
1042
|
+
END;
|
|
1043
|
+
|
|
1044
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_audit_complete
|
|
1045
|
+
AFTER UPDATE OF lifecycle_kind ON authorized_operations
|
|
1046
|
+
WHEN OLD.lifecycle_kind = 'claimed' AND NEW.lifecycle_kind = 'completed'
|
|
1047
|
+
BEGIN
|
|
1048
|
+
UPDATE authorized_operation_audit_events
|
|
1049
|
+
SET result_kind = NEW.result_kind,
|
|
1050
|
+
completed_at_ms = NEW.completed_at_ms
|
|
1051
|
+
WHERE namespace = NEW.namespace
|
|
1052
|
+
AND tenant_id = NEW.tenant_id
|
|
1053
|
+
AND authorized_operation_id = NEW.authorized_operation_id;
|
|
1054
|
+
|
|
1055
|
+
SELECT CASE
|
|
1056
|
+
WHEN changes() != 1
|
|
1057
|
+
THEN RAISE(ABORT, 'authorized_operation_audit_completion_rejected')
|
|
1058
|
+
END;
|
|
1059
|
+
END;
|
|
1060
|
+
|
|
1061
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_complete_atomic
|
|
1062
|
+
BEFORE UPDATE OF lifecycle_kind ON authorized_operations
|
|
1063
|
+
WHEN OLD.lifecycle_kind = 'completed' OR NEW.lifecycle_kind != 'completed'
|
|
1064
|
+
BEGIN
|
|
1065
|
+
SELECT RAISE(ABORT, 'authorized_operation_lifecycle_transition_rejected');
|
|
1066
|
+
END;
|
|
1067
|
+
|
|
1068
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_grant_shape_guard
|
|
1069
|
+
BEFORE INSERT ON authorized_operations
|
|
1070
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1071
|
+
AND (
|
|
1072
|
+
NEW.authorization_source_kind NOT IN ('authorization_grant', 'verified_step_up')
|
|
1073
|
+
OR (NEW.authorization_source_kind = 'authorization_grant'
|
|
1074
|
+
AND (NEW.authorization_grant_kind IS NULL OR NEW.authorization_grant_kind NOT IN (
|
|
1075
|
+
'wallet_session_authorization',
|
|
1076
|
+
'linked_device_wallet_session_authorization_v1'
|
|
1077
|
+
)))
|
|
1078
|
+
OR (NEW.authorization_source_kind = 'authorization_grant'
|
|
1079
|
+
AND NEW.authorization_grant_kind = 'linked_device_wallet_session_authorization_v1'
|
|
1080
|
+
AND (NEW.linked_scope_org_id IS NULL
|
|
1081
|
+
OR NEW.linked_scope_project_id IS NULL
|
|
1082
|
+
OR NEW.linked_scope_env_id IS NULL))
|
|
1083
|
+
OR (NEW.authorization_source_kind = 'verified_step_up'
|
|
1084
|
+
AND NEW.authorization_grant_kind IS NOT NULL)
|
|
1085
|
+
)
|
|
1086
|
+
BEGIN
|
|
1087
|
+
SELECT RAISE(ABORT, 'authorization_grant_kind_rejected');
|
|
1088
|
+
END;
|
|
1089
|
+
|
|
1090
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_grant_shape_guard
|
|
1091
|
+
BEFORE INSERT ON authorized_operations
|
|
1092
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1093
|
+
AND (
|
|
1094
|
+
NEW.authorization_source_kind NOT IN ('authorization_grant', 'verified_step_up')
|
|
1095
|
+
OR (NEW.authorization_source_kind = 'authorization_grant'
|
|
1096
|
+
AND (NEW.authorization_grant_kind IS NULL OR NEW.authorization_grant_kind NOT IN (
|
|
1097
|
+
'wallet_session_authorization',
|
|
1098
|
+
'linked_device_wallet_session_authorization_v1'
|
|
1099
|
+
)))
|
|
1100
|
+
OR (NEW.authorization_source_kind = 'authorization_grant'
|
|
1101
|
+
AND NEW.authorization_grant_kind = 'linked_device_wallet_session_authorization_v1'
|
|
1102
|
+
AND (NEW.linked_scope_org_id IS NULL
|
|
1103
|
+
OR NEW.linked_scope_project_id IS NULL
|
|
1104
|
+
OR NEW.linked_scope_env_id IS NULL))
|
|
1105
|
+
OR (NEW.authorization_source_kind = 'verified_step_up'
|
|
1106
|
+
AND NEW.authorization_grant_kind IS NOT NULL)
|
|
1107
|
+
)
|
|
1108
|
+
BEGIN
|
|
1109
|
+
SELECT RAISE(ABORT, 'authorization_grant_kind_rejected');
|
|
1110
|
+
END;
|
|
1111
|
+
|
|
1112
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_linked_grant_claim_atomic
|
|
1113
|
+
AFTER INSERT ON authorized_operations
|
|
1114
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1115
|
+
AND NEW.authorization_source_kind = 'authorization_grant'
|
|
1116
|
+
AND NEW.authorization_grant_kind = 'linked_device_wallet_session_authorization_v1'
|
|
1117
|
+
BEGIN
|
|
1118
|
+
SELECT CASE
|
|
1119
|
+
WHEN NEW.quota_kind != 'consume_reusable_wallet_session'
|
|
1120
|
+
OR NEW.capability_kind NOT IN ('near_ed25519_mpc_signing', 'evm_ecdsa_mpc_signing')
|
|
1121
|
+
OR NEW.operation_kind IN ('near.export_key', 'evm.export_key')
|
|
1122
|
+
OR NOT EXISTS (
|
|
1123
|
+
SELECT 1
|
|
1124
|
+
FROM linked_device_wallet_session_authorizations AS grant_record
|
|
1125
|
+
JOIN lane_enrollments AS enrollment
|
|
1126
|
+
ON enrollment.namespace = grant_record.namespace
|
|
1127
|
+
AND enrollment.org_id = grant_record.org_id
|
|
1128
|
+
AND enrollment.project_id = grant_record.project_id
|
|
1129
|
+
AND enrollment.env_id = grant_record.env_id
|
|
1130
|
+
AND enrollment.org_id = NEW.linked_scope_org_id
|
|
1131
|
+
AND enrollment.project_id = NEW.linked_scope_project_id
|
|
1132
|
+
AND enrollment.env_id = NEW.linked_scope_env_id
|
|
1133
|
+
AND enrollment.enrollment_id = grant_record.enrollment_id
|
|
1134
|
+
AND enrollment.wallet_id = grant_record.wallet_id
|
|
1135
|
+
AND json_extract(enrollment.lifecycle_json, '$.state') = 'active'
|
|
1136
|
+
AND json_extract(enrollment.lifecycle_json, '$.manifestDigestB64u') = grant_record.key_manifest_digest_b64u
|
|
1137
|
+
JOIN lane_product_epochs AS product
|
|
1138
|
+
ON product.namespace = grant_record.namespace
|
|
1139
|
+
AND product.org_id = grant_record.org_id
|
|
1140
|
+
AND product.project_id = grant_record.project_id
|
|
1141
|
+
AND product.env_id = grant_record.env_id
|
|
1142
|
+
AND product.org_id = NEW.linked_scope_org_id
|
|
1143
|
+
AND product.project_id = NEW.linked_scope_project_id
|
|
1144
|
+
AND product.env_id = NEW.linked_scope_env_id
|
|
1145
|
+
AND product.enrollment_id = grant_record.enrollment_id
|
|
1146
|
+
AND product.wallet_id = grant_record.wallet_id
|
|
1147
|
+
AND product.wallet_id = NEW.linked_wallet_id
|
|
1148
|
+
AND product.enrollment_id = NEW.linked_enrollment_id
|
|
1149
|
+
AND product.wallet_key_id = NEW.linked_wallet_key_id
|
|
1150
|
+
AND product.lane_id = NEW.linked_lane_id
|
|
1151
|
+
AND product.lane_share_epoch = NEW.linked_lane_share_epoch
|
|
1152
|
+
AND product.target_material_activation_id = NEW.material_activation_id
|
|
1153
|
+
AND product.revocation_epoch = NEW.linked_revocation_epoch
|
|
1154
|
+
AND product.state = 'active'
|
|
1155
|
+
AND product.lane_kind = 'linked_device'
|
|
1156
|
+
AND (
|
|
1157
|
+
(NEW.capability_kind = 'near_ed25519_mpc_signing' AND product.key_family = 'ed25519')
|
|
1158
|
+
OR (NEW.capability_kind = 'evm_ecdsa_mpc_signing' AND product.key_family = 'ecdsa_secp256k1')
|
|
1159
|
+
)
|
|
1160
|
+
AND json_extract(product.material_activation_json, '$.activationId') = NEW.material_activation_id
|
|
1161
|
+
AND json_extract(product.material_activation_json, '$.capability') = NEW.material_activation_capability
|
|
1162
|
+
AND json_extract(product.material_activation_json, '$.materialOwner') = NEW.material_activation_owner
|
|
1163
|
+
AND json_extract(product.material_activation_json, '$.keyBinding') = NEW.material_activation_key_binding
|
|
1164
|
+
AND json_extract(product.material_activation_json, '$.lifecycleBinding') = NEW.material_activation_lifecycle_binding
|
|
1165
|
+
AND json_extract(product.material_activation_json, '$.signingWorker') = NEW.material_activation_signing_worker
|
|
1166
|
+
JOIN lane_protocol_operations AS protocol
|
|
1167
|
+
ON protocol.namespace = product.namespace
|
|
1168
|
+
AND protocol.org_id = product.org_id
|
|
1169
|
+
AND protocol.project_id = product.project_id
|
|
1170
|
+
AND protocol.env_id = product.env_id
|
|
1171
|
+
AND protocol.org_id = NEW.linked_scope_org_id
|
|
1172
|
+
AND protocol.project_id = NEW.linked_scope_project_id
|
|
1173
|
+
AND protocol.env_id = NEW.linked_scope_env_id
|
|
1174
|
+
AND protocol.operation_id = product.operation_id
|
|
1175
|
+
AND protocol.enrollment_id = product.enrollment_id
|
|
1176
|
+
AND protocol.enrollment_id = NEW.linked_enrollment_id
|
|
1177
|
+
AND protocol.wallet_id = NEW.linked_wallet_id
|
|
1178
|
+
AND protocol.wallet_key_id = NEW.linked_wallet_key_id
|
|
1179
|
+
AND protocol.target_lane_id = NEW.linked_lane_id
|
|
1180
|
+
AND protocol.target_lane_share_epoch = NEW.linked_lane_share_epoch
|
|
1181
|
+
AND protocol.target_material_activation_id = product.target_material_activation_id
|
|
1182
|
+
AND protocol.target_material_activation_id = NEW.material_activation_id
|
|
1183
|
+
AND json_extract(protocol.lifecycle_json, '$.state') = 'active'
|
|
1184
|
+
WHERE grant_record.namespace = NEW.namespace
|
|
1185
|
+
AND grant_record.org_id = NEW.linked_scope_org_id
|
|
1186
|
+
AND grant_record.project_id = NEW.linked_scope_project_id
|
|
1187
|
+
AND grant_record.env_id = NEW.linked_scope_env_id
|
|
1188
|
+
AND grant_record.org_id = product.org_id
|
|
1189
|
+
AND grant_record.project_id = product.project_id
|
|
1190
|
+
AND grant_record.env_id = product.env_id
|
|
1191
|
+
AND grant_record.tenant_id = NEW.tenant_id
|
|
1192
|
+
AND grant_record.authorization_id = NEW.authorization_id
|
|
1193
|
+
AND grant_record.principal_id = NEW.principal_id
|
|
1194
|
+
AND grant_record.quota_id = NEW.quota_id
|
|
1195
|
+
AND grant_record.wallet_id = NEW.linked_wallet_id
|
|
1196
|
+
AND grant_record.enrollment_id = NEW.linked_enrollment_id
|
|
1197
|
+
AND grant_record.device_id = NEW.linked_device_id
|
|
1198
|
+
AND grant_record.lifecycle_kind = 'active'
|
|
1199
|
+
AND grant_record.expires_at_ms > NEW.claimed_at_ms
|
|
1200
|
+
AND json_extract(grant_record.permission_json, '$.kind') = 'owner_equivalent_signing'
|
|
1201
|
+
AND json_extract(grant_record.permission_json, '$.administrationScope') = 'signing_only'
|
|
1202
|
+
AND json_extract(grant_record.permission_json, '$.localUserPresence') = 'required'
|
|
1203
|
+
)
|
|
1204
|
+
THEN RAISE(ABORT, 'authorization_linked_device_rejected')
|
|
1205
|
+
END;
|
|
1206
|
+
|
|
1207
|
+
UPDATE linked_device_wallet_session_quotas
|
|
1208
|
+
SET remaining_uses = remaining_uses - 1,
|
|
1209
|
+
lifecycle_kind = CASE WHEN remaining_uses = 1 THEN 'exhausted' ELSE 'active' END
|
|
1210
|
+
WHERE NEW.quota_kind = 'consume_reusable_wallet_session'
|
|
1211
|
+
AND namespace = NEW.namespace
|
|
1212
|
+
AND org_id = NEW.linked_scope_org_id
|
|
1213
|
+
AND project_id = NEW.linked_scope_project_id
|
|
1214
|
+
AND env_id = NEW.linked_scope_env_id
|
|
1215
|
+
AND tenant_id = NEW.tenant_id
|
|
1216
|
+
AND quota_id = NEW.quota_id
|
|
1217
|
+
AND authorization_id = NEW.authorization_id
|
|
1218
|
+
AND principal_id = NEW.principal_id
|
|
1219
|
+
AND lifecycle_kind = 'active'
|
|
1220
|
+
AND remaining_uses > 0
|
|
1221
|
+
AND expires_at_ms > NEW.claimed_at_ms;
|
|
1222
|
+
|
|
1223
|
+
SELECT CASE
|
|
1224
|
+
WHEN NEW.quota_kind = 'consume_reusable_wallet_session' AND changes() != 1
|
|
1225
|
+
THEN RAISE(ABORT, 'authorization_wallet_session_quota_rejected')
|
|
1226
|
+
END;
|
|
1227
|
+
END;
|
|
1228
|
+
|
|
1229
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_linked_grant_claim_atomic
|
|
1230
|
+
AFTER INSERT ON authorized_operations
|
|
1231
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1232
|
+
AND NEW.authorization_source_kind = 'authorization_grant'
|
|
1233
|
+
AND NEW.authorization_grant_kind = 'linked_device_wallet_session_authorization_v1'
|
|
1234
|
+
BEGIN
|
|
1235
|
+
SELECT CASE
|
|
1236
|
+
WHEN NEW.quota_kind != 'consume_reusable_wallet_session'
|
|
1237
|
+
OR NEW.capability_kind NOT IN ('near_ed25519_mpc_signing', 'evm_ecdsa_mpc_signing')
|
|
1238
|
+
OR NEW.operation_kind IN ('near.export_key', 'evm.export_key')
|
|
1239
|
+
OR NOT EXISTS (
|
|
1240
|
+
SELECT 1
|
|
1241
|
+
FROM linked_device_wallet_session_authorizations AS grant_record
|
|
1242
|
+
JOIN lane_enrollments AS enrollment
|
|
1243
|
+
ON enrollment.namespace = grant_record.namespace
|
|
1244
|
+
AND enrollment.org_id = grant_record.org_id
|
|
1245
|
+
AND enrollment.project_id = grant_record.project_id
|
|
1246
|
+
AND enrollment.env_id = grant_record.env_id
|
|
1247
|
+
AND enrollment.org_id = NEW.linked_scope_org_id
|
|
1248
|
+
AND enrollment.project_id = NEW.linked_scope_project_id
|
|
1249
|
+
AND enrollment.env_id = NEW.linked_scope_env_id
|
|
1250
|
+
AND enrollment.enrollment_id = grant_record.enrollment_id
|
|
1251
|
+
AND enrollment.wallet_id = grant_record.wallet_id
|
|
1252
|
+
AND json_extract(enrollment.lifecycle_json, '$.state') = 'active'
|
|
1253
|
+
AND json_extract(enrollment.lifecycle_json, '$.manifestDigestB64u') = grant_record.key_manifest_digest_b64u
|
|
1254
|
+
JOIN lane_product_epochs AS product
|
|
1255
|
+
ON product.namespace = grant_record.namespace
|
|
1256
|
+
AND product.org_id = grant_record.org_id
|
|
1257
|
+
AND product.project_id = grant_record.project_id
|
|
1258
|
+
AND product.env_id = grant_record.env_id
|
|
1259
|
+
AND product.org_id = NEW.linked_scope_org_id
|
|
1260
|
+
AND product.project_id = NEW.linked_scope_project_id
|
|
1261
|
+
AND product.env_id = NEW.linked_scope_env_id
|
|
1262
|
+
AND product.enrollment_id = grant_record.enrollment_id
|
|
1263
|
+
AND product.wallet_id = grant_record.wallet_id
|
|
1264
|
+
AND product.wallet_id = NEW.linked_wallet_id
|
|
1265
|
+
AND product.enrollment_id = NEW.linked_enrollment_id
|
|
1266
|
+
AND product.wallet_key_id = NEW.linked_wallet_key_id
|
|
1267
|
+
AND product.lane_id = NEW.linked_lane_id
|
|
1268
|
+
AND product.lane_share_epoch = NEW.linked_lane_share_epoch
|
|
1269
|
+
AND product.target_material_activation_id = NEW.material_activation_id
|
|
1270
|
+
AND product.revocation_epoch = NEW.linked_revocation_epoch
|
|
1271
|
+
AND product.state = 'active'
|
|
1272
|
+
AND product.lane_kind = 'linked_device'
|
|
1273
|
+
AND (
|
|
1274
|
+
(NEW.capability_kind = 'near_ed25519_mpc_signing' AND product.key_family = 'ed25519')
|
|
1275
|
+
OR (NEW.capability_kind = 'evm_ecdsa_mpc_signing' AND product.key_family = 'ecdsa_secp256k1')
|
|
1276
|
+
)
|
|
1277
|
+
AND json_extract(product.material_activation_json, '$.activationId') = NEW.material_activation_id
|
|
1278
|
+
AND json_extract(product.material_activation_json, '$.capability') = NEW.material_activation_capability
|
|
1279
|
+
AND json_extract(product.material_activation_json, '$.materialOwner') = NEW.material_activation_owner
|
|
1280
|
+
AND json_extract(product.material_activation_json, '$.keyBinding') = NEW.material_activation_key_binding
|
|
1281
|
+
AND json_extract(product.material_activation_json, '$.lifecycleBinding') = NEW.material_activation_lifecycle_binding
|
|
1282
|
+
AND json_extract(product.material_activation_json, '$.signingWorker') = NEW.material_activation_signing_worker
|
|
1283
|
+
JOIN lane_protocol_operations AS protocol
|
|
1284
|
+
ON protocol.namespace = product.namespace
|
|
1285
|
+
AND protocol.org_id = product.org_id
|
|
1286
|
+
AND protocol.project_id = product.project_id
|
|
1287
|
+
AND protocol.env_id = product.env_id
|
|
1288
|
+
AND protocol.org_id = NEW.linked_scope_org_id
|
|
1289
|
+
AND protocol.project_id = NEW.linked_scope_project_id
|
|
1290
|
+
AND protocol.env_id = NEW.linked_scope_env_id
|
|
1291
|
+
AND protocol.operation_id = product.operation_id
|
|
1292
|
+
AND protocol.enrollment_id = product.enrollment_id
|
|
1293
|
+
AND protocol.enrollment_id = NEW.linked_enrollment_id
|
|
1294
|
+
AND protocol.wallet_id = NEW.linked_wallet_id
|
|
1295
|
+
AND protocol.wallet_key_id = NEW.linked_wallet_key_id
|
|
1296
|
+
AND protocol.target_lane_id = NEW.linked_lane_id
|
|
1297
|
+
AND protocol.target_lane_share_epoch = NEW.linked_lane_share_epoch
|
|
1298
|
+
AND protocol.target_material_activation_id = product.target_material_activation_id
|
|
1299
|
+
AND protocol.target_material_activation_id = NEW.material_activation_id
|
|
1300
|
+
AND json_extract(protocol.lifecycle_json, '$.state') = 'active'
|
|
1301
|
+
WHERE grant_record.namespace = NEW.namespace
|
|
1302
|
+
AND grant_record.org_id = NEW.linked_scope_org_id
|
|
1303
|
+
AND grant_record.project_id = NEW.linked_scope_project_id
|
|
1304
|
+
AND grant_record.env_id = NEW.linked_scope_env_id
|
|
1305
|
+
AND grant_record.org_id = product.org_id
|
|
1306
|
+
AND grant_record.project_id = product.project_id
|
|
1307
|
+
AND grant_record.env_id = product.env_id
|
|
1308
|
+
AND grant_record.tenant_id = NEW.tenant_id
|
|
1309
|
+
AND grant_record.authorization_id = NEW.authorization_id
|
|
1310
|
+
AND grant_record.principal_id = NEW.principal_id
|
|
1311
|
+
AND grant_record.quota_id = NEW.quota_id
|
|
1312
|
+
AND grant_record.wallet_id = NEW.linked_wallet_id
|
|
1313
|
+
AND grant_record.enrollment_id = NEW.linked_enrollment_id
|
|
1314
|
+
AND grant_record.device_id = NEW.linked_device_id
|
|
1315
|
+
AND grant_record.lifecycle_kind = 'active'
|
|
1316
|
+
AND grant_record.expires_at_ms > NEW.claimed_at_ms
|
|
1317
|
+
AND json_extract(grant_record.permission_json, '$.kind') = 'owner_equivalent_signing'
|
|
1318
|
+
AND json_extract(grant_record.permission_json, '$.administrationScope') = 'signing_only'
|
|
1319
|
+
AND json_extract(grant_record.permission_json, '$.localUserPresence') = 'required'
|
|
1320
|
+
)
|
|
1321
|
+
THEN RAISE(ABORT, 'authorization_linked_device_rejected')
|
|
1322
|
+
END;
|
|
1323
|
+
|
|
1324
|
+
UPDATE linked_device_wallet_session_quotas
|
|
1325
|
+
SET remaining_uses = remaining_uses - 1,
|
|
1326
|
+
lifecycle_kind = CASE WHEN remaining_uses = 1 THEN 'exhausted' ELSE 'active' END
|
|
1327
|
+
WHERE NEW.quota_kind = 'consume_reusable_wallet_session'
|
|
1328
|
+
AND namespace = NEW.namespace
|
|
1329
|
+
AND org_id = NEW.linked_scope_org_id
|
|
1330
|
+
AND project_id = NEW.linked_scope_project_id
|
|
1331
|
+
AND env_id = NEW.linked_scope_env_id
|
|
1332
|
+
AND tenant_id = NEW.tenant_id
|
|
1333
|
+
AND quota_id = NEW.quota_id
|
|
1334
|
+
AND authorization_id = NEW.authorization_id
|
|
1335
|
+
AND principal_id = NEW.principal_id
|
|
1336
|
+
AND lifecycle_kind = 'active'
|
|
1337
|
+
AND remaining_uses > 0
|
|
1338
|
+
AND expires_at_ms > NEW.claimed_at_ms;
|
|
1339
|
+
|
|
1340
|
+
SELECT CASE
|
|
1341
|
+
WHEN NEW.quota_kind = 'consume_reusable_wallet_session' AND changes() != 1
|
|
1342
|
+
THEN RAISE(ABORT, 'authorization_wallet_session_quota_rejected')
|
|
1343
|
+
END;
|
|
1344
|
+
END;
|
|
1345
|
+
|
|
1346
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_owner_grant_claim_atomic
|
|
1347
|
+
AFTER INSERT ON authorized_operations
|
|
1348
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1349
|
+
AND NEW.authorization_source_kind = 'authorization_grant'
|
|
1350
|
+
AND NEW.authorization_grant_kind = 'wallet_session_authorization'
|
|
1351
|
+
BEGIN
|
|
1352
|
+
SELECT CASE
|
|
1353
|
+
WHEN NOT EXISTS (
|
|
1354
|
+
SELECT 1
|
|
1355
|
+
FROM reusable_wallet_sessions AS session
|
|
1356
|
+
WHERE session.namespace = NEW.namespace
|
|
1357
|
+
AND session.tenant_id = NEW.tenant_id
|
|
1358
|
+
AND session.authorization_id = NEW.authorization_id
|
|
1359
|
+
AND session.principal_id = NEW.principal_id
|
|
1360
|
+
AND (NEW.quota_kind = 'quota_neutral' OR session.quota_id = NEW.quota_id)
|
|
1361
|
+
AND session.lifecycle_kind = 'active'
|
|
1362
|
+
AND session.expires_at_ms > NEW.claimed_at_ms
|
|
1363
|
+
)
|
|
1364
|
+
THEN RAISE(ABORT, 'authorization_wallet_session_rejected')
|
|
1365
|
+
END;
|
|
1366
|
+
|
|
1367
|
+
UPDATE authorization_wallet_session_quotas
|
|
1368
|
+
SET remaining_uses = remaining_uses - 1,
|
|
1369
|
+
lifecycle_kind = CASE WHEN remaining_uses = 1 THEN 'exhausted' ELSE 'active' END
|
|
1370
|
+
WHERE NEW.quota_kind = 'consume_reusable_wallet_session'
|
|
1371
|
+
AND namespace = NEW.namespace
|
|
1372
|
+
AND tenant_id = NEW.tenant_id
|
|
1373
|
+
AND quota_id = NEW.quota_id
|
|
1374
|
+
AND wallet_session_id = (
|
|
1375
|
+
SELECT session.wallet_session_id
|
|
1376
|
+
FROM reusable_wallet_sessions AS session
|
|
1377
|
+
WHERE session.namespace = NEW.namespace
|
|
1378
|
+
AND session.tenant_id = NEW.tenant_id
|
|
1379
|
+
AND session.authorization_id = NEW.authorization_id
|
|
1380
|
+
AND session.quota_id = NEW.quota_id
|
|
1381
|
+
)
|
|
1382
|
+
AND principal_id = NEW.principal_id
|
|
1383
|
+
AND lifecycle_kind = 'active'
|
|
1384
|
+
AND remaining_uses > 0
|
|
1385
|
+
AND expires_at_ms > NEW.claimed_at_ms;
|
|
1386
|
+
|
|
1387
|
+
SELECT CASE
|
|
1388
|
+
WHEN NEW.quota_kind = 'consume_reusable_wallet_session' AND changes() != 1
|
|
1389
|
+
THEN RAISE(ABORT, 'authorization_wallet_session_quota_rejected')
|
|
1390
|
+
END;
|
|
1391
|
+
END;
|
|
1392
|
+
|
|
1393
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_owner_grant_claim_atomic
|
|
1394
|
+
AFTER INSERT ON authorized_operations
|
|
1395
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1396
|
+
AND NEW.authorization_source_kind = 'authorization_grant'
|
|
1397
|
+
AND NEW.authorization_grant_kind = 'wallet_session_authorization'
|
|
1398
|
+
BEGIN
|
|
1399
|
+
SELECT CASE
|
|
1400
|
+
WHEN NOT EXISTS (
|
|
1401
|
+
SELECT 1
|
|
1402
|
+
FROM reusable_wallet_sessions AS session
|
|
1403
|
+
WHERE session.namespace = NEW.namespace
|
|
1404
|
+
AND session.tenant_id = NEW.tenant_id
|
|
1405
|
+
AND session.authorization_id = NEW.authorization_id
|
|
1406
|
+
AND session.principal_id = NEW.principal_id
|
|
1407
|
+
AND (NEW.quota_kind = 'quota_neutral' OR session.quota_id = NEW.quota_id)
|
|
1408
|
+
AND session.lifecycle_kind = 'active'
|
|
1409
|
+
AND session.expires_at_ms > NEW.claimed_at_ms
|
|
1410
|
+
)
|
|
1411
|
+
THEN RAISE(ABORT, 'authorization_wallet_session_rejected')
|
|
1412
|
+
END;
|
|
1413
|
+
|
|
1414
|
+
UPDATE authorization_wallet_session_quotas
|
|
1415
|
+
SET remaining_uses = remaining_uses - 1,
|
|
1416
|
+
lifecycle_kind = CASE WHEN remaining_uses = 1 THEN 'exhausted' ELSE 'active' END
|
|
1417
|
+
WHERE NEW.quota_kind = 'consume_reusable_wallet_session'
|
|
1418
|
+
AND namespace = NEW.namespace
|
|
1419
|
+
AND tenant_id = NEW.tenant_id
|
|
1420
|
+
AND quota_id = NEW.quota_id
|
|
1421
|
+
AND wallet_session_id = (
|
|
1422
|
+
SELECT session.wallet_session_id
|
|
1423
|
+
FROM reusable_wallet_sessions AS session
|
|
1424
|
+
WHERE session.namespace = NEW.namespace
|
|
1425
|
+
AND session.tenant_id = NEW.tenant_id
|
|
1426
|
+
AND session.authorization_id = NEW.authorization_id
|
|
1427
|
+
AND session.quota_id = NEW.quota_id
|
|
1428
|
+
)
|
|
1429
|
+
AND principal_id = NEW.principal_id
|
|
1430
|
+
AND lifecycle_kind = 'active'
|
|
1431
|
+
AND remaining_uses > 0
|
|
1432
|
+
AND expires_at_ms > NEW.claimed_at_ms;
|
|
1433
|
+
|
|
1434
|
+
SELECT CASE
|
|
1435
|
+
WHEN NEW.quota_kind = 'consume_reusable_wallet_session' AND changes() != 1
|
|
1436
|
+
THEN RAISE(ABORT, 'authorization_wallet_session_quota_rejected')
|
|
1437
|
+
END;
|
|
1438
|
+
END;
|
|
1439
|
+
|
|
1440
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_step_up_claim_atomic
|
|
1441
|
+
AFTER INSERT ON authorized_operations
|
|
1442
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1443
|
+
AND NEW.authorization_source_kind = 'verified_step_up'
|
|
1444
|
+
BEGIN
|
|
1445
|
+
SELECT CASE
|
|
1446
|
+
WHEN NOT EXISTS (
|
|
1447
|
+
SELECT 1
|
|
1448
|
+
FROM verified_grant_evidence_sets AS evidence
|
|
1449
|
+
JOIN authorization_sessions AS session
|
|
1450
|
+
ON session.namespace = evidence.namespace
|
|
1451
|
+
AND session.tenant_id = evidence.tenant_id
|
|
1452
|
+
AND session.session_id = evidence.session_id
|
|
1453
|
+
AND session.principal_id = evidence.principal_id
|
|
1454
|
+
WHERE evidence.namespace = NEW.namespace
|
|
1455
|
+
AND evidence.tenant_id = NEW.tenant_id
|
|
1456
|
+
AND evidence.evidence_set_digest = NEW.evidence_set_digest
|
|
1457
|
+
AND evidence.principal_id = NEW.principal_id
|
|
1458
|
+
AND evidence.capability_kind = NEW.capability_kind
|
|
1459
|
+
AND evidence.operation_kind = NEW.operation_kind
|
|
1460
|
+
AND evidence.lane_digest = NEW.lane_digest
|
|
1461
|
+
AND evidence.intent_digest = NEW.intent_digest
|
|
1462
|
+
AND evidence.display_digest = NEW.display_digest
|
|
1463
|
+
AND evidence.assurance = 'step_up'
|
|
1464
|
+
AND evidence.expires_at_ms > NEW.claimed_at_ms
|
|
1465
|
+
AND session.lifecycle_kind = 'active'
|
|
1466
|
+
AND session.expires_at_ms > NEW.claimed_at_ms
|
|
1467
|
+
)
|
|
1468
|
+
THEN RAISE(ABORT, 'authorization_evidence_claim_rejected')
|
|
1469
|
+
END;
|
|
1470
|
+
END;
|
|
1471
|
+
|
|
1472
|
+
CREATE TRIGGER IF NOT EXISTS authorized_operation_step_up_claim_atomic
|
|
1473
|
+
AFTER INSERT ON authorized_operations
|
|
1474
|
+
WHEN NEW.lifecycle_kind = 'claimed'
|
|
1475
|
+
AND NEW.authorization_source_kind = 'verified_step_up'
|
|
1476
|
+
BEGIN
|
|
1477
|
+
SELECT CASE
|
|
1478
|
+
WHEN NOT EXISTS (
|
|
1479
|
+
SELECT 1
|
|
1480
|
+
FROM verified_grant_evidence_sets AS evidence
|
|
1481
|
+
JOIN authorization_sessions AS session
|
|
1482
|
+
ON session.namespace = evidence.namespace
|
|
1483
|
+
AND session.tenant_id = evidence.tenant_id
|
|
1484
|
+
AND session.session_id = evidence.session_id
|
|
1485
|
+
AND session.principal_id = evidence.principal_id
|
|
1486
|
+
WHERE evidence.namespace = NEW.namespace
|
|
1487
|
+
AND evidence.tenant_id = NEW.tenant_id
|
|
1488
|
+
AND evidence.evidence_set_digest = NEW.evidence_set_digest
|
|
1489
|
+
AND evidence.principal_id = NEW.principal_id
|
|
1490
|
+
AND evidence.capability_kind = NEW.capability_kind
|
|
1491
|
+
AND evidence.operation_kind = NEW.operation_kind
|
|
1492
|
+
AND evidence.lane_digest = NEW.lane_digest
|
|
1493
|
+
AND evidence.intent_digest = NEW.intent_digest
|
|
1494
|
+
AND evidence.display_digest = NEW.display_digest
|
|
1495
|
+
AND evidence.assurance = 'step_up'
|
|
1496
|
+
AND evidence.expires_at_ms > NEW.claimed_at_ms
|
|
1497
|
+
AND session.lifecycle_kind = 'active'
|
|
1498
|
+
AND session.expires_at_ms > NEW.claimed_at_ms
|
|
1499
|
+
)
|
|
1500
|
+
THEN RAISE(ABORT, 'authorization_evidence_claim_rejected')
|
|
1501
|
+
END;
|
|
1502
|
+
END;
|
|
1503
|
+
|
|
1504
|
+
CREATE TRIGGER IF NOT EXISTS lane_cas_guard_no_delete
|
|
1505
|
+
BEFORE DELETE ON lane_cas_guard
|
|
1506
|
+
BEGIN
|
|
1507
|
+
SELECT RAISE(ABORT, 'lane_cas_guard is immutable');
|
|
1508
|
+
END;
|
|
1509
|
+
|
|
1510
|
+
CREATE TRIGGER IF NOT EXISTS linked_device_wallet_session_authorization_identity_insert
|
|
1511
|
+
BEFORE INSERT ON linked_device_wallet_session_authorizations
|
|
1512
|
+
WHEN NEW.principal_id != 'linked-device:' || NEW.device_id
|
|
1513
|
+
OR NEW.wallet_session_id = NEW.authorization_id
|
|
1514
|
+
OR NEW.wallet_session_id = NEW.quota_id
|
|
1515
|
+
OR NEW.authorization_id = NEW.quota_id
|
|
1516
|
+
OR json_extract(NEW.permission_json, '$.kind') IS NOT 'owner_equivalent_signing'
|
|
1517
|
+
OR json_extract(NEW.permission_json, '$.administrationScope') IS NOT 'signing_only'
|
|
1518
|
+
OR json_extract(NEW.permission_json, '$.localUserPresence') IS NOT 'required'
|
|
1519
|
+
BEGIN
|
|
1520
|
+
SELECT RAISE(ABORT, 'linked_device_wallet_session_authorization_identity_rejected');
|
|
1521
|
+
END;
|
|
1522
|
+
|
|
1523
|
+
CREATE TRIGGER IF NOT EXISTS linked_device_wallet_session_authorization_identity_update
|
|
1524
|
+
BEFORE UPDATE OF principal_id, device_id, authorization_id, wallet_session_id, quota_id, permission_json
|
|
1525
|
+
ON linked_device_wallet_session_authorizations
|
|
1526
|
+
WHEN NEW.principal_id != 'linked-device:' || NEW.device_id
|
|
1527
|
+
OR NEW.wallet_session_id = NEW.authorization_id
|
|
1528
|
+
OR NEW.wallet_session_id = NEW.quota_id
|
|
1529
|
+
OR NEW.authorization_id = NEW.quota_id
|
|
1530
|
+
OR json_extract(NEW.permission_json, '$.kind') IS NOT 'owner_equivalent_signing'
|
|
1531
|
+
OR json_extract(NEW.permission_json, '$.administrationScope') IS NOT 'signing_only'
|
|
1532
|
+
OR json_extract(NEW.permission_json, '$.localUserPresence') IS NOT 'required'
|
|
1533
|
+
BEGIN
|
|
1534
|
+
SELECT RAISE(ABORT, 'linked_device_wallet_session_authorization_identity_rejected');
|
|
1535
|
+
END;
|
|
1536
|
+
|
|
1537
|
+
CREATE TRIGGER IF NOT EXISTS linked_device_wallet_session_authorization_revoke_atomic
|
|
1538
|
+
AFTER UPDATE OF lifecycle_kind ON linked_device_wallet_session_authorizations
|
|
1539
|
+
WHEN OLD.lifecycle_kind = 'active' AND NEW.lifecycle_kind = 'revoked'
|
|
1540
|
+
BEGIN
|
|
1541
|
+
UPDATE linked_device_wallet_session_quotas
|
|
1542
|
+
SET remaining_uses = 0,
|
|
1543
|
+
lifecycle_kind = 'revoked'
|
|
1544
|
+
WHERE namespace = NEW.namespace
|
|
1545
|
+
AND org_id = NEW.org_id
|
|
1546
|
+
AND project_id = NEW.project_id
|
|
1547
|
+
AND env_id = NEW.env_id
|
|
1548
|
+
AND tenant_id = NEW.tenant_id
|
|
1549
|
+
AND authorization_id = NEW.authorization_id
|
|
1550
|
+
AND quota_id = NEW.quota_id
|
|
1551
|
+
AND lifecycle_kind != 'revoked';
|
|
1552
|
+
|
|
1553
|
+
SELECT CASE
|
|
1554
|
+
WHEN changes() != 1
|
|
1555
|
+
THEN RAISE(ABORT, 'linked_device_wallet_session_quota_revoke_rejected')
|
|
1556
|
+
END;
|
|
1557
|
+
END;
|
|
1558
|
+
|
|
1559
|
+
CREATE TRIGGER IF NOT EXISTS linked_device_wallet_session_quota_revoke_guard
|
|
1560
|
+
BEFORE UPDATE OF lifecycle_kind, remaining_uses ON linked_device_wallet_session_quotas
|
|
1561
|
+
WHEN NEW.lifecycle_kind = 'revoked'
|
|
1562
|
+
AND NOT EXISTS (
|
|
1563
|
+
SELECT 1
|
|
1564
|
+
FROM linked_device_wallet_session_authorizations AS authorization
|
|
1565
|
+
WHERE authorization.namespace = NEW.namespace
|
|
1566
|
+
AND authorization.org_id = NEW.org_id
|
|
1567
|
+
AND authorization.project_id = NEW.project_id
|
|
1568
|
+
AND authorization.env_id = NEW.env_id
|
|
1569
|
+
AND authorization.tenant_id = NEW.tenant_id
|
|
1570
|
+
AND authorization.authorization_id = NEW.authorization_id
|
|
1571
|
+
AND authorization.quota_id = NEW.quota_id
|
|
1572
|
+
AND authorization.lifecycle_kind = 'revoked'
|
|
1573
|
+
)
|
|
1574
|
+
BEGIN
|
|
1575
|
+
SELECT RAISE(ABORT, 'linked_device_wallet_session_quota_revoke_rejected');
|
|
1576
|
+
END;
|