@antseed/node 0.2.26 → 0.2.28
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 +85 -11
- package/dist/buyer-request-handler.d.ts +41 -0
- package/dist/buyer-request-handler.d.ts.map +1 -0
- package/dist/buyer-request-handler.js +254 -0
- package/dist/buyer-request-handler.js.map +1 -0
- package/dist/discovery/announcer.d.ts +5 -2
- package/dist/discovery/announcer.d.ts.map +1 -1
- package/dist/discovery/announcer.js +11 -14
- package/dist/discovery/announcer.js.map +1 -1
- package/dist/discovery/index.d.ts +0 -2
- package/dist/discovery/index.d.ts.map +1 -1
- package/dist/discovery/index.js +0 -2
- package/dist/discovery/index.js.map +1 -1
- package/dist/discovery/metadata-codec.d.ts +2 -2
- package/dist/discovery/metadata-codec.d.ts.map +1 -1
- package/dist/discovery/metadata-codec.js +47 -72
- package/dist/discovery/metadata-codec.js.map +1 -1
- package/dist/discovery/metadata-validator.js +6 -6
- package/dist/discovery/metadata-validator.js.map +1 -1
- package/dist/discovery/peer-lookup.d.ts.map +1 -1
- package/dist/discovery/peer-lookup.js +1 -2
- package/dist/discovery/peer-lookup.js.map +1 -1
- package/dist/discovery/peer-metadata.d.ts +3 -5
- package/dist/discovery/peer-metadata.d.ts.map +1 -1
- package/dist/discovery/peer-metadata.js +1 -1
- package/dist/discovery/reputation-verifier.d.ts +2 -22
- package/dist/discovery/reputation-verifier.d.ts.map +1 -1
- package/dist/discovery/reputation-verifier.js +2 -24
- package/dist/discovery/reputation-verifier.js.map +1 -1
- package/dist/discovery/stats-verifier.d.ts +27 -0
- package/dist/discovery/stats-verifier.d.ts.map +1 -0
- package/dist/discovery/stats-verifier.js +38 -0
- package/dist/discovery/stats-verifier.js.map +1 -0
- package/dist/index.d.ts +17 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -3
- package/dist/index.js.map +1 -1
- package/dist/metering/index.d.ts +1 -0
- package/dist/metering/index.d.ts.map +1 -1
- package/dist/metering/index.js +1 -0
- package/dist/metering/index.js.map +1 -1
- package/dist/metering/receipt-generator.d.ts +4 -4
- package/dist/metering/receipt-generator.d.ts.map +1 -1
- package/dist/metering/receipt-verifier.d.ts +6 -6
- package/dist/metering/receipt-verifier.d.ts.map +1 -1
- package/dist/metering/receipt-verifier.js +1 -1
- package/dist/metering/seller-session-tracker.d.ts +91 -0
- package/dist/metering/seller-session-tracker.d.ts.map +1 -0
- package/dist/metering/seller-session-tracker.js +261 -0
- package/dist/metering/seller-session-tracker.js.map +1 -0
- package/dist/metering/storage.d.ts +11 -5
- package/dist/metering/storage.d.ts.map +1 -1
- package/dist/metering/storage.js +28 -80
- package/dist/metering/storage.js.map +1 -1
- package/dist/node.d.ts +83 -104
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +313 -1026
- package/dist/node.js.map +1 -1
- package/dist/p2p/connection-auth.d.ts +2 -1
- package/dist/p2p/connection-auth.d.ts.map +1 -1
- package/dist/p2p/connection-auth.js +6 -6
- package/dist/p2p/connection-auth.js.map +1 -1
- package/dist/p2p/connection-manager.d.ts +3 -2
- package/dist/p2p/connection-manager.d.ts.map +1 -1
- package/dist/p2p/connection-manager.js +12 -6
- package/dist/p2p/connection-manager.js.map +1 -1
- package/dist/p2p/identity.d.ts +44 -13
- package/dist/p2p/identity.d.ts.map +1 -1
- package/dist/p2p/identity.js +103 -49
- package/dist/p2p/identity.js.map +1 -1
- package/dist/p2p/index.d.ts +1 -3
- package/dist/p2p/index.d.ts.map +1 -1
- package/dist/p2p/index.js +1 -3
- package/dist/p2p/index.js.map +1 -1
- package/dist/p2p/payment-codec.d.ts +9 -19
- package/dist/p2p/payment-codec.d.ts.map +1 -1
- package/dist/p2p/payment-codec.js +41 -89
- package/dist/p2p/payment-codec.js.map +1 -1
- package/dist/p2p/payment-mux.d.ts +14 -29
- package/dist/p2p/payment-mux.d.ts.map +1 -1
- package/dist/p2p/payment-mux.js +41 -79
- package/dist/p2p/payment-mux.js.map +1 -1
- package/dist/payments/balance-manager.d.ts +2 -2
- package/dist/payments/balance-manager.d.ts.map +1 -1
- package/dist/payments/balance-manager.js +5 -5
- package/dist/payments/balance-manager.js.map +1 -1
- package/dist/payments/buyer-payment-manager.d.ts +157 -83
- package/dist/payments/buyer-payment-manager.d.ts.map +1 -1
- package/dist/payments/buyer-payment-manager.js +573 -204
- package/dist/payments/buyer-payment-manager.js.map +1 -1
- package/dist/payments/buyer-payment-negotiator.d.ts +84 -0
- package/dist/payments/buyer-payment-negotiator.d.ts.map +1 -0
- package/dist/payments/buyer-payment-negotiator.js +624 -0
- package/dist/payments/buyer-payment-negotiator.js.map +1 -0
- package/dist/payments/chain-config.d.ts +44 -0
- package/dist/payments/chain-config.d.ts.map +1 -0
- package/dist/payments/chain-config.js +70 -0
- package/dist/payments/chain-config.js.map +1 -0
- package/dist/payments/channel-session-state.d.ts +13 -0
- package/dist/payments/channel-session-state.d.ts.map +1 -0
- package/dist/payments/channel-session-state.js +25 -0
- package/dist/payments/channel-session-state.js.map +1 -0
- package/dist/payments/channel-store.d.ts +87 -0
- package/dist/payments/channel-store.d.ts.map +1 -0
- package/dist/payments/channel-store.js +276 -0
- package/dist/payments/channel-store.js.map +1 -0
- package/dist/payments/evm/ants-token-client.d.ts +16 -0
- package/dist/payments/evm/ants-token-client.d.ts.map +1 -0
- package/dist/payments/evm/ants-token-client.js +65 -0
- package/dist/payments/evm/ants-token-client.js.map +1 -0
- package/dist/payments/evm/base-evm-client.d.ts +22 -0
- package/dist/payments/evm/base-evm-client.d.ts.map +1 -0
- package/dist/payments/evm/base-evm-client.js +71 -0
- package/dist/payments/evm/base-evm-client.js.map +1 -0
- package/dist/payments/evm/channels-client.d.ts +51 -0
- package/dist/payments/evm/channels-client.d.ts.map +1 -0
- package/dist/payments/evm/channels-client.js +101 -0
- package/dist/payments/evm/channels-client.js.map +1 -0
- package/dist/payments/evm/deposits-client.d.ts +30 -0
- package/dist/payments/evm/deposits-client.d.ts.map +1 -0
- package/dist/payments/evm/deposits-client.js +78 -0
- package/dist/payments/evm/deposits-client.js.map +1 -0
- package/dist/payments/evm/emissions-client.d.ts +22 -0
- package/dist/payments/evm/emissions-client.d.ts.map +1 -0
- package/dist/payments/evm/emissions-client.js +65 -0
- package/dist/payments/evm/emissions-client.js.map +1 -0
- package/dist/payments/evm/escrow-client.d.ts +57 -36
- package/dist/payments/evm/escrow-client.d.ts.map +1 -1
- package/dist/payments/evm/escrow-client.js +200 -93
- package/dist/payments/evm/escrow-client.js.map +1 -1
- package/dist/payments/evm/identity-client.d.ts +21 -0
- package/dist/payments/evm/identity-client.d.ts.map +1 -0
- package/dist/payments/evm/identity-client.js +68 -0
- package/dist/payments/evm/identity-client.js.map +1 -0
- package/dist/payments/evm/keypair.d.ts +3 -14
- package/dist/payments/evm/keypair.d.ts.map +1 -1
- package/dist/payments/evm/keypair.js +4 -20
- package/dist/payments/evm/keypair.js.map +1 -1
- package/dist/payments/evm/sessions-client.d.ts +30 -0
- package/dist/payments/evm/sessions-client.d.ts.map +1 -0
- package/dist/payments/evm/sessions-client.js +61 -0
- package/dist/payments/evm/sessions-client.js.map +1 -0
- package/dist/payments/evm/signatures.d.ts +54 -10
- package/dist/payments/evm/signatures.d.ts.map +1 -1
- package/dist/payments/evm/signatures.js +80 -54
- package/dist/payments/evm/signatures.js.map +1 -1
- package/dist/payments/evm/staking-client.d.ts +24 -0
- package/dist/payments/evm/staking-client.d.ts.map +1 -0
- package/dist/payments/evm/staking-client.js +54 -0
- package/dist/payments/evm/staking-client.js.map +1 -0
- package/dist/payments/evm/stats-client.d.ts +20 -0
- package/dist/payments/evm/stats-client.d.ts.map +1 -0
- package/dist/payments/evm/stats-client.js +25 -0
- package/dist/payments/evm/stats-client.js.map +1 -0
- package/dist/payments/evm/subpool-client.d.ts +30 -0
- package/dist/payments/evm/subpool-client.d.ts.map +1 -0
- package/dist/payments/evm/subpool-client.js +158 -0
- package/dist/payments/evm/subpool-client.js.map +1 -0
- package/dist/payments/index.d.ts +29 -9
- package/dist/payments/index.d.ts.map +1 -1
- package/dist/payments/index.js +27 -9
- package/dist/payments/index.js.map +1 -1
- package/dist/payments/pricing.d.ts +25 -0
- package/dist/payments/pricing.d.ts.map +1 -0
- package/dist/payments/pricing.js +33 -0
- package/dist/payments/pricing.js.map +1 -0
- package/dist/payments/readiness.d.ts +13 -0
- package/dist/payments/readiness.d.ts.map +1 -0
- package/dist/payments/readiness.js +57 -0
- package/dist/payments/readiness.js.map +1 -0
- package/dist/payments/seller-payment-manager.d.ts +101 -36
- package/dist/payments/seller-payment-manager.d.ts.map +1 -1
- package/dist/payments/seller-payment-manager.js +612 -120
- package/dist/payments/seller-payment-manager.js.map +1 -1
- package/dist/payments/session-store.d.ts +68 -0
- package/dist/payments/session-store.d.ts.map +1 -0
- package/dist/payments/session-store.js +272 -0
- package/dist/payments/session-store.js.map +1 -0
- package/dist/payments/types.d.ts +5 -3
- package/dist/payments/types.d.ts.map +1 -1
- package/dist/payments/usdc-utils.d.ts +9 -0
- package/dist/payments/usdc-utils.d.ts.map +1 -0
- package/dist/payments/usdc-utils.js +17 -0
- package/dist/payments/usdc-utils.js.map +1 -0
- package/dist/proxy/proxy-mux.d.ts.map +1 -1
- package/dist/proxy/proxy-mux.js +3 -2
- package/dist/proxy/proxy-mux.js.map +1 -1
- package/dist/proxy/request-codec.d.ts.map +1 -1
- package/dist/proxy/request-codec.js +3 -0
- package/dist/proxy/request-codec.js.map +1 -1
- package/dist/reputation/rating-manager.d.ts.map +1 -1
- package/dist/reputation/rating-manager.js +2 -4
- package/dist/reputation/rating-manager.js.map +1 -1
- package/dist/reputation/report-manager.d.ts.map +1 -1
- package/dist/reputation/report-manager.js +2 -4
- package/dist/reputation/report-manager.js.map +1 -1
- package/dist/routing/default-router.d.ts.map +1 -1
- package/dist/routing/default-router.js +4 -9
- package/dist/routing/default-router.js.map +1 -1
- package/dist/seller-request-handler.d.ts +54 -0
- package/dist/seller-request-handler.d.ts.map +1 -0
- package/dist/seller-request-handler.js +359 -0
- package/dist/seller-request-handler.js.map +1 -0
- package/dist/storage/migrate.d.ts +13 -0
- package/dist/storage/migrate.d.ts.map +1 -0
- package/dist/storage/migrate.js +28 -0
- package/dist/storage/migrate.js.map +1 -0
- package/dist/storage/migrations/channels/001_create_tables.d.ts +3 -0
- package/dist/storage/migrations/channels/001_create_tables.d.ts.map +1 -0
- package/dist/storage/migrations/channels/001_create_tables.js +45 -0
- package/dist/storage/migrations/channels/001_create_tables.js.map +1 -0
- package/dist/storage/migrations/channels/002_add_auth_sig_columns.d.ts +3 -0
- package/dist/storage/migrations/channels/002_add_auth_sig_columns.d.ts.map +1 -0
- package/dist/storage/migrations/channels/002_add_auth_sig_columns.js +19 -0
- package/dist/storage/migrations/channels/002_add_auth_sig_columns.js.map +1 -0
- package/dist/storage/migrations/channels/index.d.ts +3 -0
- package/dist/storage/migrations/channels/index.d.ts.map +1 -0
- package/dist/storage/migrations/channels/index.js +4 -0
- package/dist/storage/migrations/channels/index.js.map +1 -0
- package/dist/storage/migrations/metering/001_create_tables.d.ts +3 -0
- package/dist/storage/migrations/metering/001_create_tables.d.ts.map +1 -0
- package/dist/storage/migrations/metering/001_create_tables.js +80 -0
- package/dist/storage/migrations/metering/001_create_tables.js.map +1 -0
- package/dist/storage/migrations/metering/index.d.ts +3 -0
- package/dist/storage/migrations/metering/index.d.ts.map +1 -0
- package/dist/storage/migrations/metering/index.js +3 -0
- package/dist/storage/migrations/metering/index.js.map +1 -0
- package/dist/types/capability.d.ts +1 -1
- package/dist/types/http.d.ts +2 -0
- package/dist/types/http.d.ts.map +1 -1
- package/dist/types/http.js +2 -0
- package/dist/types/http.js.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +0 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/metering.d.ts +2 -2
- package/dist/types/metering.d.ts.map +1 -1
- package/dist/types/peer.d.ts +10 -11
- package/dist/types/peer.d.ts.map +1 -1
- package/dist/types/peer.js +7 -3
- package/dist/types/peer.js.map +1 -1
- package/dist/types/protocol.d.ts +32 -97
- package/dist/types/protocol.d.ts.map +1 -1
- package/dist/types/protocol.js +5 -10
- package/dist/types/protocol.js.map +1 -1
- package/dist/types/rating.d.ts +1 -1
- package/dist/types/rating.d.ts.map +1 -1
- package/dist/types/report.d.ts +1 -1
- package/dist/types/report.d.ts.map +1 -1
- package/dist/utils/response-usage.d.ts +10 -0
- package/dist/utils/response-usage.d.ts.map +1 -0
- package/dist/utils/response-usage.js +34 -0
- package/dist/utils/response-usage.js.map +1 -0
- package/package.json +4 -3
package/dist/node.d.ts
CHANGED
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
import { EventEmitter } from "node:events";
|
|
2
|
-
import type { Identity } from "./p2p/identity.js";
|
|
2
|
+
import type { Identity, IdentityStore } from "./p2p/identity.js";
|
|
3
3
|
import type { PeerId } from "./types/peer.js";
|
|
4
4
|
import type { PeerInfo } from "./types/peer.js";
|
|
5
|
-
import {
|
|
5
|
+
import type { SerializedHttpRequest, SerializedHttpResponse } from "./types/http.js";
|
|
6
|
+
import { type SellerSessionSnapshot } from "./metering/seller-session-tracker.js";
|
|
6
7
|
import { ConnectionState } from "./types/connection.js";
|
|
7
8
|
import type { Provider, ProviderStreamCallbacks } from "./interfaces/seller-provider.js";
|
|
8
9
|
import type { Router } from "./interfaces/buyer-router.js";
|
|
9
10
|
import { type PaymentConfig, type PaymentMethod } from "./payments/index.js";
|
|
10
11
|
import { BuyerPaymentManager, type BuyerPaymentConfig } from "./payments/buyer-payment-manager.js";
|
|
12
|
+
import { BuyerPaymentNegotiator } from "./payments/buyer-payment-negotiator.js";
|
|
13
|
+
import { IdentityClient } from "./payments/evm/identity-client.js";
|
|
14
|
+
import { type RequestStreamCallbacks, type RequestStreamResponseMetadata, type RequestExecutionOptions } from "./buyer-request-handler.js";
|
|
11
15
|
export type { Provider, ProviderStreamCallbacks };
|
|
12
16
|
export type { Router };
|
|
13
17
|
export type { BuyerPaymentConfig };
|
|
18
|
+
export type { SellerSessionSnapshot };
|
|
19
|
+
export type { RequestStreamCallbacks, RequestStreamResponseMetadata, RequestExecutionOptions };
|
|
14
20
|
export interface NodePaymentsConfig {
|
|
15
21
|
/** Enable seller-side payment channels and automatic settlement. */
|
|
16
22
|
enabled?: boolean;
|
|
@@ -20,18 +26,36 @@ export interface NodePaymentsConfig {
|
|
|
20
26
|
platformFeeRate?: number;
|
|
21
27
|
/** Idle time before a session is finalized and settled. Default: 30000ms */
|
|
22
28
|
settlementIdleMs?: number;
|
|
23
|
-
/** Default
|
|
24
|
-
|
|
25
|
-
/** Optional seller wallet address for auto-funded
|
|
29
|
+
/** Default deposit amount in USDC units. Default: "1" */
|
|
30
|
+
defaultDepositAmountUSDC?: string;
|
|
31
|
+
/** Optional seller wallet address for auto-funded deposit. */
|
|
26
32
|
sellerWalletAddress?: string;
|
|
27
33
|
/** Settlement backend configuration (crypto). */
|
|
28
34
|
paymentConfig?: PaymentConfig | null;
|
|
29
35
|
/** Base JSON-RPC URL (e.g. http://127.0.0.1:8545 for anvil) */
|
|
30
36
|
rpcUrl?: string;
|
|
31
|
-
/** Deployed
|
|
32
|
-
|
|
37
|
+
/** Deployed AntseedDeposits contract address */
|
|
38
|
+
depositsAddress?: string;
|
|
39
|
+
/** Deployed AntseedChannels contract address */
|
|
40
|
+
channelsAddress?: string;
|
|
33
41
|
/** USDC token contract address */
|
|
34
42
|
usdcAddress?: string;
|
|
43
|
+
/** ERC-8004 IdentityRegistry contract address */
|
|
44
|
+
identityRegistryAddress?: string;
|
|
45
|
+
/** AntseedStaking contract address */
|
|
46
|
+
stakingAddress?: string;
|
|
47
|
+
/** Chain ID for EIP-712 domain. Default: 8453 (Base) */
|
|
48
|
+
chainId?: number;
|
|
49
|
+
/** Default maximum USDC per spending auth. Default: 500000 ($0.50) */
|
|
50
|
+
defaultMaxAmountUsdc?: string;
|
|
51
|
+
/** Default auth duration in seconds. Default: 90000 */
|
|
52
|
+
defaultAuthDurationSecs?: number;
|
|
53
|
+
/** Minimum USDC per request (base units) for seller. Default: "10000" ($0.01). */
|
|
54
|
+
minBudgetPerRequest?: string;
|
|
55
|
+
/** Maximum USDC the buyer authorizes per single request (base units). Default: "500000" ($0.50). */
|
|
56
|
+
maxPerRequestUsdc?: string;
|
|
57
|
+
/** Maximum total USDC the buyer will reserve in a single SpendingAuth (base units). Default: "10000000" ($10.00). */
|
|
58
|
+
maxReserveAmountUsdc?: string;
|
|
35
59
|
}
|
|
36
60
|
export interface NodeConfig {
|
|
37
61
|
role: 'seller' | 'buyer';
|
|
@@ -59,34 +83,12 @@ export interface NodeConfig {
|
|
|
59
83
|
dhtOperationTimeoutMs?: number;
|
|
60
84
|
/** Optional seller-side payment runtime wiring. */
|
|
61
85
|
payments?: NodePaymentsConfig;
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
provider: string;
|
|
67
|
-
startedAt: number;
|
|
68
|
-
lastActivityAt: number;
|
|
69
|
-
totalRequests: number;
|
|
70
|
-
totalTokens: number;
|
|
71
|
-
avgLatencyMs: number;
|
|
72
|
-
settling: boolean;
|
|
73
|
-
lockCommitted: boolean;
|
|
74
|
-
lockedAmountUSDC: string;
|
|
75
|
-
runningTotalUSDC: string;
|
|
76
|
-
ackedRequestCount: number;
|
|
77
|
-
}
|
|
78
|
-
export interface RequestStreamResponseMetadata {
|
|
79
|
-
streaming: boolean;
|
|
80
|
-
}
|
|
81
|
-
export interface RequestStreamCallbacks {
|
|
82
|
-
onResponseStart?: (response: SerializedHttpResponse, metadata: RequestStreamResponseMetadata) => void;
|
|
83
|
-
onResponseChunk?: (chunk: SerializedHttpResponseChunk) => void;
|
|
84
|
-
}
|
|
85
|
-
export interface RequestExecutionOptions {
|
|
86
|
-
signal?: AbortSignal;
|
|
86
|
+
/** Pluggable identity storage backend. When set, takes precedence over dataDir for identity loading. */
|
|
87
|
+
identityStore?: IdentityStore;
|
|
88
|
+
/** Optional explicit config.json path for runtime config reloads. */
|
|
89
|
+
configPath?: string;
|
|
87
90
|
}
|
|
88
91
|
export declare class AntseedNode extends EventEmitter {
|
|
89
|
-
private static readonly _METADATA_REFRESH_DEBOUNCE_MS;
|
|
90
92
|
private _config;
|
|
91
93
|
private _identity;
|
|
92
94
|
private _dht;
|
|
@@ -103,17 +105,29 @@ export declare class AntseedNode extends EventEmitter {
|
|
|
103
105
|
private _metering;
|
|
104
106
|
private _receiptGenerator;
|
|
105
107
|
private _balanceManager;
|
|
106
|
-
private
|
|
108
|
+
private _depositsClient;
|
|
109
|
+
private _channelsClient;
|
|
110
|
+
private _stakingClient;
|
|
111
|
+
private _identityClient;
|
|
107
112
|
private _paymentMuxes;
|
|
108
|
-
|
|
109
|
-
private
|
|
110
|
-
/** Per-buyer session tracking: buyerPeerId → seller session state */
|
|
111
|
-
private _sessions;
|
|
112
|
-
private _settlementTimers;
|
|
113
|
+
/** Seller-side request handler (provider matching, execution, load tracking). */
|
|
114
|
+
private _sellerHandler;
|
|
113
115
|
/** Buyer-side payment manager (initialized when buyer has payment config). */
|
|
114
116
|
private _buyerPaymentManager;
|
|
115
|
-
/**
|
|
116
|
-
private
|
|
117
|
+
/** Buyer-side payment negotiation (402 handling, SpendingAuth, cost tracking). */
|
|
118
|
+
private _buyerNegotiator;
|
|
119
|
+
/** Buyer-side request execution (streaming, timeouts, 402 retry). */
|
|
120
|
+
private _buyerHandler;
|
|
121
|
+
/** Seller-side payment manager (initialized when seller has payment config). */
|
|
122
|
+
private _sellerPaymentManager;
|
|
123
|
+
/** Shared channel store for payment persistence. */
|
|
124
|
+
private _channelStore;
|
|
125
|
+
/** Periodic timeout checker interval. */
|
|
126
|
+
private _timeoutCheckerInterval;
|
|
127
|
+
/** Block cursor for CloseRequested event polling. */
|
|
128
|
+
private _closeRequestedFromBlock;
|
|
129
|
+
/** Seller session lifecycle tracking (metering, settlement). */
|
|
130
|
+
private _sessionTracker;
|
|
117
131
|
constructor(config: NodeConfig);
|
|
118
132
|
get peerId(): string | null;
|
|
119
133
|
get identity(): Identity | null;
|
|
@@ -122,10 +136,14 @@ export declare class AntseedNode extends EventEmitter {
|
|
|
122
136
|
get router(): Router | null;
|
|
123
137
|
/** Buyer-side payment manager (null if payments not enabled or not in buyer mode). */
|
|
124
138
|
get buyerPaymentManager(): BuyerPaymentManager | null;
|
|
139
|
+
/** Buyer-side payment negotiator (null if payments not configured for buyer). */
|
|
140
|
+
get buyerNegotiator(): BuyerPaymentNegotiator | null;
|
|
125
141
|
/** Actual DHT port after binding (0 means not started). */
|
|
126
142
|
get dhtPort(): number;
|
|
127
143
|
/** Actual signaling/connection port after binding (0 means not started). */
|
|
128
144
|
get signalingPort(): number;
|
|
145
|
+
/** ERC-8004 IdentityRegistry client (null if not configured). */
|
|
146
|
+
get identityClient(): IdentityClient | null;
|
|
129
147
|
/** Current connection state for a peer if a connection exists, otherwise null. */
|
|
130
148
|
getPeerConnectionState(peerId: PeerId): ConnectionState | null;
|
|
131
149
|
/**
|
|
@@ -133,8 +151,8 @@ export declare class AntseedNode extends EventEmitter {
|
|
|
133
151
|
* Includes open sessions before they are finalized/settled.
|
|
134
152
|
*/
|
|
135
153
|
getActiveSellerSessions(): SellerSessionSnapshot[];
|
|
136
|
-
/** Number of active in-memory seller
|
|
137
|
-
|
|
154
|
+
/** Number of active in-memory seller channels that are not currently settling. */
|
|
155
|
+
getActiveSellerChannelCount(): number;
|
|
138
156
|
start(): Promise<void>;
|
|
139
157
|
stop(): Promise<void>;
|
|
140
158
|
discoverPeers(service?: string): Promise<PeerInfo[]>;
|
|
@@ -143,78 +161,39 @@ export declare class AntseedNode extends EventEmitter {
|
|
|
143
161
|
* Subsequent sendRequest / sendRequestStream calls will reuse this connection.
|
|
144
162
|
*/
|
|
145
163
|
connectToPeer(peer: PeerInfo): Promise<void>;
|
|
164
|
+
/**
|
|
165
|
+
* Query session stats for a specific seller peer.
|
|
166
|
+
* Combines channel store data (authoritative payment/session info) with
|
|
167
|
+
* metering events when available.
|
|
168
|
+
*/
|
|
169
|
+
getMeteringStatsByPeer(sellerPeerId: string): {
|
|
170
|
+
totalRequests: number;
|
|
171
|
+
inputTokens: number;
|
|
172
|
+
outputTokens: number;
|
|
173
|
+
totalTokens: number;
|
|
174
|
+
reservedUsdc: string | null;
|
|
175
|
+
consumedUsdc: string | null;
|
|
176
|
+
channelStatus: string | null;
|
|
177
|
+
reservedAt: number | null;
|
|
178
|
+
lifetimeSessions: number;
|
|
179
|
+
lifetimeRequests: number;
|
|
180
|
+
lifetimeInputTokens: number;
|
|
181
|
+
lifetimeOutputTokens: number;
|
|
182
|
+
lifetimeTotalTokens: number;
|
|
183
|
+
lifetimeAuthorizedUsdc: string;
|
|
184
|
+
lifetimeFirstSessionAt: number | null;
|
|
185
|
+
} | null;
|
|
146
186
|
sendRequest(peer: PeerInfo, req: SerializedHttpRequest, options?: RequestExecutionOptions): Promise<SerializedHttpResponse>;
|
|
147
187
|
sendRequestStream(peer: PeerInfo, req: SerializedHttpRequest, callbacks: RequestStreamCallbacks, options?: RequestExecutionOptions): Promise<SerializedHttpResponse>;
|
|
148
|
-
private _sendRequestInternal;
|
|
149
188
|
private _createDHTConfig;
|
|
150
189
|
private _wireConnection;
|
|
151
190
|
private _startSeller;
|
|
152
191
|
private _startBuyer;
|
|
153
192
|
private _handleIncomingConnection;
|
|
154
|
-
private _executeProviderRequest;
|
|
155
|
-
private _stripStreamingHeader;
|
|
156
|
-
private _parseJsonBody;
|
|
157
|
-
private _extractRequestedService;
|
|
158
|
-
private _extractRequestedProvider;
|
|
159
|
-
private _resolveProviderPricing;
|
|
160
|
-
private _getOrCreateSellerSession;
|
|
161
|
-
private _emitSellerSessionUpdated;
|
|
162
|
-
/** Estimate tokens from byte lengths (rough: ~4 chars per token). */
|
|
163
|
-
private _estimateTokens;
|
|
164
|
-
private _recordMetering;
|
|
165
193
|
private _initializePayments;
|
|
166
|
-
private _scheduleSettlementTimer;
|
|
167
|
-
private _finalizeSession;
|
|
168
|
-
private _finalizeAllSessions;
|
|
169
194
|
private _getOrCreateConnection;
|
|
170
195
|
private _getOrCreateMux;
|
|
171
|
-
/**
|
|
172
|
-
* Handle SessionLockAuth from buyer (Task 2).
|
|
173
|
-
* Recovers buyer address, commits lock on-chain, initializes bilateral state.
|
|
174
|
-
*/
|
|
175
|
-
private _handleSessionLockAuth;
|
|
176
|
-
/**
|
|
177
|
-
* Generate and send a bilateral receipt after processing a request (Task 3).
|
|
178
|
-
*/
|
|
179
|
-
private _sendBilateralReceipt;
|
|
180
|
-
/**
|
|
181
|
-
* Handle BuyerAck (Task 4).
|
|
182
|
-
* Verifies buyer's Ed25519 ack signature and updates session state.
|
|
183
|
-
*/
|
|
184
|
-
private _handleBuyerAck;
|
|
185
|
-
/**
|
|
186
|
-
* Handle SessionEnd from buyer (Task 5).
|
|
187
|
-
* Submits settlement on-chain and cleans up.
|
|
188
|
-
*/
|
|
189
|
-
private _handleSessionEnd;
|
|
190
|
-
/**
|
|
191
|
-
* Handle TopUpAuth from buyer (Task 6).
|
|
192
|
-
* Calls extendLock on-chain and updates session.
|
|
193
|
-
*/
|
|
194
|
-
private _handleTopUpAuth;
|
|
195
|
-
/**
|
|
196
|
-
* Create a PaymentMux for a buyer-side outbound connection and register
|
|
197
|
-
* buyer-side handlers (lock confirm, lock reject, seller receipt, top-up request).
|
|
198
|
-
*/
|
|
199
|
-
private _getOrCreateBuyerPaymentMux;
|
|
200
|
-
/**
|
|
201
|
-
* Initiate a lock with a seller peer. Creates PaymentMux, signs lock auth,
|
|
202
|
-
* and waits for confirmation before returning.
|
|
203
|
-
*/
|
|
204
|
-
private _initiateBuyerLock;
|
|
205
|
-
/**
|
|
206
|
-
* Poll until the lock for a seller is confirmed or rejected.
|
|
207
|
-
* Polls every 200ms with a 30-second timeout.
|
|
208
|
-
*/
|
|
209
|
-
private _waitForLockConfirmation;
|
|
210
|
-
/**
|
|
211
|
-
* End all active buyer payment sessions (called during shutdown).
|
|
212
|
-
*/
|
|
213
|
-
private _endAllBuyerSessions;
|
|
214
196
|
private _resolvePublicAddress;
|
|
215
197
|
private _lookupResultToPeerInfo;
|
|
216
|
-
private _adjustProviderLoad;
|
|
217
|
-
private _scheduleMetadataRefresh;
|
|
218
|
-
private _unrefTimer;
|
|
219
198
|
}
|
|
220
199
|
//# sourceMappingURL=node.d.ts.map
|
package/dist/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|