@aifinpay/agent 1.5.0 → 1.7.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.
@@ -138,7 +138,13 @@ export interface SplitterDeployment {
138
138
  usdc?: `0x${string}`;
139
139
  explorer: string;
140
140
  /** Env var consulted for the native-token USD price used by the
141
- * pre-sign challenge guard, and its fallback default. */
141
+ * pre-sign challenge guard. An operator who sets it means it, so it wins.
142
+ *
143
+ * `nativeUsdDefault` is NOT consulted by the guard any more — see
144
+ * nativeUsdFor(). It survives as published reference data only. A constant
145
+ * in a blocking guard is what made this SDK reject valid payments: POL sat
146
+ * at 0.70 here while trading near 0.073, so every quote looked ten times
147
+ * its cost and BudgetCapExceededError fired before any money moved. */
142
148
  nativeUsdEnv: string;
143
149
  nativeUsdDefault: number;
144
150
  }
@@ -159,7 +165,25 @@ export declare class WrongChainBalanceError extends AiFinPayError {
159
165
  export declare class InsufficientFundsError extends AiFinPayError {
160
166
  needed_usd: number;
161
167
  available_usd: number;
162
- constructor(needed_usd: number, available_usd: number, msg: string);
168
+ readonly details?: {
169
+ address: string;
170
+ chain: string;
171
+ symbol: string;
172
+ needed_wei: string;
173
+ available_wei: string;
174
+ } | undefined;
175
+ /**
176
+ * `details` carries the native amounts, which are what the caller acts on —
177
+ * the USD figures depend on a price feed that may be unavailable, and an
178
+ * error about missing funds is the worst possible place to invent a number.
179
+ */
180
+ constructor(needed_usd: number, available_usd: number, msg: string, details?: {
181
+ address: string;
182
+ chain: string;
183
+ symbol: string;
184
+ needed_wei: string;
185
+ available_wei: string;
186
+ } | undefined);
163
187
  }
164
188
  export declare class BudgetCapExceededError extends AiFinPayError {
165
189
  kind: "daily" | "per_call";
@@ -324,6 +348,36 @@ export declare class AiFinPayAgent {
324
348
  *
325
349
  * Returns false (skip) instead of throwing when on_limit_exceeded="skip".
326
350
  */
351
+ /**
352
+ * The native-token USD price for the pre-sign guard.
353
+ *
354
+ * Order: an explicit env var, then the protocol's own price feed, then
355
+ * nothing. "Nothing" is deliberate and is the whole point of this method.
356
+ * The guard used to fall back to a constant compiled into the SDK; POL sat
357
+ * at 0.70 while trading near 0.073, so a real $0.01 payment estimated at
358
+ * $0.096, cleared the $0.06 ceiling and threw BudgetCapExceededError. The
359
+ * payment never left, and the error blamed the bridge for demanding too
360
+ * much.
361
+ *
362
+ * A guard that blocks on a number it cannot justify is worse than no guard,
363
+ * so an unknown price returns NaN and guardChallengeAmount declines to
364
+ * block. Overpayment protection is given up only in the case where we have
365
+ * no basis for it, which is the honest trade.
366
+ */
367
+ private priceCache?;
368
+ private nativeUsdFor;
369
+ /**
370
+ * Refuse to broadcast a transaction the account cannot pay for, and say so
371
+ * in terms the caller can act on.
372
+ *
373
+ * Without this the SDK handed back viem's ContractFunctionExecutionError —
374
+ * several paragraphs explaining that cost is `gas * gas fee + value` — for
375
+ * the one condition an agent operator can fix in ten seconds. Worse, the SDK
376
+ * has exported an InsufficientFundsError since the first release and never
377
+ * threw it, so anyone who wrote `catch (e instanceof InsufficientFundsError)`
378
+ * had a branch that could not run.
379
+ */
380
+ private assertCanAffordNative;
327
381
  private guardChallengeAmount;
328
382
  /**
329
383
  * Chain selection heuristic — see Obsidian/23 - Unified SDK Design §Routing.
@@ -442,6 +496,27 @@ export declare class AiFinPayAgent {
442
496
  private splitterTreasuryCache;
443
497
  /** Read + cache B2BSplitter.treasury() on the given chain (default
444
498
  * polygon for back-compat). Returns null on RPC failure. */
499
+ /**
500
+ * Which Splitter generation is actually deployed at this address.
501
+ *
502
+ * The version used to come from a chain -> version table while the ADDRESS
503
+ * came from the bridge's 402 challenge. Two different sources, and they can
504
+ * disagree — in production they did. The Exa bridge still hands out the
505
+ * pre-v1.2 splitter 0xE34Fc0E6… and sends no version, the table says
506
+ * "polygon is 1.2", and the SDK called payNative on a contract that only has
507
+ * payMatic. The payment reverted with nothing in the reason to explain it.
508
+ *
509
+ * A table keyed by chain cannot be right when the address is variable input,
510
+ * so this asks the contract instead. payNative's 4-byte selector appears in a
511
+ * v1.2 dispatcher and is absent from v1.1 — the same check used to verify all
512
+ * six registry chains against mainnet.
513
+ *
514
+ * One eth_getCode, cached per (chain, address). Falls back to the registry
515
+ * only when the code cannot be read: guessing beats refusing to pay, and for
516
+ * the addresses we deployed the guess is right.
517
+ */
518
+ private splitterVersionCache;
519
+ private detectSplitterVersion;
445
520
  private splitterTreasury;
446
521
  /**
447
522
  * Read the native Polygon USDC (Circle-issued, 6 decimals) balance for the
@@ -1 +1 @@
1
- {"version":3,"file":"unifiedAgent.d.ts","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unifiedAgent.d.ts","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import nacl from "tweetnacl";
13
13
  import { blake2b } from "@noble/hashes/blake2b";
14
14
  import bs58 from "bs58";
15
15
  import { createHash, randomBytes } from "node:crypto";
16
- import { createPublicClient, createWalletClient, http, keccak256, toHex, } from "viem";
16
+ import { createPublicClient, createWalletClient, http, keccak256, toHex, toFunctionSelector, formatEther, } from "viem";
17
17
  import { privateKeyToAccount, } from "viem/accounts";
18
18
  import { defineChain } from "viem";
19
19
  import { polygon, base, arbitrum, optimism, bsc, mainnet, unichain } from "viem/chains";
@@ -106,7 +106,7 @@ export const SPLITTER_DEPLOYMENTS = {
106
106
  usdc: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
107
107
  explorer: "https://polygonscan.com",
108
108
  nativeUsdEnv: "AIFINPAY_MATIC_USD", // legacy name kept for back-compat
109
- nativeUsdDefault: 0.70,
109
+ nativeUsdDefault: 0.073, // reference only; ~$0.073 on 2026-08-03
110
110
  },
111
111
  base: {
112
112
  version: "1.1",
@@ -117,7 +117,7 @@ export const SPLITTER_DEPLOYMENTS = {
117
117
  usdc: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
118
118
  explorer: "https://basescan.org",
119
119
  nativeUsdEnv: "AIFINPAY_ETH_USD",
120
- nativeUsdDefault: 3000,
120
+ nativeUsdDefault: 1870, // reference only; ~$1870 on 2026-08-03
121
121
  },
122
122
  optimism: {
123
123
  version: "1.2",
@@ -128,7 +128,7 @@ export const SPLITTER_DEPLOYMENTS = {
128
128
  usdc: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
129
129
  explorer: "https://optimistic.etherscan.io",
130
130
  nativeUsdEnv: "AIFINPAY_ETH_USD",
131
- nativeUsdDefault: 3000,
131
+ nativeUsdDefault: 1870, // reference only; ~$1870 on 2026-08-03
132
132
  },
133
133
  unichain: {
134
134
  version: "1.1",
@@ -139,7 +139,7 @@ export const SPLITTER_DEPLOYMENTS = {
139
139
  usdc: "0x078D782b760474a361dDA0AF3839290b0EF57AD6",
140
140
  explorer: "https://uniscan.xyz",
141
141
  nativeUsdEnv: "AIFINPAY_ETH_USD",
142
- nativeUsdDefault: 3000,
142
+ nativeUsdDefault: 1870, // reference only; ~$1870 on 2026-08-03
143
143
  },
144
144
  botchain: {
145
145
  version: "1.2",
@@ -217,10 +217,17 @@ export class WrongChainBalanceError extends AiFinPayError {
217
217
  export class InsufficientFundsError extends AiFinPayError {
218
218
  needed_usd;
219
219
  available_usd;
220
- constructor(needed_usd, available_usd, msg) {
220
+ details;
221
+ /**
222
+ * `details` carries the native amounts, which are what the caller acts on —
223
+ * the USD figures depend on a price feed that may be unavailable, and an
224
+ * error about missing funds is the worst possible place to invent a number.
225
+ */
226
+ constructor(needed_usd, available_usd, msg, details) {
221
227
  super(msg);
222
228
  this.needed_usd = needed_usd;
223
229
  this.available_usd = available_usd;
230
+ this.details = details;
224
231
  }
225
232
  }
226
233
  export class BudgetCapExceededError extends AiFinPayError {
@@ -644,6 +651,107 @@ export class AiFinPayAgent {
644
651
  *
645
652
  * Returns false (skip) instead of throwing when on_limit_exceeded="skip".
646
653
  */
654
+ /**
655
+ * The native-token USD price for the pre-sign guard.
656
+ *
657
+ * Order: an explicit env var, then the protocol's own price feed, then
658
+ * nothing. "Nothing" is deliberate and is the whole point of this method.
659
+ * The guard used to fall back to a constant compiled into the SDK; POL sat
660
+ * at 0.70 while trading near 0.073, so a real $0.01 payment estimated at
661
+ * $0.096, cleared the $0.06 ceiling and threw BudgetCapExceededError. The
662
+ * payment never left, and the error blamed the bridge for demanding too
663
+ * much.
664
+ *
665
+ * A guard that blocks on a number it cannot justify is worse than no guard,
666
+ * so an unknown price returns NaN and guardChallengeAmount declines to
667
+ * block. Overpayment protection is given up only in the case where we have
668
+ * no basis for it, which is the honest trade.
669
+ */
670
+ priceCache;
671
+ async nativeUsdFor(deployment) {
672
+ const env = process.env[deployment.nativeUsdEnv];
673
+ if (env !== undefined) {
674
+ const v = parseFloat(env);
675
+ if (Number.isFinite(v) && v > 0)
676
+ return { usd: v, source: deployment.nativeUsdEnv };
677
+ }
678
+ const symbol = deployment.chain.nativeCurrency.symbol.toUpperCase();
679
+ const fresh = this.priceCache && Date.now() - this.priceCache.at < 60_000;
680
+ if (!fresh) {
681
+ try {
682
+ const r = await this.inner.fetchImpl(`${this.inner.baseUrl}/api/price/native`, {
683
+ signal: AbortSignal.timeout(5_000),
684
+ });
685
+ if (r.ok) {
686
+ const body = (await r.json());
687
+ if (body?.usd)
688
+ this.priceCache = { at: Date.now(), usd: body.usd };
689
+ }
690
+ }
691
+ catch {
692
+ // A feed that will not answer is not a payment failure. Fall through
693
+ // to "unknown" rather than to a guess.
694
+ }
695
+ }
696
+ const live = this.priceCache?.usd?.[symbol];
697
+ if (typeof live === "number" && Number.isFinite(live) && live > 0) {
698
+ return { usd: live, source: "aifinpay price feed" };
699
+ }
700
+ return { usd: NaN, source: "unknown" };
701
+ }
702
+ /**
703
+ * Refuse to broadcast a transaction the account cannot pay for, and say so
704
+ * in terms the caller can act on.
705
+ *
706
+ * Without this the SDK handed back viem's ContractFunctionExecutionError —
707
+ * several paragraphs explaining that cost is `gas * gas fee + value` — for
708
+ * the one condition an agent operator can fix in ten seconds. Worse, the SDK
709
+ * has exported an InsufficientFundsError since the first release and never
710
+ * threw it, so anyone who wrote `catch (e instanceof InsufficientFundsError)`
711
+ * had a branch that could not run.
712
+ */
713
+ async assertCanAffordNative(publicClient, deployment, valueWei) {
714
+ const address = this.evmAccount.address;
715
+ let balance;
716
+ let gasPrice;
717
+ try {
718
+ [balance, gasPrice] = await Promise.all([
719
+ publicClient.getBalance({ address }),
720
+ publicClient.getGasPrice(),
721
+ ]);
722
+ }
723
+ catch {
724
+ // An RPC that will not answer must not turn into a funding error; let
725
+ // the actual send produce the actual failure.
726
+ return;
727
+ }
728
+ // A splitter payment lands around 120k gas; the headroom covers a fee
729
+ // spike between this check and inclusion. Being generous here only makes
730
+ // the check quieter, never wrong — a send that fails anyway still fails.
731
+ const gasBudget = gasPrice * 200000n;
732
+ const needed = valueWei + gasBudget;
733
+ if (balance >= needed)
734
+ return;
735
+ const symbol = deployment.chain.nativeCurrency.symbol;
736
+ const chainName = deployment.chain.name;
737
+ const short = (wei) => {
738
+ const s = formatEther(wei);
739
+ return s.includes(".") ? s.replace(/(\.\d{6})\d+$/, "$1").replace(/\.?0+$/, "") || "0" : s;
740
+ };
741
+ const { usd } = await this.nativeUsdFor(deployment);
742
+ const toUsd = (wei) => Number.isFinite(usd) ? (Number(wei) / 1e18) * usd : Number.NaN;
743
+ throw new InsufficientFundsError(toUsd(needed), toUsd(balance), `Agent ${address} holds ${short(balance)} ${symbol} on ${chainName}, but this call needs ` +
744
+ `about ${short(needed)} ${symbol} — ${short(valueWei)} for the payment and up to ` +
745
+ `${short(gasBudget)} for gas. The gas figure is a ceiling: it assumes 200k gas at the ` +
746
+ `current price, while a splitter payment typically uses closer to 120k. Fund the ` +
747
+ `address with ${symbol} on ${chainName} and retry.`, {
748
+ address,
749
+ chain: chainName,
750
+ symbol,
751
+ needed_wei: needed.toString(),
752
+ available_wei: balance.toString(),
753
+ });
754
+ }
647
755
  guardChallengeAmount(estUsd, declaredCost, providerName) {
648
756
  if (!Number.isFinite(estUsd) || estUsd <= 0)
649
757
  return true; // can't estimate — don't block
@@ -912,7 +1020,9 @@ export class AiFinPayAgent {
912
1020
  // USD price per chain via SPLITTER_DEPLOYMENTS.nativeUsdEnv.
913
1021
  {
914
1022
  const wei = Number(pm.total_wei);
915
- const nativeUsd = parseFloat(process.env[deployment.nativeUsdEnv] ?? String(deployment.nativeUsdDefault));
1023
+ const { usd: nativeUsd } = await this.nativeUsdFor(deployment);
1024
+ // NaN when no price is known — guardChallengeAmount then declines to
1025
+ // block rather than blocking on a guess. See nativeUsdFor().
916
1026
  const estUsd = (Number.isFinite(wei) ? wei / 1e18 : 0) * nativeUsd;
917
1027
  const guarded = this.guardChallengeAmount(estUsd, cost, provider.name);
918
1028
  if (!guarded)
@@ -936,11 +1046,21 @@ export class AiFinPayAgent {
936
1046
  // paymentId and rejects one it has already settled, while Base and Unichain
937
1047
  // still run v1.1. Sending v1.2 calldata to a v1.1 contract reverts with no
938
1048
  // useful reason, so this must be decided per chain.
939
- // When the server overrides the address it must also say which contract it
940
- // is, otherwise a server pointing at v1.2 on a chain this registry still
941
- // records as v1.1 would be called with the wrong ABI. The server wins
942
- // because it is the one that knows what it just deployed.
943
- const splitterVersion = pm.splitter_version ?? deployment.version;
1049
+ // An explicit `splitter_version` wins — a server that states it knows what
1050
+ // it deployed. What it must NOT fall back to is this registry's
1051
+ // chain -> version entry, because the ADDRESS came from the challenge and
1052
+ // the version would come from a table: two sources that can disagree.
1053
+ //
1054
+ // In production they did. The Exa bridge still hands out the pre-v1.2
1055
+ // splitter 0xE34Fc0E6… and sends no version; the table says "polygon is
1056
+ // 1.2"; the SDK called payNative on a contract that only has payMatic, and
1057
+ // the payment reverted with nothing in the reason to explain it.
1058
+ //
1059
+ // So when the server is silent, ask the contract at the address we were
1060
+ // actually handed. The registry is used only if the chain cannot be read.
1061
+ const splitterVersion = pm.splitter_version
1062
+ ?? await this.detectSplitterVersion(splitterAddress, chain, deployment.version);
1063
+ await this.assertCanAffordNative(publicClient, deployment, BigInt(pm.total_wei));
944
1064
  const txHash = splitterVersion === "1.2"
945
1065
  ? await walletClient.writeContract({
946
1066
  address: splitterAddress,
@@ -1161,6 +1281,45 @@ export class AiFinPayAgent {
1161
1281
  splitterTreasuryCache = new Map();
1162
1282
  /** Read + cache B2BSplitter.treasury() on the given chain (default
1163
1283
  * polygon for back-compat). Returns null on RPC failure. */
1284
+ /**
1285
+ * Which Splitter generation is actually deployed at this address.
1286
+ *
1287
+ * The version used to come from a chain -> version table while the ADDRESS
1288
+ * came from the bridge's 402 challenge. Two different sources, and they can
1289
+ * disagree — in production they did. The Exa bridge still hands out the
1290
+ * pre-v1.2 splitter 0xE34Fc0E6… and sends no version, the table says
1291
+ * "polygon is 1.2", and the SDK called payNative on a contract that only has
1292
+ * payMatic. The payment reverted with nothing in the reason to explain it.
1293
+ *
1294
+ * A table keyed by chain cannot be right when the address is variable input,
1295
+ * so this asks the contract instead. payNative's 4-byte selector appears in a
1296
+ * v1.2 dispatcher and is absent from v1.1 — the same check used to verify all
1297
+ * six registry chains against mainnet.
1298
+ *
1299
+ * One eth_getCode, cached per (chain, address). Falls back to the registry
1300
+ * only when the code cannot be read: guessing beats refusing to pay, and for
1301
+ * the addresses we deployed the guess is right.
1302
+ */
1303
+ splitterVersionCache = new Map();
1304
+ async detectSplitterVersion(splitter, chainName, fallback) {
1305
+ const key = `${chainName}:${splitter.toLowerCase()}`;
1306
+ const cached = this.splitterVersionCache.get(key);
1307
+ if (cached)
1308
+ return cached;
1309
+ try {
1310
+ const { publicClient } = this.splitterClients(chainName);
1311
+ const code = await publicClient.getBytecode({ address: splitter });
1312
+ if (!code || code === "0x")
1313
+ return fallback;
1314
+ const sel = toFunctionSelector("function payNative(bytes32,address,address,string)").slice(2);
1315
+ const version = code.includes(sel) ? "1.2" : "1.1";
1316
+ this.splitterVersionCache.set(key, version);
1317
+ return version;
1318
+ }
1319
+ catch {
1320
+ return fallback;
1321
+ }
1322
+ }
1164
1323
  async splitterTreasury(splitter, chainName = "polygon") {
1165
1324
  const cacheKey = `${chainName}:${splitter.toLowerCase()}`;
1166
1325
  const cached = this.splitterTreasuryCache.get(cacheKey);
@@ -1 +1 @@
1
- {"version":3,"file":"unifiedAgent.js","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unifiedAgent.js","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aifinpay/agent",
3
- "version": "1.5.0",
3
+ "version": "1.7.0",
4
4
  "description": "Unified agent-economy SDK for autonomous AI agents \u2014 chain-opaque AiFinPayAgent surface (call/openSession/balance/verify) over Solana and EVM execution environments (Polygon default; Base, Optimism, Unichain, BOT Chain, XRPL EVM splitter settlement).",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",