@absol-labs/agent 0.7.2 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -4
- package/dist/gateway/caller-auth-gateway.d.ts +103 -2
- package/dist/gateway/caller-auth-gateway.d.ts.map +1 -1
- package/dist/gateway/caller-auth-gateway.js +176 -19
- package/dist/gateway/caller-auth-gateway.js.map +1 -1
- package/dist/gateway/http-server.d.ts +12 -0
- package/dist/gateway/http-server.d.ts.map +1 -1
- package/dist/gateway/http-server.js +45 -1
- package/dist/gateway/http-server.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/wallet/autonomous-wallet-store.d.ts +123 -0
- package/dist/wallet/autonomous-wallet-store.d.ts.map +1 -0
- package/dist/wallet/autonomous-wallet-store.js +318 -0
- package/dist/wallet/autonomous-wallet-store.js.map +1 -0
- package/dist/wallet/autonomous-wallet.d.ts +14 -39
- package/dist/wallet/autonomous-wallet.d.ts.map +1 -1
- package/dist/wallet/autonomous-wallet.js +12 -145
- package/dist/wallet/autonomous-wallet.js.map +1 -1
- package/dist/wallet/encrypted-file-credential-store.d.ts +41 -0
- package/dist/wallet/encrypted-file-credential-store.d.ts.map +1 -0
- package/dist/wallet/encrypted-file-credential-store.js +221 -0
- package/dist/wallet/encrypted-file-credential-store.js.map +1 -0
- package/dist/wallet/provider.d.ts.map +1 -1
- package/dist/wallet/provider.js +22 -2
- package/dist/wallet/provider.js.map +1 -1
- package/dist/wallet/secret-service-probe.d.ts +56 -0
- package/dist/wallet/secret-service-probe.d.ts.map +1 -0
- package/dist/wallet/secret-service-probe.js +407 -0
- package/dist/wallet/secret-service-probe.js.map +1 -0
- package/package.json +1 -1
- package/src/gateway/caller-auth-gateway.ts +281 -15
- package/src/gateway/http-server.ts +64 -0
- package/src/index.ts +19 -0
- package/src/wallet/autonomous-wallet-store.ts +487 -0
- package/src/wallet/autonomous-wallet.ts +57 -224
- package/src/wallet/encrypted-file-credential-store.ts +341 -0
- package/src/wallet/provider.ts +23 -1
- package/src/wallet/secret-service-probe.ts +487 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-server.js","sourceRoot":"","sources":["../../src/gateway/http-server.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,GAIb,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,SAAS,EAAE,KAAK,EAA0B,MAAM,MAAM,CAAC;AAEhE,OAAO,EACL,iBAAiB,
|
|
1
|
+
{"version":3,"file":"http-server.js","sourceRoot":"","sources":["../../src/gateway/http-server.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,13 +9,13 @@ export { AgentWalletConfigError, createPrivyEmbeddedAccount, createWalletBackedA
|
|
|
9
9
|
export { InMemoryPrivyBrokerSessionStore, PRIVY_BROKER_CAIP2, PRIVY_BROKER_CHAIN_ID, PRIVY_BROKER_ESCROW, PRIVY_BROKER_USDC, PRIVY_MAX_SESSION_SECONDS, PRIVY_POLICY_MAX_DURATION_SECONDS, PRIVY_POLICY_MAX_RATE_USDC, PRIVY_POLICY_MAX_TOTAL_USDC, PrivySessionBroker, PrivySessionBrokerError, type BrokerStreamReader, type CreatePrivyBrokerSessionInput, type PrivyBrokerProvider, type PrivyBrokerRpcInput, type PrivyBrokerSession, type PrivyBrokerSessionStore, } from "./wallet/privy-session-broker.js";
|
|
10
10
|
export { createPrivySessionProvider, PrivySessionProviderError, type PrivySessionProviderConfig, } from "./wallet/privy-session-provider.js";
|
|
11
11
|
export { JsonAutonomousWalletBrokerStore, JsonPrivyBrokerSessionStore, startPrivyBrokerServer, } from "./wallet/privy-broker-server.js";
|
|
12
|
-
export { AUTONOMOUS_WALLET_CAIP2, AUTONOMOUS_WALLET_CHAIN_ID, AUTONOMOUS_WALLET_VERSION, METRIK_AUTONOMOUS_WALLET_BROKER_URL, AutonomousWalletError, HttpAutonomousWalletBroker, InMemoryAutonomousWalletStore, OsCredentialStore, autonomousProofBytes, createAutonomousWalletAccount, createAutonomousWalletProvider, createDefaultAutonomousWalletStore, provisionAutonomousWallet, provisionMetrikAutonomousWallet, type AutonomousWalletBroker as AutonomousWalletClientBroker, type AutonomousWalletCredentialStore, type AutonomousWalletProof, type AutonomousWalletRecord, type CreateAutonomousWalletProviderOptions, type PreparedPrivyRequest, type ProvisionAutonomousWalletOptions, type ProvisionMetrikAutonomousWalletOptions, } from "./wallet/autonomous-wallet.js";
|
|
12
|
+
export { AUTONOMOUS_WALLET_CAIP2, AUTONOMOUS_WALLET_CHAIN_ID, AUTONOMOUS_WALLET_KEYCHAIN_SERVICE, AUTONOMOUS_WALLET_VERSION, METRIK_AUTONOMOUS_WALLET_BROKER_URL, METRIK_WALLET_ENCRYPTION_KEY_ENV, METRIK_WALLET_STORE_DIR_ENV, AutonomousWalletError, EncryptedFileCredentialStore, HttpAutonomousWalletBroker, InMemoryAutonomousWalletStore, OsCredentialStore, assertDurableCredentialStore, autonomousProofBytes, createAutonomousWalletAccount, createAutonomousWalletProvider, createDefaultAutonomousWalletStore, probeSecretServiceAvailable, provisionAutonomousWallet, provisionMetrikAutonomousWallet, type AssertDurableCredentialStoreOptions, type AutonomousWalletBroker as AutonomousWalletClientBroker, type AutonomousWalletCredentialStore, type AutonomousWalletProof, type AutonomousWalletRecord, type CreateAutonomousWalletProviderOptions, type CredentialStoreDurability, type CredentialStoreDurabilityReport, type EncryptedFileCredentialStoreOptions, type OsCredentialStoreOptions, type PreparedPrivyRequest, type ProbeSecretServiceOptions, type ProvisionAutonomousWalletOptions, type ProvisionMetrikAutonomousWalletOptions, type SecretEntryFactory, type SecretEntryLike, type SecretServiceProbeResult, } from "./wallet/autonomous-wallet.js";
|
|
13
13
|
export { AutonomousWalletBroker, AutonomousWalletBrokerError, InMemoryAutonomousWalletBrokerStore, createPrivyAutonomousProvider, type AutonomousPreparedRequest, type AutonomousPrivyProvider, type AutonomousWalletBrokerOptions, type AutonomousWalletBrokerStore, type AutonomousWalletProvision, } from "./wallet/autonomous-wallet-broker.js";
|
|
14
14
|
export { UnsupportedFaucetChainError, faucetHint, getWalletBalances, requestCdpFaucet, type BalanceReader, type CdpFaucetClientLike, type FaucetHint, type FaucetRequestResult, type FaucetToken, type GetWalletBalancesOptions, type RequestCdpFaucetOptions, type WalletBalances, } from "./wallet/lifecycle.js";
|
|
15
15
|
export { ReclaimConsumerProofService, ResponseProofUnavailableError, ResponseProofVerificationError, buildDeliveryContextEnvelopeV2, createReclaimConsumerProofServiceFromEnv, deliveryContextEnvelopeV2Schema, parseReclaimProofEnv, type ConsumerDeliveryProofService, type DeliveryContextEnvelopeV2, type DeliveryContextEnvelopeV2Input, type DeliveryProofBinding, type HttpsResponseMatch, type HttpsResponseRedaction, type ParsedReclaimProofEnv, type ProveConsumedHttpsResponseInput, type ReclaimClientLike, type ReclaimProof, type ReclaimProofServiceConfig, type VerifiedConsumedHttpsResponseProof, type VerifyProofFn, } from "./zktls/reclaim.js";
|
|
16
16
|
export { NoDeliveryAttestorConfiguredError, PaidRouteNonceInjectionError, ReclaimDeliveryProofAttestor, buildT2DeliveryProofSubmission, createReclaimT2AttestorFromEnv, deliveryProofRequestBodySchema, toWireDeliveryReceipt, type BuildT2DeliveryProofInput, type BuildT2DeliveryProofResult, type DeliveryProofAttestor, type DeliveryProofRequestBody, type PaidRouteRequestSpec, type ProveDeliveryResponseInput, type T2NonceInjection, type WireDeliveryReceipt, } from "./zktls/t2-delivery-proof.js";
|
|
17
17
|
export { CAPABILITY_HEADER_NAME, DEFAULT_CAPABILITY_TTL_SECONDS, InvalidCapabilityHeaderError, buildInvocationCapabilityTypedData, createInvocationCapabilityEip712Domain, decodeCapabilityHeader, encodeCapabilityHeader, generateCapabilityNonce, hashInvocationPath, httpMethodSchema, invocationCapabilityDomainName, invocationCapabilityDomainVersion, invocationCapabilitySchema, invocationCapabilityTypedData, normalizeInvocationPath, recoverInvocationCapabilitySigner, signInvocationCapability, signedInvocationCapabilitySchema, type HttpMethod, type InvocationCapability, type InvocationCapabilityDomainInput, type SignedInvocationCapability, } from "./capability/invocation-capability.js";
|
|
18
|
-
export { CallerAuthGateway, InMemoryNonceReplayCache, UnknownStreamGatewayError, createSdkStreamReader, type CallerAuthDecision, type CallerAuthDenialReason, type CallerAuthGatewayConfig, type CallerAuthRequestInput, type GatewayStreamView, type NonceReplayCache, type StreamReader, } from "./gateway/caller-auth-gateway.js";
|
|
18
|
+
export { CallerAuthGateway, DEFAULT_MAX_STATE_STALENESS_SECONDS, InMemoryNonceReplayCache, InMemoryStreamRevocationSet, MAX_CORROBORATING_STREAM_READERS, UnknownStreamGatewayError, createSdkStreamReader, type CallerAuthDecision, type CallerAuthDenialReason, type CallerAuthGatewayConfig, type CallerAuthRequestInput, type GatewayStreamView, type NonceReplayCache, type StreamReader, type StreamRevocationSet, } from "./gateway/caller-auth-gateway.js";
|
|
19
19
|
export { createCallerAuthGatewayServer, parseCallerAuthGatewayEnvConfig, startCallerAuthGatewayServerFromEnv, type CallerAuthGatewayEnvConfig, type CallerAuthGatewayServer, type CallerAuthGatewayServerConfig, } from "./gateway/http-server.js";
|
|
20
20
|
export { InvokeBuyerMismatchError, InvokeAccessUrlError, InvokePathError, InvokeServiceRefMismatchError, InvokeStreamExpiredError, InvokeStreamNotActiveError, capabilityFor, createSdkInvokeStreamReader, invoke, invokeWithT2DeliveryProof, type CapabilityForOptions, type InvokeOptions, type InvokeResult, type InvokeServiceInput, type InvokeStreamReader, type InvokeStreamView, type InvokeWithT2DeliveryProofOptions, type InvokeWithT2DeliveryProofResult, } from "./sdk/invoke.js";
|
|
21
21
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,0BAA0B,GAChC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kCAAkC,EAClC,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,GAC9B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,gBAAgB,EAChB,gCAAgC,EAChC,6BAA6B,EAC7B,WAAW,EACX,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,EACrB,KAAK,mCAAmC,EACxC,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gCAAgC,EACrC,KAAK,0BAA0B,GAChC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,cAAc,GACpB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,6BAA6B,EAC7B,oCAAoC,EACpC,2CAA2C,EAC3C,mBAAmB,EACnB,iCAAiC,EACjC,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,GACpC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,EAC1B,+BAA+B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,kCAAkC,EACvC,KAAK,uBAAuB,EAC5B,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,GAC/B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,6BAA6B,EAC7B,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,GAC7B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,+BAA+B,EAC/B,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,iCAAiC,EACjC,0BAA0B,EAC1B,2BAA2B,EAC3B,kBAAkB,EAClB,uBAAuB,EACvB,KAAK,kBAAkB,EACvB,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC7B,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,KAAK,0BAA0B,GAChC,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,kCAAkC,EAClC,yBAAyB,EACzB,mCAAmC,EACnC,gCAAgC,EAChC,2BAA2B,EAC3B,qBAAqB,EACrB,4BAA4B,EAC5B,0BAA0B,EAC1B,6BAA6B,EAC7B,iBAAiB,EACjB,4BAA4B,EAC5B,oBAAoB,EACpB,6BAA6B,EAC7B,8BAA8B,EAC9B,kCAAkC,EAClC,2BAA2B,EAC3B,yBAAyB,EACzB,+BAA+B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,sBAAsB,IAAI,4BAA4B,EAC3D,KAAK,+BAA+B,EACpC,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,qCAAqC,EAC1C,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,mCAAmC,EACxC,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACrC,KAAK,sCAAsC,EAC3C,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,wBAAwB,GAC9B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,mCAAmC,EACnC,6BAA6B,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,6BAA6B,EAClC,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,GAC/B,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,2BAA2B,EAC3B,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,EAC9B,8BAA8B,EAC9B,wCAAwC,EACxC,+BAA+B,EAC/B,oBAAoB,EACpB,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,8BAA8B,EACnC,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,+BAA+B,EACpC,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,EACvC,KAAK,aAAa,GACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,iCAAiC,EACjC,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,4BAA4B,EAC5B,kCAAkC,EAClC,sCAAsC,EACtC,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,iCAAiC,EACjC,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EACjC,wBAAwB,EACxB,gCAAgC,EAChC,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,GAChC,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,wBAAwB,EACxB,2BAA2B,EAC3B,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,mBAAmB,GACzB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,6BAA6B,EAC7B,+BAA+B,EAC/B,mCAAmC,EACnC,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,6BAA6B,GACnC,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,6BAA6B,EAC7B,wBAAwB,EACxB,0BAA0B,EAC1B,aAAa,EACb,2BAA2B,EAC3B,MAAM,EACN,yBAAyB,EACzB,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,GACrC,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -9,13 +9,13 @@ export { AgentWalletConfigError, createPrivyEmbeddedAccount, createWalletBackedA
|
|
|
9
9
|
export { InMemoryPrivyBrokerSessionStore, PRIVY_BROKER_CAIP2, PRIVY_BROKER_CHAIN_ID, PRIVY_BROKER_ESCROW, PRIVY_BROKER_USDC, PRIVY_MAX_SESSION_SECONDS, PRIVY_POLICY_MAX_DURATION_SECONDS, PRIVY_POLICY_MAX_RATE_USDC, PRIVY_POLICY_MAX_TOTAL_USDC, PrivySessionBroker, PrivySessionBrokerError, } from "./wallet/privy-session-broker.js";
|
|
10
10
|
export { createPrivySessionProvider, PrivySessionProviderError, } from "./wallet/privy-session-provider.js";
|
|
11
11
|
export { JsonAutonomousWalletBrokerStore, JsonPrivyBrokerSessionStore, startPrivyBrokerServer, } from "./wallet/privy-broker-server.js";
|
|
12
|
-
export { AUTONOMOUS_WALLET_CAIP2, AUTONOMOUS_WALLET_CHAIN_ID, AUTONOMOUS_WALLET_VERSION, METRIK_AUTONOMOUS_WALLET_BROKER_URL, AutonomousWalletError, HttpAutonomousWalletBroker, InMemoryAutonomousWalletStore, OsCredentialStore, autonomousProofBytes, createAutonomousWalletAccount, createAutonomousWalletProvider, createDefaultAutonomousWalletStore, provisionAutonomousWallet, provisionMetrikAutonomousWallet, } from "./wallet/autonomous-wallet.js";
|
|
12
|
+
export { AUTONOMOUS_WALLET_CAIP2, AUTONOMOUS_WALLET_CHAIN_ID, AUTONOMOUS_WALLET_KEYCHAIN_SERVICE, AUTONOMOUS_WALLET_VERSION, METRIK_AUTONOMOUS_WALLET_BROKER_URL, METRIK_WALLET_ENCRYPTION_KEY_ENV, METRIK_WALLET_STORE_DIR_ENV, AutonomousWalletError, EncryptedFileCredentialStore, HttpAutonomousWalletBroker, InMemoryAutonomousWalletStore, OsCredentialStore, assertDurableCredentialStore, autonomousProofBytes, createAutonomousWalletAccount, createAutonomousWalletProvider, createDefaultAutonomousWalletStore, probeSecretServiceAvailable, provisionAutonomousWallet, provisionMetrikAutonomousWallet, } from "./wallet/autonomous-wallet.js";
|
|
13
13
|
export { AutonomousWalletBroker, AutonomousWalletBrokerError, InMemoryAutonomousWalletBrokerStore, createPrivyAutonomousProvider, } from "./wallet/autonomous-wallet-broker.js";
|
|
14
14
|
export { UnsupportedFaucetChainError, faucetHint, getWalletBalances, requestCdpFaucet, } from "./wallet/lifecycle.js";
|
|
15
15
|
export { ReclaimConsumerProofService, ResponseProofUnavailableError, ResponseProofVerificationError, buildDeliveryContextEnvelopeV2, createReclaimConsumerProofServiceFromEnv, deliveryContextEnvelopeV2Schema, parseReclaimProofEnv, } from "./zktls/reclaim.js";
|
|
16
16
|
export { NoDeliveryAttestorConfiguredError, PaidRouteNonceInjectionError, ReclaimDeliveryProofAttestor, buildT2DeliveryProofSubmission, createReclaimT2AttestorFromEnv, deliveryProofRequestBodySchema, toWireDeliveryReceipt, } from "./zktls/t2-delivery-proof.js";
|
|
17
17
|
export { CAPABILITY_HEADER_NAME, DEFAULT_CAPABILITY_TTL_SECONDS, InvalidCapabilityHeaderError, buildInvocationCapabilityTypedData, createInvocationCapabilityEip712Domain, decodeCapabilityHeader, encodeCapabilityHeader, generateCapabilityNonce, hashInvocationPath, httpMethodSchema, invocationCapabilityDomainName, invocationCapabilityDomainVersion, invocationCapabilitySchema, invocationCapabilityTypedData, normalizeInvocationPath, recoverInvocationCapabilitySigner, signInvocationCapability, signedInvocationCapabilitySchema, } from "./capability/invocation-capability.js";
|
|
18
|
-
export { CallerAuthGateway, InMemoryNonceReplayCache, UnknownStreamGatewayError, createSdkStreamReader, } from "./gateway/caller-auth-gateway.js";
|
|
18
|
+
export { CallerAuthGateway, DEFAULT_MAX_STATE_STALENESS_SECONDS, InMemoryNonceReplayCache, InMemoryStreamRevocationSet, MAX_CORROBORATING_STREAM_READERS, UnknownStreamGatewayError, createSdkStreamReader, } from "./gateway/caller-auth-gateway.js";
|
|
19
19
|
export { createCallerAuthGatewayServer, parseCallerAuthGatewayEnvConfig, startCallerAuthGatewayServerFromEnv, } from "./gateway/http-server.js";
|
|
20
20
|
export { InvokeBuyerMismatchError, InvokeAccessUrlError, InvokePathError, InvokeServiceRefMismatchError, InvokeStreamExpiredError, InvokeStreamNotActiveError, capabilityFor, createSdkInvokeStreamReader, invoke, invokeWithT2DeliveryProof, } from "./sdk/invoke.js";
|
|
21
21
|
// Framework adapters are NOT re-exported from this top-level barrel on purpose.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,qBAAqB,GAMtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kCAAkC,EAClC,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,GAGlB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,gBAAgB,EAChB,gCAAgC,EAChC,6BAA6B,EAC7B,WAAW,EACX,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,GAOtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,gBAAgB,GAGjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,6BAA6B,EAC7B,oCAAoC,EACpC,2CAA2C,EAC3C,mBAAmB,EACnB,iCAAiC,GAQlC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,EAC1B,+BAA+B,GAOhC,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,yBAAyB,GAU1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,6BAA6B,EAC7B,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,GAQnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,+BAA+B,EAC/B,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,iCAAiC,EACjC,0BAA0B,EAC1B,2BAA2B,EAC3B,kBAAkB,EAClB,uBAAuB,GAOxB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,mCAAmC,EACnC,qBAAqB,EACrB,0BAA0B,EAC1B,6BAA6B,EAC7B,iBAAiB,EACjB,oBAAoB,EACpB,6BAA6B,EAC7B,8BAA8B,EAC9B,kCAAkC,EAClC,yBAAyB,EACzB,+BAA+B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { type Address } from "viem";
|
|
2
|
+
import { AUTONOMOUS_WALLET_VERSION } from "./autonomous-wallet-protocol.js";
|
|
3
|
+
import { type SecretServiceProbeResult } from "./secret-service-probe.js";
|
|
4
|
+
export declare const AUTONOMOUS_WALLET_KEYCHAIN_SERVICE = "com.absol-labs.metrik.autonomous-wallet";
|
|
5
|
+
export interface AutonomousWalletRecord {
|
|
6
|
+
readonly version: typeof AUTONOMOUS_WALLET_VERSION;
|
|
7
|
+
readonly appId: string;
|
|
8
|
+
readonly brokerUrl: string;
|
|
9
|
+
readonly publicKey: string;
|
|
10
|
+
/** Base64 PKCS8 P-256 key. This field must only be stored in a secure store. */
|
|
11
|
+
readonly privateKey: string;
|
|
12
|
+
readonly provisioningNonce: string;
|
|
13
|
+
readonly walletId?: string;
|
|
14
|
+
readonly address?: Address;
|
|
15
|
+
readonly policyId?: string;
|
|
16
|
+
readonly createdAt: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Whether a credential store keeps a key across a host reboot.
|
|
20
|
+
*
|
|
21
|
+
* - `durable`: the key survives a reboot (macOS Keychain, Windows Credential
|
|
22
|
+
* Manager, a freedesktop Secret Service provider, an encrypted file).
|
|
23
|
+
* - `volatile`: the key is lost on reboot (process memory, the Linux kernel
|
|
24
|
+
* keyring). Provisioning a fund-controlling wallet onto one of these is
|
|
25
|
+
* refused unless the caller explicitly opts in.
|
|
26
|
+
* - `unknown`: an injected third-party store that does not implement
|
|
27
|
+
* `probeDurability()`. Allowed for backwards compatibility, with a warning.
|
|
28
|
+
*/
|
|
29
|
+
export type CredentialStoreDurability = "durable" | "volatile" | "unknown";
|
|
30
|
+
export interface CredentialStoreDurabilityReport {
|
|
31
|
+
readonly durability: CredentialStoreDurability;
|
|
32
|
+
/** Stable identifier of the resolved backend, e.g. `linux-kernel-keyring`. */
|
|
33
|
+
readonly backend: string;
|
|
34
|
+
readonly detail: string;
|
|
35
|
+
}
|
|
36
|
+
export interface AutonomousWalletCredentialStore {
|
|
37
|
+
load(key: string): Promise<AutonomousWalletRecord | null>;
|
|
38
|
+
save(key: string, record: AutonomousWalletRecord): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Optional capability probe. Implementations SHOULD round-trip a throwaway
|
|
41
|
+
* probe credential and report whether the resolved backend survives a
|
|
42
|
+
* reboot. Stores that omit it are treated as `unknown`.
|
|
43
|
+
*/
|
|
44
|
+
probeDurability?(): Promise<CredentialStoreDurabilityReport>;
|
|
45
|
+
}
|
|
46
|
+
export declare class AutonomousWalletError extends Error {
|
|
47
|
+
readonly code: "invalid-config" | "store-failure" | "broker-failure" | "proof-failure" | "invalid-response";
|
|
48
|
+
constructor(code: "invalid-config" | "store-failure" | "broker-failure" | "proof-failure" | "invalid-response", message: string, options?: {
|
|
49
|
+
readonly cause?: unknown;
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
export declare class InMemoryAutonomousWalletStore implements AutonomousWalletCredentialStore {
|
|
53
|
+
private readonly records;
|
|
54
|
+
load(key: string): Promise<AutonomousWalletRecord | null>;
|
|
55
|
+
save(key: string, record: AutonomousWalletRecord): Promise<void>;
|
|
56
|
+
probeDurability(): Promise<CredentialStoreDurabilityReport>;
|
|
57
|
+
}
|
|
58
|
+
/** The subset of `@napi-rs/keyring`'s `AsyncEntry` this package relies on. */
|
|
59
|
+
export interface SecretEntryLike {
|
|
60
|
+
setPassword(password: string): Promise<void>;
|
|
61
|
+
getPassword(): Promise<string | undefined | null>;
|
|
62
|
+
deleteCredential?(): Promise<boolean>;
|
|
63
|
+
}
|
|
64
|
+
export type SecretEntryFactory = (service: string, key: string) => Promise<SecretEntryLike>;
|
|
65
|
+
export interface OsCredentialStoreOptions {
|
|
66
|
+
readonly service?: string;
|
|
67
|
+
/** Override for tests; defaults to `process.platform`. */
|
|
68
|
+
readonly platform?: string;
|
|
69
|
+
/** Override for tests; defaults to the real D-Bus Secret Service probe. */
|
|
70
|
+
readonly secretServiceProbe?: () => Promise<SecretServiceProbeResult>;
|
|
71
|
+
/** Override for tests; defaults to `@napi-rs/keyring`'s `AsyncEntry`. */
|
|
72
|
+
readonly entryFactory?: SecretEntryFactory;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Uses the host OS credential manager. There is intentionally no plaintext
|
|
76
|
+
* file fallback: unsupported hosts receive an actionable error instead.
|
|
77
|
+
*
|
|
78
|
+
* IMPORTANT: on Linux the underlying native module silently falls back from the
|
|
79
|
+
* freedesktop Secret Service to the Linux kernel keyring, which is destroyed on
|
|
80
|
+
* reboot. `probeDurability()` detects that and reports `volatile`, which makes
|
|
81
|
+
* `provisionAutonomousWallet` refuse rather than lose the key later.
|
|
82
|
+
*/
|
|
83
|
+
export declare class OsCredentialStore implements AutonomousWalletCredentialStore {
|
|
84
|
+
private readonly service;
|
|
85
|
+
private readonly platform;
|
|
86
|
+
private readonly secretServiceProbe;
|
|
87
|
+
private readonly entryFactory;
|
|
88
|
+
constructor(options?: OsCredentialStoreOptions);
|
|
89
|
+
load(key: string): Promise<AutonomousWalletRecord | null>;
|
|
90
|
+
save(key: string, record: AutonomousWalletRecord): Promise<void>;
|
|
91
|
+
/**
|
|
92
|
+
* Startup self-check. Round-trips a throwaway probe credential (so a broken
|
|
93
|
+
* or locked keychain is caught before a key is generated) and resolves which
|
|
94
|
+
* backend the host actually provides.
|
|
95
|
+
*/
|
|
96
|
+
probeDurability(): Promise<CredentialStoreDurabilityReport>;
|
|
97
|
+
private resolvePlatformDurability;
|
|
98
|
+
/** Returns `null` on success, or a description of the failure. */
|
|
99
|
+
private roundTripProbe;
|
|
100
|
+
private readSecret;
|
|
101
|
+
}
|
|
102
|
+
export declare function createDefaultAutonomousWalletStore(): AutonomousWalletCredentialStore;
|
|
103
|
+
export interface AssertDurableCredentialStoreOptions {
|
|
104
|
+
/**
|
|
105
|
+
* Opt in to a volatile credential store. Only for genuinely ephemeral flows
|
|
106
|
+
* (CI, tests, a throwaway container) where losing the key is acceptable.
|
|
107
|
+
* A wallet provisioned this way cannot be recovered after a reboot.
|
|
108
|
+
*/
|
|
109
|
+
readonly allowVolatileStore?: boolean;
|
|
110
|
+
readonly logger?: {
|
|
111
|
+
warn(...args: readonly unknown[]): void;
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Fail-closed durability gate. Run before any wallet key is generated or any
|
|
116
|
+
* stored wallet is returned.
|
|
117
|
+
*/
|
|
118
|
+
export declare function assertDurableCredentialStore(store: AutonomousWalletCredentialStore, options?: AssertDurableCredentialStoreOptions): Promise<CredentialStoreDurabilityReport>;
|
|
119
|
+
export declare function validateStoredRecord(value: unknown): AutonomousWalletRecord;
|
|
120
|
+
export declare function decodeBase64(value: string): Uint8Array;
|
|
121
|
+
export declare function validateP256KeyPair(publicKey: string, privateKey: string): void;
|
|
122
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
123
|
+
//# sourceMappingURL=autonomous-wallet-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autonomous-wallet-store.d.ts","sourceRoot":"","sources":["../../src/wallet/autonomous-wallet-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
import { createPrivateKey, createPublicKey } from "node:crypto";
|
|
2
|
+
import { getAddress } from "viem";
|
|
3
|
+
import { AUTONOMOUS_WALLET_VERSION } from "./autonomous-wallet-protocol.js";
|
|
4
|
+
import { probeSecretServiceAvailable, } from "./secret-service-probe.js";
|
|
5
|
+
export const AUTONOMOUS_WALLET_KEYCHAIN_SERVICE = "com.absol-labs.metrik.autonomous-wallet";
|
|
6
|
+
export class AutonomousWalletError extends Error {
|
|
7
|
+
code;
|
|
8
|
+
constructor(code, message, options) {
|
|
9
|
+
super(message, options);
|
|
10
|
+
this.code = code;
|
|
11
|
+
this.name = "AutonomousWalletError";
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export class InMemoryAutonomousWalletStore {
|
|
15
|
+
records = new Map();
|
|
16
|
+
async load(key) {
|
|
17
|
+
return this.records.get(key) ?? null;
|
|
18
|
+
}
|
|
19
|
+
async save(key, record) {
|
|
20
|
+
this.records.set(key, record);
|
|
21
|
+
}
|
|
22
|
+
async probeDurability() {
|
|
23
|
+
return {
|
|
24
|
+
durability: "volatile",
|
|
25
|
+
backend: "in-memory",
|
|
26
|
+
detail: "records live in process memory only and are lost when the process exits",
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
const DURABILITY_PROBE_KEY_PREFIX = "__metrik-durability-probe__";
|
|
31
|
+
/**
|
|
32
|
+
* Uses the host OS credential manager. There is intentionally no plaintext
|
|
33
|
+
* file fallback: unsupported hosts receive an actionable error instead.
|
|
34
|
+
*
|
|
35
|
+
* IMPORTANT: on Linux the underlying native module silently falls back from the
|
|
36
|
+
* freedesktop Secret Service to the Linux kernel keyring, which is destroyed on
|
|
37
|
+
* reboot. `probeDurability()` detects that and reports `volatile`, which makes
|
|
38
|
+
* `provisionAutonomousWallet` refuse rather than lose the key later.
|
|
39
|
+
*/
|
|
40
|
+
export class OsCredentialStore {
|
|
41
|
+
service;
|
|
42
|
+
platform;
|
|
43
|
+
secretServiceProbe;
|
|
44
|
+
entryFactory;
|
|
45
|
+
constructor(options = {}) {
|
|
46
|
+
this.service = options.service ?? AUTONOMOUS_WALLET_KEYCHAIN_SERVICE;
|
|
47
|
+
this.platform = options.platform ?? process.platform;
|
|
48
|
+
this.secretServiceProbe =
|
|
49
|
+
options.secretServiceProbe ?? (() => probeSecretServiceAvailable());
|
|
50
|
+
this.entryFactory =
|
|
51
|
+
options.entryFactory ??
|
|
52
|
+
(async (service, key) => {
|
|
53
|
+
const { AsyncEntry } = await import("@napi-rs/keyring");
|
|
54
|
+
return new AsyncEntry(service, key);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
async load(key) {
|
|
58
|
+
const raw = await this.readSecret(key);
|
|
59
|
+
if (raw === null)
|
|
60
|
+
return null;
|
|
61
|
+
try {
|
|
62
|
+
return validateStoredRecord(JSON.parse(raw));
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
if (error instanceof AutonomousWalletError)
|
|
66
|
+
throw error;
|
|
67
|
+
throw new AutonomousWalletError("store-failure", "OS credential contains invalid wallet data", { cause: error });
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
async save(key, record) {
|
|
71
|
+
const raw = JSON.stringify(record);
|
|
72
|
+
try {
|
|
73
|
+
const entry = await this.entryFactory(this.service, key);
|
|
74
|
+
await entry.setPassword(raw);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
throw new AutonomousWalletError("store-failure", "OS credential store rejected the autonomous wallet record; no plaintext fallback is allowed", { cause: error });
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Startup self-check. Round-trips a throwaway probe credential (so a broken
|
|
83
|
+
* or locked keychain is caught before a key is generated) and resolves which
|
|
84
|
+
* backend the host actually provides.
|
|
85
|
+
*/
|
|
86
|
+
async probeDurability() {
|
|
87
|
+
const platformReport = await this.resolvePlatformDurability();
|
|
88
|
+
const roundTrip = await this.roundTripProbe();
|
|
89
|
+
if (roundTrip !== null) {
|
|
90
|
+
return {
|
|
91
|
+
durability: "volatile",
|
|
92
|
+
backend: platformReport.backend,
|
|
93
|
+
detail: `credential round-trip self-check failed: ${roundTrip}`,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
return platformReport;
|
|
97
|
+
}
|
|
98
|
+
async resolvePlatformDurability() {
|
|
99
|
+
if (this.platform === "darwin") {
|
|
100
|
+
return {
|
|
101
|
+
durability: "durable",
|
|
102
|
+
backend: "macos-keychain",
|
|
103
|
+
detail: "the macOS Keychain persists credentials across reboots",
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
if (this.platform === "win32") {
|
|
107
|
+
return {
|
|
108
|
+
durability: "durable",
|
|
109
|
+
backend: "windows-credential-manager",
|
|
110
|
+
detail: "the Windows Credential Manager persists credentials across reboots",
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
if (this.platform === "linux") {
|
|
114
|
+
let probe;
|
|
115
|
+
try {
|
|
116
|
+
probe = await this.secretServiceProbe();
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
probe = {
|
|
120
|
+
available: false,
|
|
121
|
+
detail: `Secret Service probe failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
if (probe.available) {
|
|
125
|
+
return {
|
|
126
|
+
durability: "durable",
|
|
127
|
+
backend: "linux-secret-service",
|
|
128
|
+
detail: probe.detail,
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
return {
|
|
132
|
+
durability: "volatile",
|
|
133
|
+
backend: "linux-kernel-keyring",
|
|
134
|
+
detail: `${probe.detail}; the keyring falls back to the Linux kernel keyring, which is in-memory and destroyed on reboot`,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
return {
|
|
138
|
+
durability: "unknown",
|
|
139
|
+
backend: `os-credential-store:${this.platform}`,
|
|
140
|
+
detail: `durability of the OS credential store on "${this.platform}" could not be determined`,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
/** Returns `null` on success, or a description of the failure. */
|
|
144
|
+
async roundTripProbe() {
|
|
145
|
+
const key = `${DURABILITY_PROBE_KEY_PREFIX}${Date.now().toString(36)}`;
|
|
146
|
+
const expected = `metrik-durability-probe:${Math.random().toString(36).slice(2)}`;
|
|
147
|
+
let entry;
|
|
148
|
+
try {
|
|
149
|
+
entry = await this.entryFactory(this.service, key);
|
|
150
|
+
}
|
|
151
|
+
catch (error) {
|
|
152
|
+
return error instanceof Error ? error.message : String(error);
|
|
153
|
+
}
|
|
154
|
+
try {
|
|
155
|
+
await entry.setPassword(expected);
|
|
156
|
+
const observed = await entry.getPassword();
|
|
157
|
+
if (observed !== expected) {
|
|
158
|
+
return "the probe credential did not read back with the value that was written";
|
|
159
|
+
}
|
|
160
|
+
return null;
|
|
161
|
+
}
|
|
162
|
+
catch (error) {
|
|
163
|
+
return error instanceof Error ? error.message : String(error);
|
|
164
|
+
}
|
|
165
|
+
finally {
|
|
166
|
+
try {
|
|
167
|
+
await entry.deleteCredential?.();
|
|
168
|
+
}
|
|
169
|
+
catch {
|
|
170
|
+
// A leftover probe credential is harmless; never fail the probe on it.
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
async readSecret(key) {
|
|
175
|
+
try {
|
|
176
|
+
const entry = await this.entryFactory(this.service, key);
|
|
177
|
+
return (await entry.getPassword()) ?? null;
|
|
178
|
+
}
|
|
179
|
+
catch (error) {
|
|
180
|
+
throw new AutonomousWalletError("store-failure", "OS credential store could not read the autonomous wallet record", { cause: error });
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
export function createDefaultAutonomousWalletStore() {
|
|
185
|
+
return new OsCredentialStore();
|
|
186
|
+
}
|
|
187
|
+
function volatileStoreMessage(report) {
|
|
188
|
+
return [
|
|
189
|
+
`autonomous wallet provisioning refused: the resolved credential store (${report.backend}) is NOT durable — ${report.detail}.`,
|
|
190
|
+
"The P-256 owner key would be lost on reboot, permanently losing control of any funds held by the wallet.",
|
|
191
|
+
"Remedies:",
|
|
192
|
+
"(1) use EncryptedFileCredentialStore with METRIK_WALLET_ENCRYPTION_KEY supplied from your secret manager — durable on any headless host;",
|
|
193
|
+
"(2) on Linux, install a freedesktop Secret Service provider (for example gnome-keyring plus dbus-user-session) and run inside a D-Bus session;",
|
|
194
|
+
"(3) inject your own durable AutonomousWalletCredentialStore;",
|
|
195
|
+
"(4) for genuinely ephemeral runs only, pass allowVolatileStore: true and accept that the wallet is unrecoverable.",
|
|
196
|
+
].join(" ");
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Fail-closed durability gate. Run before any wallet key is generated or any
|
|
200
|
+
* stored wallet is returned.
|
|
201
|
+
*/
|
|
202
|
+
export async function assertDurableCredentialStore(store, options = {}) {
|
|
203
|
+
const logger = options.logger ?? console;
|
|
204
|
+
if (typeof store.probeDurability !== "function") {
|
|
205
|
+
const report = {
|
|
206
|
+
durability: "unknown",
|
|
207
|
+
backend: "custom",
|
|
208
|
+
detail: "the injected credential store does not implement probeDurability(), so durability could not be verified",
|
|
209
|
+
};
|
|
210
|
+
logger.warn(`[metrik] autonomous wallet: ${report.detail}. Confirm it survives a host reboot before funding this wallet.`);
|
|
211
|
+
return report;
|
|
212
|
+
}
|
|
213
|
+
let report;
|
|
214
|
+
try {
|
|
215
|
+
report = await store.probeDurability();
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
throw new AutonomousWalletError("store-failure", "credential store durability self-check failed; refusing to provision an autonomous wallet", { cause: error });
|
|
219
|
+
}
|
|
220
|
+
if (report.durability === "durable")
|
|
221
|
+
return report;
|
|
222
|
+
if (report.durability === "unknown") {
|
|
223
|
+
logger.warn(`[metrik] autonomous wallet: credential store durability is unverified (${report.backend}) — ${report.detail}. Confirm it survives a host reboot before funding this wallet.`);
|
|
224
|
+
return report;
|
|
225
|
+
}
|
|
226
|
+
if (options.allowVolatileStore !== true) {
|
|
227
|
+
throw new AutonomousWalletError("store-failure", volatileStoreMessage(report));
|
|
228
|
+
}
|
|
229
|
+
logger.warn(`[metrik] WARNING: autonomous wallet provisioned onto a VOLATILE credential store (${report.backend}) because allowVolatileStore was set — ${report.detail}. This wallet and any funds it holds become permanently inaccessible on reboot. Never use this for a funded wallet.`);
|
|
230
|
+
return report;
|
|
231
|
+
}
|
|
232
|
+
export function validateStoredRecord(value) {
|
|
233
|
+
if (!isRecord(value) ||
|
|
234
|
+
value.version !== AUTONOMOUS_WALLET_VERSION ||
|
|
235
|
+
typeof value.appId !== "string" ||
|
|
236
|
+
value.appId.trim() === "" ||
|
|
237
|
+
typeof value.brokerUrl !== "string" ||
|
|
238
|
+
typeof value.publicKey !== "string" ||
|
|
239
|
+
value.publicKey.trim() === "" ||
|
|
240
|
+
typeof value.privateKey !== "string" ||
|
|
241
|
+
value.privateKey.trim() === "" ||
|
|
242
|
+
typeof value.provisioningNonce !== "string" ||
|
|
243
|
+
value.provisioningNonce.trim() === "" ||
|
|
244
|
+
typeof value.createdAt !== "number" ||
|
|
245
|
+
!Number.isSafeInteger(value.createdAt)) {
|
|
246
|
+
throw new AutonomousWalletError("store-failure", "OS credential contains an invalid autonomous wallet record");
|
|
247
|
+
}
|
|
248
|
+
if (value.walletId !== undefined &&
|
|
249
|
+
(typeof value.walletId !== "string" || value.walletId.trim() === "")) {
|
|
250
|
+
throw new AutonomousWalletError("store-failure", "OS credential contains an invalid wallet id");
|
|
251
|
+
}
|
|
252
|
+
if (value.policyId !== undefined &&
|
|
253
|
+
(typeof value.policyId !== "string" || value.policyId.trim() === "")) {
|
|
254
|
+
throw new AutonomousWalletError("store-failure", "OS credential contains an invalid policy id");
|
|
255
|
+
}
|
|
256
|
+
if (value.address !== undefined &&
|
|
257
|
+
(typeof value.address !== "string" ||
|
|
258
|
+
!/^0x[0-9a-fA-F]{40}$/.test(value.address))) {
|
|
259
|
+
throw new AutonomousWalletError("store-failure", "OS credential contains an invalid wallet address");
|
|
260
|
+
}
|
|
261
|
+
try {
|
|
262
|
+
validateP256KeyPair(value.publicKey, value.privateKey);
|
|
263
|
+
}
|
|
264
|
+
catch (error) {
|
|
265
|
+
throw new AutonomousWalletError("store-failure", "OS credential contains invalid P-256 key material", { cause: error });
|
|
266
|
+
}
|
|
267
|
+
return {
|
|
268
|
+
version: AUTONOMOUS_WALLET_VERSION,
|
|
269
|
+
appId: value.appId,
|
|
270
|
+
brokerUrl: value.brokerUrl,
|
|
271
|
+
publicKey: value.publicKey,
|
|
272
|
+
privateKey: value.privateKey,
|
|
273
|
+
provisioningNonce: value.provisioningNonce,
|
|
274
|
+
...(value.walletId === undefined ? {} : { walletId: value.walletId }),
|
|
275
|
+
...(value.address === undefined
|
|
276
|
+
? {}
|
|
277
|
+
: { address: getAddress(value.address) }),
|
|
278
|
+
...(value.policyId === undefined ? {} : { policyId: value.policyId }),
|
|
279
|
+
createdAt: value.createdAt,
|
|
280
|
+
};
|
|
281
|
+
}
|
|
282
|
+
export function decodeBase64(value) {
|
|
283
|
+
if (!/^[A-Za-z0-9+/]+={0,2}$/.test(value) || value.length % 4 === 1) {
|
|
284
|
+
throw new AutonomousWalletError("invalid-response", "broker returned invalid proof payload encoding");
|
|
285
|
+
}
|
|
286
|
+
const decoded = Buffer.from(value, "base64");
|
|
287
|
+
if (decoded.length === 0 || decoded.toString("base64") !== value) {
|
|
288
|
+
throw new AutonomousWalletError("invalid-response", "broker returned an empty proof payload");
|
|
289
|
+
}
|
|
290
|
+
return new Uint8Array(decoded);
|
|
291
|
+
}
|
|
292
|
+
export function validateP256KeyPair(publicKey, privateKey) {
|
|
293
|
+
const publicObject = createPublicKey({
|
|
294
|
+
key: Buffer.from(decodeBase64(publicKey)),
|
|
295
|
+
format: "der",
|
|
296
|
+
type: "spki",
|
|
297
|
+
});
|
|
298
|
+
const privateObject = createPrivateKey({
|
|
299
|
+
key: Buffer.from(decodeBase64(privateKey)),
|
|
300
|
+
format: "der",
|
|
301
|
+
type: "pkcs8",
|
|
302
|
+
});
|
|
303
|
+
if (publicObject.asymmetricKeyType !== "ec" ||
|
|
304
|
+
publicObject.asymmetricKeyDetails?.namedCurve !== "prime256v1" ||
|
|
305
|
+
privateObject.asymmetricKeyType !== "ec" ||
|
|
306
|
+
privateObject.asymmetricKeyDetails?.namedCurve !== "prime256v1") {
|
|
307
|
+
throw new Error("key material is not P-256");
|
|
308
|
+
}
|
|
309
|
+
const derived = createPublicKey(privateObject)
|
|
310
|
+
.export({ format: "der", type: "spki" })
|
|
311
|
+
.toString("base64");
|
|
312
|
+
if (derived !== publicKey)
|
|
313
|
+
throw new Error("public key does not match private key");
|
|
314
|
+
}
|
|
315
|
+
export function isRecord(value) {
|
|
316
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
317
|
+
}
|
|
318
|
+
//# sourceMappingURL=autonomous-wallet-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autonomous-wallet-store.js","sourceRoot":"","sources":["../../src/wallet/autonomous-wallet-store.ts"],"names":[],"mappings":"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"}
|