run402 4.118.0 → 4.119.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.
@@ -12,6 +12,7 @@
12
12
  * `run402 status` is a shim over this.
13
13
  */
14
14
  import type { Run402 } from "../index.js";
15
+ import { type OnChainBalances } from "./onchain-balances.js";
15
16
  export interface StatusTarget {
16
17
  api_base: string;
17
18
  api_base_source: "env" | "profile" | "default";
@@ -39,7 +40,10 @@ export interface WalletStatus {
39
40
  next_actions: unknown;
40
41
  projects_source: "remote" | "local_cache";
41
42
  balances: {
43
+ /** The rail's token summed over the networks it pays on (`on_chain_by_network`). */
42
44
  on_chain_usd_micros: number | null;
45
+ /** Each of those networks, test money and real money apart; null where a read failed. */
46
+ on_chain_by_network: Partial<OnChainBalances>;
43
47
  on_chain_token: "USDC" | "pathUSD";
44
48
  allowance_usd_micros: number | null;
45
49
  held_usd_micros: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/node/status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAWH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAS1C,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;IAC/C,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,6DAA6D;AAC7D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,uEAAuE;AACvE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,QAAQ,GAAG,aAAa,CAAC;IAC1C,QAAQ,EAAE;QACR,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;QACnC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;QACnC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACF,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACtE,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,eAAe,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,YAAY,CAAC;AA+C1D,wBAAsB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAsEhE"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/node/status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAWH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAA4D,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEvH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;IAC/C,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,6DAA6D;AAC7D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,uEAAuE;AACvE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,QAAQ,GAAG,aAAa,CAAC;IAC1C,QAAQ,EAAE;QACR,oFAAoF;QACpF,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;QACnC,yFAAyF;QACzF,mBAAmB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QAC9C,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;QACnC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACF,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACtE,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,eAAe,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,YAAY,CAAC;AAU1D,wBAAsB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAwEhE"}
@@ -16,50 +16,7 @@ import { readLocalWallet } from "./wallets.js";
16
16
  import { getActiveProjectId, loadKeyStore } from "../../core-dist/keystore.js";
17
17
  import { readMeta } from "../../core-dist/profiles.js";
18
18
  import { readRemoteStatus } from "./remote-status.js";
19
- const USDC_ABI = [{ name: "balanceOf", type: "function", stateMutability: "view", inputs: [{ name: "account", type: "address" }], outputs: [{ name: "", type: "uint256" }] }];
20
- const USDC_MAINNET = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";
21
- const USDC_SEPOLIA = "0x036CbD53842c5426634e7929541eC2318f3dCF7e";
22
- const PATH_USD = "0x20c0000000000000000000000000000000000000";
23
- const TEMPO_RPC = "https://rpc.moderato.tempo.xyz/";
24
- /**
25
- * The wallet's on-chain balance in USD micros for its rail: USDC on Base
26
- * mainnet plus Base Sepolia (x402), or pathUSD on Tempo Moderato (mpp).
27
- * Null when every read fails.
28
- */
29
- async function readWalletBalanceUsdMicros(rail, address) {
30
- try {
31
- const { createPublicClient, http, defineChain } = await import("viem");
32
- if (rail === "mpp") {
33
- const tempoModerato = defineChain({
34
- id: 42431,
35
- name: "Tempo Moderato",
36
- nativeCurrency: { name: "pathUSD", symbol: "pathUSD", decimals: 6 },
37
- rpcUrls: { default: { http: [TEMPO_RPC] } },
38
- });
39
- const client = createPublicClient({ chain: tempoModerato, transport: http() });
40
- try {
41
- const raw = await client.readContract({ address: PATH_USD, abi: USDC_ABI, functionName: "balanceOf", args: [address] });
42
- return Number(raw);
43
- }
44
- catch {
45
- return null;
46
- }
47
- }
48
- const { base, baseSepolia } = await import("viem/chains");
49
- const mainnetClient = createPublicClient({ chain: base, transport: http() });
50
- const sepoliaClient = createPublicClient({ chain: baseSepolia, transport: http() });
51
- const [mainnet, sepolia] = await Promise.all([
52
- mainnetClient.readContract({ address: USDC_MAINNET, abi: USDC_ABI, functionName: "balanceOf", args: [address] }).then(Number).catch(() => null),
53
- sepoliaClient.readContract({ address: USDC_SEPOLIA, abi: USDC_ABI, functionName: "balanceOf", args: [address] }).then(Number).catch(() => null),
54
- ]);
55
- if (mainnet === null && sepolia === null)
56
- return null;
57
- return (mainnet || 0) + (sepolia || 0);
58
- }
59
- catch {
60
- return null;
61
- }
62
- }
19
+ import { railBalanceKeys, readOnChainBalances, sumOnChainBalances } from "./onchain-balances.js";
63
20
  /** Always expose `project_id` (the remote listing keys entries as `id`), never both. */
64
21
  function normalizeProject(raw) {
65
22
  if (!raw || typeof raw !== "object")
@@ -89,9 +46,10 @@ export async function runStatus(r) {
89
46
  const rail = localWallet.rail || "x402";
90
47
  // Tier, allowance, and the membership-scoped project inventory, beside the
91
48
  // on-chain balance, all best-effort.
92
- const [status, walletBalance] = await Promise.all([
49
+ const balanceKeys = railBalanceKeys(rail);
50
+ const [status, onChainByNetwork] = await Promise.all([
93
51
  readRemoteStatus(r, wallet),
94
- readWalletBalanceUsdMicros(rail, localWallet.address),
52
+ readOnChainBalances(localWallet.address, balanceKeys),
95
53
  ]);
96
54
  const { tier, billing, remote } = status;
97
55
  const store = loadKeyStore();
@@ -113,7 +71,8 @@ export async function runStatus(r) {
113
71
  next_actions: status.next_actions,
114
72
  projects_source: remote ? "remote" : "local_cache",
115
73
  balances: {
116
- on_chain_usd_micros: walletBalance,
74
+ on_chain_usd_micros: sumOnChainBalances(onChainByNetwork, balanceKeys),
75
+ on_chain_by_network: onChainByNetwork,
117
76
  on_chain_token: rail === "mpp" ? "pathUSD" : "USDC",
118
77
  allowance_usd_micros: hasBilling ? billing.allowance_usd_micros : null,
119
78
  held_usd_micros: hasBilling ? (billing.held_usd_micros ?? 0) : null,
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/node/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/node/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * The two Tempo chains MPP on Tempo pays on (spec `mpp-tempo-client-surface`).
3
+ *
4
+ * Run402 offers both on every Tempo-priced SKU, in an order that states its
5
+ * preference: mainnet first on paid SKUs, Moderato first on the free prototype
6
+ * tier. pathUSD lives at the same address on both. Tempo has no native gas
7
+ * token; the sender pays its transaction fee in a stablecoin, so a payment
8
+ * needs a little pathUSD beyond the price.
9
+ */
10
+ export declare const PATH_USD: "0x20c0000000000000000000000000000000000000";
11
+ export interface TempoChain {
12
+ id: number;
13
+ /** CAIP-2 network id, as payment requirements and errors name it. */
14
+ network: `eip155:${number}`;
15
+ name: string;
16
+ rpcUrl: string;
17
+ /** The key this chain's balance is reported under in CLI and SDK JSON. */
18
+ balanceKey: "tempo_mainnet_pathusd_micros" | "tempo_moderato_pathusd_micros";
19
+ testnet: boolean;
20
+ }
21
+ export declare const TEMPO_MAINNET: TempoChain;
22
+ export declare const TEMPO_MODERATO: TempoChain;
23
+ export declare const TEMPO_CHAINS: readonly TempoChain[];
24
+ export declare function tempoChainById(id: unknown): TempoChain | null;
25
+ /**
26
+ * pathUSD (USD micros) a payment needs beyond the price, for the sender's
27
+ * Tempo transaction fee.
28
+ */
29
+ export declare const TEMPO_FEE_HEADROOM_USD_MICROS = 5000n;
30
+ //# sourceMappingURL=tempo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tempo.d.ts","sourceRoot":"","sources":["../../src/node/tempo.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,QAAQ,EAAG,4CAAqD,CAAC;AAE9E,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,OAAO,EAAE,UAAU,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,UAAU,EAAE,8BAA8B,GAAG,+BAA+B,CAAC;IAC7E,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,aAAa,EAAE,UAO3B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,UAO5B,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAAoC,CAAC;AAEnF,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAE7D;AAED;;;GAGG;AACH,eAAO,MAAM,6BAA6B,QAAS,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * The two Tempo chains MPP on Tempo pays on (spec `mpp-tempo-client-surface`).
3
+ *
4
+ * Run402 offers both on every Tempo-priced SKU, in an order that states its
5
+ * preference: mainnet first on paid SKUs, Moderato first on the free prototype
6
+ * tier. pathUSD lives at the same address on both. Tempo has no native gas
7
+ * token; the sender pays its transaction fee in a stablecoin, so a payment
8
+ * needs a little pathUSD beyond the price.
9
+ */
10
+ export const PATH_USD = "0x20c0000000000000000000000000000000000000";
11
+ export const TEMPO_MAINNET = {
12
+ id: 4217,
13
+ network: "eip155:4217",
14
+ name: "Tempo",
15
+ rpcUrl: "https://rpc.tempo.xyz",
16
+ balanceKey: "tempo_mainnet_pathusd_micros",
17
+ testnet: false,
18
+ };
19
+ export const TEMPO_MODERATO = {
20
+ id: 42431,
21
+ network: "eip155:42431",
22
+ name: "Tempo Moderato",
23
+ rpcUrl: "https://rpc.moderato.tempo.xyz",
24
+ balanceKey: "tempo_moderato_pathusd_micros",
25
+ testnet: true,
26
+ };
27
+ export const TEMPO_CHAINS = [TEMPO_MAINNET, TEMPO_MODERATO];
28
+ export function tempoChainById(id) {
29
+ return TEMPO_CHAINS.find((chain) => chain.id === Number(id)) ?? null;
30
+ }
31
+ /**
32
+ * pathUSD (USD micros) a payment needs beyond the price, for the sender's
33
+ * Tempo transaction fee.
34
+ */
35
+ export const TEMPO_FEE_HEADROOM_USD_MICROS = 5000n;
36
+ //# sourceMappingURL=tempo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tempo.js","sourceRoot":"","sources":["../../src/node/tempo.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,4CAAqD,CAAC;AAa9E,MAAM,CAAC,MAAM,aAAa,GAAe;IACvC,EAAE,EAAE,IAAI;IACR,OAAO,EAAE,aAAa;IACtB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,uBAAuB;IAC/B,UAAU,EAAE,8BAA8B;IAC1C,OAAO,EAAE,KAAK;CACf,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAe;IACxC,EAAE,EAAE,KAAK;IACT,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,gCAAgC;IACxC,UAAU,EAAE,+BAA+B;IAC3C,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAA0B,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AAEnF,MAAM,UAAU,cAAc,CAAC,EAAW;IACxC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;AACvE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAM,CAAC"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "surface_version": "4.118.0",
2
+ "surface_version": "4.119.0",
3
3
  "verbs": [
4
4
  "repos create",
5
5
  "repos list",