@absol-labs/agent 0.12.0-rc.1 → 0.12.0-rc.2
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 +1 -1
- package/dist/cli/commands/claim.d.ts +32 -0
- package/dist/cli/commands/claim.d.ts.map +1 -1
- package/dist/cli/commands/claim.js +115 -27
- package/dist/cli/commands/claim.js.map +1 -1
- package/dist/cli/commands/pay.d.ts +15 -0
- package/dist/cli/commands/pay.d.ts.map +1 -1
- package/dist/cli/commands/pay.js +131 -7
- package/dist/cli/commands/pay.js.map +1 -1
- package/dist/cli/commands/reclaim.d.ts.map +1 -1
- package/dist/cli/commands/reclaim.js +20 -4
- package/dist/cli/commands/reclaim.js.map +1 -1
- package/dist/cli/commands/refund.d.ts +19 -1
- package/dist/cli/commands/refund.d.ts.map +1 -1
- package/dist/cli/commands/refund.js +200 -27
- package/dist/cli/commands/refund.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +11 -1
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/watch.d.ts.map +1 -1
- package/dist/cli/commands/watch.js +2 -0
- package/dist/cli/commands/watch.js.map +1 -1
- package/dist/cli/context.d.ts +19 -0
- package/dist/cli/context.d.ts.map +1 -1
- package/dist/cli/deps.d.ts +20 -0
- package/dist/cli/deps.d.ts.map +1 -1
- package/dist/cli/deps.js +14 -0
- package/dist/cli/deps.js.map +1 -1
- package/dist/cli/progress.d.ts +13 -1
- package/dist/cli/progress.d.ts.map +1 -1
- package/dist/cli/progress.js +7 -1
- package/dist/cli/progress.js.map +1 -1
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +26 -14
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/status.d.ts +103 -0
- package/dist/cli/status.d.ts.map +1 -1
- package/dist/cli/status.js +310 -41
- package/dist/cli/status.js.map +1 -1
- package/dist/cli/wallet.d.ts +1 -1
- package/dist/cli/wallet.d.ts.map +1 -1
- package/dist/cli/wallet.js +28 -4
- package/dist/cli/wallet.js.map +1 -1
- package/dist/gateway/http-server.d.ts +17 -0
- package/dist/gateway/http-server.d.ts.map +1 -1
- package/dist/gateway/http-server.js +76 -9
- package/dist/gateway/http-server.js.map +1 -1
- package/dist/gateway/x402-opener-mode.d.ts +39 -2
- package/dist/gateway/x402-opener-mode.d.ts.map +1 -1
- package/dist/gateway/x402-opener-mode.js +169 -36
- package/dist/gateway/x402-opener-mode.js.map +1 -1
- package/dist/mcp/server.d.ts +12 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +28 -9
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/x402-tools.d.ts +8 -3
- package/dist/mcp/x402-tools.d.ts.map +1 -1
- package/dist/mcp/x402-tools.js +126 -6
- package/dist/mcp/x402-tools.js.map +1 -1
- package/dist/sdk/client.d.ts +13 -0
- package/dist/sdk/client.d.ts.map +1 -1
- package/dist/sdk/client.js +15 -0
- package/dist/sdk/client.js.map +1 -1
- package/dist/x402-buyer/pay.d.ts +22 -0
- package/dist/x402-buyer/pay.d.ts.map +1 -1
- package/dist/x402-buyer/pay.js +33 -3
- package/dist/x402-buyer/pay.js.map +1 -1
- package/dist/x402-opener/facilitator-entry.js +4 -1
- package/dist/x402-opener/facilitator-entry.js.map +1 -1
- package/dist/x402-opener/facilitator-server.d.ts +29 -0
- package/dist/x402-opener/facilitator-server.d.ts.map +1 -1
- package/dist/x402-opener/facilitator-server.js +67 -1
- package/dist/x402-opener/facilitator-server.js.map +1 -1
- package/dist/x402-opener/refund-relay.d.ts +30 -4
- package/dist/x402-opener/refund-relay.d.ts.map +1 -1
- package/dist/x402-opener/refund-relay.js +123 -22
- package/dist/x402-opener/refund-relay.js.map +1 -1
- package/dist/x402-opener/scheme.d.ts +79 -0
- package/dist/x402-opener/scheme.d.ts.map +1 -1
- package/dist/x402-opener/scheme.js +326 -40
- package/dist/x402-opener/scheme.js.map +1 -1
- package/dist/x402-opener/terms.d.ts +61 -1
- package/dist/x402-opener/terms.d.ts.map +1 -1
- package/dist/x402-opener/terms.js +94 -2
- package/dist/x402-opener/terms.js.map +1 -1
- package/docs/cli.md +87 -9
- package/docs/mcp-reference.md +18 -2
- package/docs/quickstart.md +3 -3
- package/docs/x402.md +150 -10
- package/package.json +3 -3
- package/src/cli/commands/claim.ts +167 -32
- package/src/cli/commands/pay.ts +150 -8
- package/src/cli/commands/reclaim.ts +25 -5
- package/src/cli/commands/refund.ts +231 -33
- package/src/cli/commands/status.ts +11 -1
- package/src/cli/commands/watch.ts +4 -0
- package/src/cli/context.ts +16 -0
- package/src/cli/deps.ts +37 -0
- package/src/cli/progress.ts +21 -2
- package/src/cli/run.ts +26 -13
- package/src/cli/status.ts +440 -43
- package/src/cli/wallet.ts +44 -7
- package/src/gateway/http-server.ts +96 -8
- package/src/gateway/x402-opener-mode.ts +234 -37
- package/src/mcp/server.ts +43 -11
- package/src/mcp/x402-tools.ts +171 -7
- package/src/sdk/client.ts +25 -0
- package/src/x402-buyer/pay.ts +41 -3
- package/src/x402-opener/facilitator-entry.ts +4 -1
- package/src/x402-opener/facilitator-server.ts +101 -1
- package/src/x402-opener/refund-relay.ts +150 -20
- package/src/x402-opener/scheme.ts +459 -41
- package/src/x402-opener/terms.ts +155 -2
package/dist/cli/status.js
CHANGED
|
@@ -24,6 +24,71 @@ export function settlementCoverage(stream, latestCheckpointCheckedAt, nowSeconds
|
|
|
24
24
|
pending: stopAt !== null && (coveredUpTo === null || coveredUpTo < stopAt),
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* The exposure for a stream that has NOT been reclaimed and has a verified
|
|
29
|
+
* proof. Pure, so the per-generation rule is testable without an RPC. Returns
|
|
30
|
+
* `null` when there is nothing to reason about (no proof, or already reclaimed:
|
|
31
|
+
* a reclaimed stream has no hatch left to open).
|
|
32
|
+
*/
|
|
33
|
+
export function operatorHatchExposure(stream, verifiedCumulative, generation, provenCumulative) {
|
|
34
|
+
if (stream.reclaimed || verifiedCumulative === null)
|
|
35
|
+
return null;
|
|
36
|
+
const verified = verifiedCumulative > stream.deposit ? stream.deposit : verifiedCumulative;
|
|
37
|
+
let protectedCumulative = stream.claimedCumulative;
|
|
38
|
+
let provenCumulativeKnown = true;
|
|
39
|
+
if (generation === "v3") {
|
|
40
|
+
if (provenCumulative === null) {
|
|
41
|
+
provenCumulativeKnown = false;
|
|
42
|
+
}
|
|
43
|
+
else if (provenCumulative > protectedCumulative) {
|
|
44
|
+
protectedCumulative = provenCumulative;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
const atRiskCumulative = verified > protectedCumulative ? verified - protectedCumulative : 0n;
|
|
48
|
+
return {
|
|
49
|
+
verifiedCumulative: verified,
|
|
50
|
+
protectedCumulative,
|
|
51
|
+
atRiskCumulative,
|
|
52
|
+
provenCumulativeKnown,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Whether the buyer side of a stream is finished, and what the operator holds.
|
|
57
|
+
* Pure, so the rule is testable without an RPC.
|
|
58
|
+
*
|
|
59
|
+
* `stopped` is the escrow's own reclaim gate (closed, or `now >= expiresAt`).
|
|
60
|
+
* `provenCumulative` counts only on V3, and only when it was READ: an
|
|
61
|
+
* unreadable high-water is treated as zero, so it can never make a stream look
|
|
62
|
+
* finished that is not.
|
|
63
|
+
*/
|
|
64
|
+
export function finalSettlement(stream, exhaustion) {
|
|
65
|
+
if (stream.reclaimed) {
|
|
66
|
+
return settled("reclaimed", stream.settledCumulative, stream);
|
|
67
|
+
}
|
|
68
|
+
if (exhaustion === undefined || !exhaustion.stopped)
|
|
69
|
+
return null;
|
|
70
|
+
if (stream.deposit <= 0n)
|
|
71
|
+
return null;
|
|
72
|
+
let operatorFloor = stream.claimedCumulative;
|
|
73
|
+
if (exhaustion.generation === "v3" &&
|
|
74
|
+
exhaustion.provenCumulative !== null &&
|
|
75
|
+
exhaustion.provenCumulative > operatorFloor) {
|
|
76
|
+
operatorFloor = exhaustion.provenCumulative;
|
|
77
|
+
}
|
|
78
|
+
if (operatorFloor < stream.deposit)
|
|
79
|
+
return null;
|
|
80
|
+
return settled("deposit-exhausted", stream.deposit, stream);
|
|
81
|
+
}
|
|
82
|
+
function settled(finishedBy, settledToOperator, stream) {
|
|
83
|
+
return {
|
|
84
|
+
finishedBy,
|
|
85
|
+
settledToOperator,
|
|
86
|
+
operatorClaimed: stream.claimedCumulative,
|
|
87
|
+
operatorUnclaimed: settledToOperator > stream.claimedCumulative
|
|
88
|
+
? settledToOperator - stream.claimedCumulative
|
|
89
|
+
: 0n,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
27
92
|
export async function readStreamReport(read, streamId, nowSeconds,
|
|
28
93
|
/** The escrow's generation (decides the escape-hatch rule). Default `v2`. */
|
|
29
94
|
escrowGeneration = "v2") {
|
|
@@ -40,13 +105,38 @@ escrowGeneration = "v2") {
|
|
|
40
105
|
catch (error) {
|
|
41
106
|
proofUnavailable = describeError(error);
|
|
42
107
|
}
|
|
108
|
+
let provenCumulative = null;
|
|
109
|
+
let provenUnavailable = null;
|
|
110
|
+
if (escrowGeneration === "v3") {
|
|
111
|
+
if (read.provenCumulativeOf === undefined) {
|
|
112
|
+
provenUnavailable = "this read client cannot read provenCumulativeOf";
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
try {
|
|
116
|
+
provenCumulative = await read.provenCumulativeOf(streamId);
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
provenUnavailable = describeError(error);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
43
123
|
let claimable = null;
|
|
124
|
+
let claimableSource = null;
|
|
44
125
|
let reclaimable = null;
|
|
45
126
|
if (proof !== null) {
|
|
46
127
|
[claimable, reclaimable] = await Promise.all([
|
|
47
128
|
read.claimableForV2(streamId, proof.cumulativeAmount),
|
|
48
129
|
read.reclaimableForV2(streamId, proof.cumulativeAmount),
|
|
49
130
|
]);
|
|
131
|
+
claimableSource = "checkpoint-proof";
|
|
132
|
+
}
|
|
133
|
+
else if (provenCumulative !== null &&
|
|
134
|
+
provenCumulative > stream.claimedCumulative) {
|
|
135
|
+
// The latest checkpoint no longer lists the stream, but a value proven
|
|
136
|
+
// against a signed root is recorded on-chain. `claimableFor` at that value
|
|
137
|
+
// is exactly what `claimProven` pays (same `_payableCumulative` and fee).
|
|
138
|
+
claimable = await read.claimableForV2(streamId, provenCumulative);
|
|
139
|
+
claimableSource = "proven-on-chain";
|
|
50
140
|
}
|
|
51
141
|
let protocolFeeBps = null;
|
|
52
142
|
try {
|
|
@@ -69,7 +159,14 @@ escrowGeneration = "v2") {
|
|
|
69
159
|
catch {
|
|
70
160
|
latestCheckpointCheckedAt = null;
|
|
71
161
|
}
|
|
72
|
-
const
|
|
162
|
+
const coverage = settlementCoverage(stream, latestCheckpointCheckedAt, now.seconds);
|
|
163
|
+
const final = finalSettlement(stream, {
|
|
164
|
+
stopped: coverage.stopAt !== null,
|
|
165
|
+
generation: escrowGeneration,
|
|
166
|
+
provenCumulative,
|
|
167
|
+
});
|
|
168
|
+
// A finished stream is settled: there is no checkpoint left to wait for.
|
|
169
|
+
const settlement = final !== null ? { ...coverage, pending: false } : coverage;
|
|
73
170
|
const attesters = await readAttesterSet(read);
|
|
74
171
|
return {
|
|
75
172
|
streamId,
|
|
@@ -77,6 +174,7 @@ escrowGeneration = "v2") {
|
|
|
77
174
|
proof,
|
|
78
175
|
proofUnavailable,
|
|
79
176
|
claimable,
|
|
177
|
+
claimableSource,
|
|
80
178
|
reclaimable,
|
|
81
179
|
protocolFeeBps,
|
|
82
180
|
escapeHatch,
|
|
@@ -85,6 +183,14 @@ escrowGeneration = "v2") {
|
|
|
85
183
|
clockSource: now.source,
|
|
86
184
|
settlement,
|
|
87
185
|
attesters,
|
|
186
|
+
escrowGeneration,
|
|
187
|
+
provenCumulative,
|
|
188
|
+
provenUnavailable,
|
|
189
|
+
// A finished stream has no hatch left that could take anything.
|
|
190
|
+
operatorExposure: final !== null
|
|
191
|
+
? null
|
|
192
|
+
: operatorHatchExposure(stream, proof === null ? null : proof.cumulativeAmount, escrowGeneration, provenCumulative),
|
|
193
|
+
finalSettlement: final,
|
|
88
194
|
};
|
|
89
195
|
}
|
|
90
196
|
export function streamReportJson(report) {
|
|
@@ -125,8 +231,19 @@ export function streamReportJson(report) {
|
|
|
125
231
|
// settled-looking number derived from a checkpoint that predates the
|
|
126
232
|
// stream's stop time. The superseded figure is still available, explicitly
|
|
127
233
|
// labelled, under `settlement.provisionalReclaimable`.
|
|
128
|
-
|
|
129
|
-
|
|
234
|
+
// A finished stream with nothing left for the operator has nothing
|
|
235
|
+
// claimable, even when no proof was fetched.
|
|
236
|
+
claimable: report.claimable ??
|
|
237
|
+
(report.finalSettlement?.operatorUnclaimed === 0n ? 0n : null),
|
|
238
|
+
// `checkpoint-proof`, `proven-on-chain` (V3: what `claimProven` pays), or
|
|
239
|
+
// `null` when `claimable` is.
|
|
240
|
+
claimableSource: report.claimableSource,
|
|
241
|
+
// Nothing is reclaimable from a stream whose buyer side is finished.
|
|
242
|
+
reclaimable: report.finalSettlement !== null
|
|
243
|
+
? 0n
|
|
244
|
+
: report.settlement.pending
|
|
245
|
+
? null
|
|
246
|
+
: report.reclaimable,
|
|
130
247
|
settlement: {
|
|
131
248
|
pending: report.settlement.pending,
|
|
132
249
|
stopAt: report.settlement.stopAt,
|
|
@@ -150,15 +267,42 @@ export function streamReportJson(report) {
|
|
|
150
267
|
ready: report.escapeHatch.ready,
|
|
151
268
|
secondsUntilReady: report.escapeHatch.secondsRemaining,
|
|
152
269
|
},
|
|
270
|
+
escrowGeneration: report.escrowGeneration,
|
|
271
|
+
// V3 only; `null` on V2 or when unreadable (`provenCumulativeUnavailable`).
|
|
272
|
+
provenCumulative: report.provenCumulative,
|
|
273
|
+
provenCumulativeUnavailable: report.provenUnavailable,
|
|
274
|
+
// True once nothing more is owed to, or can be reclaimed by, the buyer —
|
|
275
|
+
// reclaimed, or stopped with the whole deposit already the operator's —
|
|
276
|
+
// and the escape hatch no longer applies.
|
|
277
|
+
buyerSideFinished: report.finalSettlement !== null,
|
|
278
|
+
// Non-null exactly when `buyerSideFinished`. Gross base units. The buyer's
|
|
279
|
+
// refund is not included: see `FinalSettlement`.
|
|
280
|
+
finalSettlement: report.finalSettlement === null
|
|
281
|
+
? null
|
|
282
|
+
: {
|
|
283
|
+
finishedBy: report.finalSettlement.finishedBy,
|
|
284
|
+
settledToOperator: report.finalSettlement.settledToOperator,
|
|
285
|
+
operatorClaimed: report.finalSettlement.operatorClaimed,
|
|
286
|
+
operatorUnclaimed: report.finalSettlement.operatorUnclaimed,
|
|
287
|
+
},
|
|
288
|
+
// What the buyer's no-proof escape hatch could take from the operator.
|
|
289
|
+
// `null` once reclaimed or before any proof. Gross base units.
|
|
290
|
+
operatorHatchExposure: report.operatorExposure === null
|
|
291
|
+
? null
|
|
292
|
+
: {
|
|
293
|
+
units: "gross",
|
|
294
|
+
verifiedCumulative: report.operatorExposure.verifiedCumulative,
|
|
295
|
+
protectedCumulative: report.operatorExposure.protectedCumulative,
|
|
296
|
+
atRiskCumulative: report.operatorExposure.atRiskCumulative,
|
|
297
|
+
protectedOnChain: report.operatorExposure.atRiskCumulative === 0n,
|
|
298
|
+
provenCumulativeKnown: report.operatorExposure.provenCumulativeKnown,
|
|
299
|
+
},
|
|
153
300
|
};
|
|
154
301
|
}
|
|
155
302
|
export function streamReportRows(report) {
|
|
156
303
|
const { stream, proof } = report;
|
|
157
304
|
const rows = [
|
|
158
|
-
[
|
|
159
|
-
"status",
|
|
160
|
-
stream.reclaimed ? `${stream.status} (reclaimed)` : stream.status,
|
|
161
|
-
],
|
|
305
|
+
["status", describeStatus(report)],
|
|
162
306
|
...(stream.opener === null || stream.opener === undefined
|
|
163
307
|
? [["buyer", stream.buyer]]
|
|
164
308
|
: [
|
|
@@ -167,7 +311,15 @@ export function streamReportRows(report) {
|
|
|
167
311
|
]),
|
|
168
312
|
["operator", stream.operator],
|
|
169
313
|
["serviceRef", stream.serviceRef],
|
|
170
|
-
|
|
314
|
+
// Reclaim OVERWRITES `deposit` with the operator's entitlement, so after a
|
|
315
|
+
// reclaim the field is what is still escrowed for the operator — not what
|
|
316
|
+
// the buyer put in. Printing it bare would read as "the buyer deposited 0".
|
|
317
|
+
[
|
|
318
|
+
"deposit",
|
|
319
|
+
stream.reclaimed
|
|
320
|
+
? `${formatUsdc(stream.deposit)} still escrowed for the operator (reclaim replaces the original deposit with the operator's entitlement)`
|
|
321
|
+
: formatUsdc(stream.deposit),
|
|
322
|
+
],
|
|
171
323
|
["rate", `${formatUsdc(stream.ratePerSecond)} / second`],
|
|
172
324
|
["opened", formatTimestamp(stream.openedAt)],
|
|
173
325
|
["expires", describeDeadline(stream.expiresAt, report.nowSeconds)],
|
|
@@ -175,12 +327,12 @@ export function streamReportRows(report) {
|
|
|
175
327
|
if (stream.closedAt > 0) {
|
|
176
328
|
rows.push(["closed", formatTimestamp(stream.closedAt)]);
|
|
177
329
|
}
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
]);
|
|
330
|
+
if (report.finalSettlement !== null) {
|
|
331
|
+
rows.push(...finalSettlementRows(report, report.finalSettlement));
|
|
332
|
+
pushTrailingRows(rows, report);
|
|
333
|
+
return rows;
|
|
334
|
+
}
|
|
335
|
+
rows.push(["verified accrual", describeVerifiedAccrual(report)]);
|
|
184
336
|
// `claim` accepts ANY retained root, so the operator's balance is obtainable
|
|
185
337
|
// now — it is merely not FINAL until the covering checkpoint lands, and it
|
|
186
338
|
// can only grow. `reclaim` requires the LATEST root to reach the stop time,
|
|
@@ -190,9 +342,11 @@ export function streamReportRows(report) {
|
|
|
190
342
|
"operator claimable",
|
|
191
343
|
report.claimable === null
|
|
192
344
|
? "-"
|
|
193
|
-
: report.
|
|
194
|
-
? `${formatUsdc(report.claimable)}
|
|
195
|
-
:
|
|
345
|
+
: report.claimableSource === "proven-on-chain"
|
|
346
|
+
? `${formatUsdc(report.claimable)} (net of the protocol fee) — from the on-chain proven high-water; \`metrik claim\` redeems it with claimProven, no fresh proof needed`
|
|
347
|
+
: report.settlement.pending
|
|
348
|
+
? `${formatUsdc(report.claimable)} so far (net of the protocol fee) — not final until the checkpoint covering the stop time lands`
|
|
349
|
+
: `${formatUsdc(report.claimable)} (net of the protocol fee)`,
|
|
196
350
|
]);
|
|
197
351
|
rows.push([
|
|
198
352
|
"buyer reclaimable",
|
|
@@ -202,46 +356,161 @@ export function streamReportRows(report) {
|
|
|
202
356
|
? "-"
|
|
203
357
|
: formatUsdc(report.reclaimable),
|
|
204
358
|
]);
|
|
359
|
+
if (report.escrowGeneration === "v3") {
|
|
360
|
+
rows.push([
|
|
361
|
+
"proven on-chain",
|
|
362
|
+
report.provenCumulative === null
|
|
363
|
+
? `unknown (${report.provenUnavailable ?? "not read"})`
|
|
364
|
+
: `${formatUsdc(report.provenCumulative)} gross (the escrow's proven high-water; the escape hatch cannot take it)`,
|
|
365
|
+
]);
|
|
366
|
+
}
|
|
205
367
|
rows.push(["fees paid", formatUsdc(stream.feesPaid)]);
|
|
206
|
-
rows.push(
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
? "-"
|
|
210
|
-
: report.latestCheckpointCheckedAt <= 0
|
|
211
|
-
? "none posted yet"
|
|
212
|
-
: `latest covers up to ${formatTimestamp(report.latestCheckpointCheckedAt)}`,
|
|
213
|
-
]);
|
|
214
|
-
// The no-proof path. Printed for every stream, not only blocked ones: a buyer
|
|
215
|
-
// should learn that this exists before they need it.
|
|
368
|
+
rows.push(oracleCheckpointRow(report));
|
|
369
|
+
// The no-proof path. Printed for every live stream, not only blocked ones: a
|
|
370
|
+
// buyer should learn that this exists before they need it.
|
|
216
371
|
rows.push([
|
|
217
372
|
"escape hatch",
|
|
218
373
|
report.escapeHatch === null
|
|
219
374
|
? "-"
|
|
220
|
-
: `${describeEscapeHatch(report.escapeHatch)} —
|
|
375
|
+
: `${describeEscapeHatch(report.escapeHatch)} — ${report.escrowGeneration === "v3"
|
|
376
|
+
? "no-proof reclaim, refunds only value not proven on-chain; the operator keeps max(claimed, proven high-water)"
|
|
377
|
+
: "no-proof reclaim, forfeits the operator's unclaimed earnings"}`,
|
|
221
378
|
]);
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
379
|
+
const operatorRow = operatorExposureRow(report);
|
|
380
|
+
if (operatorRow !== null)
|
|
381
|
+
rows.push(operatorRow);
|
|
382
|
+
pushTrailingRows(rows, report);
|
|
383
|
+
return rows;
|
|
384
|
+
}
|
|
385
|
+
/**
|
|
386
|
+
* The same escape-hatch row, read from the seller's side.
|
|
387
|
+
*
|
|
388
|
+
* V2: `reclaimUnverified` settles the operator at `claimedCumulative`, so an
|
|
389
|
+
* operator who has earned but not claimed loses all of it the moment the
|
|
390
|
+
* window opens. The window is fixed and the grace immutable, so the only thing
|
|
391
|
+
* an operator can do about it is claim in time — which they cannot do if
|
|
392
|
+
* nothing tells them the deadline exists.
|
|
393
|
+
*
|
|
394
|
+
* V3: the hatch settles the operator at `max(claimed, provenCumulative)`, so
|
|
395
|
+
* only verified value nobody proved on-chain is exposed. Warning about the
|
|
396
|
+
* WHOLE unclaimed balance there would be false — and would push an operator to
|
|
397
|
+
* spend gas racing a deadline that cannot hurt them.
|
|
398
|
+
*/
|
|
399
|
+
function operatorExposureRow(report) {
|
|
400
|
+
const hatch = report.escapeHatch;
|
|
401
|
+
if (hatch === null || report.claimable === null || report.claimable <= 0n) {
|
|
402
|
+
return null;
|
|
403
|
+
}
|
|
404
|
+
if (report.escrowGeneration !== "v3") {
|
|
405
|
+
return [
|
|
232
406
|
"operator deadline",
|
|
233
|
-
|
|
407
|
+
hatch.ready
|
|
234
408
|
? `${formatUsdc(report.claimable)} is unclaimed and the buyer's no-proof reclaim is ALREADY open — it would take this amount from the operator`
|
|
235
|
-
: `${formatUsdc(report.claimable)} is unclaimed; \`metrik claim\` it before ${formatTimestamp(
|
|
409
|
+
: `${formatUsdc(report.claimable)} is unclaimed; \`metrik claim\` it before ${formatTimestamp(hatch.readyAt)}, after which a buyer's no-proof reclaim can take it`,
|
|
410
|
+
];
|
|
411
|
+
}
|
|
412
|
+
const exposure = report.operatorExposure;
|
|
413
|
+
if (exposure === null)
|
|
414
|
+
return null;
|
|
415
|
+
const units = `(gross: before the protocol fee; \`metrik claim\` pays the operator net of it — ${formatUsdc(report.claimable)} net unclaimed)`;
|
|
416
|
+
if (exposure.atRiskCumulative === 0n) {
|
|
417
|
+
return [
|
|
418
|
+
"operator earnings",
|
|
419
|
+
`${formatUsdc(exposure.verifiedCumulative)} gross verified, all protected on-chain by the proven high-water — a buyer's no-proof reclaim cannot take it, so it can be claimed at any time with \`metrik claim\` ${units}`,
|
|
420
|
+
];
|
|
421
|
+
}
|
|
422
|
+
const protectedPart = exposure.provenCumulativeKnown
|
|
423
|
+
? `${formatUsdc(exposure.protectedCumulative)} gross is protected on-chain (claimed or proven high-water)`
|
|
424
|
+
: "the on-chain proven high-water could not be read, so this assumes none of the unclaimed balance is protected";
|
|
425
|
+
return [
|
|
426
|
+
"operator deadline",
|
|
427
|
+
hatch.ready
|
|
428
|
+
? `${formatUsdc(exposure.atRiskCumulative)} gross of verified accrual is not proven on-chain and the buyer's no-proof reclaim is ALREADY open — it would refund that part to the buyer. ${protectedPart}. ${units}`
|
|
429
|
+
: `${formatUsdc(exposure.atRiskCumulative)} gross of verified accrual is not proven on-chain; \`metrik claim\` it before ${formatTimestamp(hatch.readyAt)}, after which a buyer's no-proof reclaim refunds that part to the buyer. ${protectedPart}. ${units}`,
|
|
430
|
+
];
|
|
431
|
+
}
|
|
432
|
+
/**
|
|
433
|
+
* A reclaimed stream, from the state reclaim WROTE. The buyer side is over:
|
|
434
|
+
* no checkpoint to wait for, nothing reclaimable, and no escape hatch left to
|
|
435
|
+
* open (`reclaimUnverified` reverts `AlreadyReclaimed`). So none of those are
|
|
436
|
+
* printed as live items — only what the operator is still owed.
|
|
437
|
+
*/
|
|
438
|
+
function finalSettlementRows(report, settlement) {
|
|
439
|
+
const refundTo = report.stream.payer ?? report.stream.buyer;
|
|
440
|
+
const exhausted = settlement.finishedBy === "deposit-exhausted";
|
|
441
|
+
const rows = [
|
|
442
|
+
[
|
|
443
|
+
"buyer side",
|
|
444
|
+
exhausted
|
|
445
|
+
? `finished — the operator's claimed${report.escrowGeneration === "v3" ? " or proven" : ""} amount already covers the whole deposit, so there is nothing to reclaim (the escrow would revert NothingToReclaim) and the buyer never reclaimed. Nothing more is owed to, or reclaimable by, the buyer.`
|
|
446
|
+
: `finished — the buyer has reclaimed, and the refund was paid to ${refundTo}. Nothing more is owed to, or reclaimable by, the buyer.`,
|
|
447
|
+
],
|
|
448
|
+
[
|
|
449
|
+
"settled to operator",
|
|
450
|
+
`${formatUsdc(settlement.settledToOperator)} gross (${exhausted ? "the whole deposit" : "fixed at reclaim"})`,
|
|
451
|
+
],
|
|
452
|
+
["operator claimed", `${formatUsdc(settlement.operatorClaimed)} gross`],
|
|
453
|
+
[
|
|
454
|
+
"operator unclaimed",
|
|
455
|
+
settlement.operatorUnclaimed === 0n
|
|
456
|
+
? "none — fully settled"
|
|
457
|
+
: `${formatUsdc(settlement.operatorUnclaimed)} gross, reserved for the operator — the buyer side is finished, so nothing can take it; \`metrik claim\` it at any time (paid net of the protocol fee)`,
|
|
458
|
+
],
|
|
459
|
+
];
|
|
460
|
+
if (exhausted && report.provenCumulative !== null) {
|
|
461
|
+
rows.push([
|
|
462
|
+
"proven on-chain",
|
|
463
|
+
`${formatUsdc(report.provenCumulative)} gross (the escrow's proven high-water)`,
|
|
236
464
|
]);
|
|
237
465
|
}
|
|
466
|
+
rows.push(["fees paid", formatUsdc(report.stream.feesPaid)]);
|
|
467
|
+
return rows;
|
|
468
|
+
}
|
|
469
|
+
function describeStatus(report) {
|
|
470
|
+
const { stream } = report;
|
|
471
|
+
const final = report.finalSettlement;
|
|
472
|
+
if (final === null)
|
|
473
|
+
return stream.status;
|
|
474
|
+
if (final.finishedBy === "reclaimed")
|
|
475
|
+
return `${stream.status} (reclaimed)`;
|
|
476
|
+
const stop = stream.closedAt > 0 ? "closed" : "expired";
|
|
477
|
+
return final.operatorUnclaimed === 0n
|
|
478
|
+
? `${stream.status} (${stop}, fully settled)`
|
|
479
|
+
: `${stream.status} (${stop}, buyer side finished)`;
|
|
480
|
+
}
|
|
481
|
+
/**
|
|
482
|
+
* The verified-accrual row. With no current proof on V3, a non-zero proven
|
|
483
|
+
* high-water IS verified accrual — proven against a signed checkpoint root and
|
|
484
|
+
* recorded on-chain — so it is stated rather than "not checkpointed yet", which
|
|
485
|
+
* reads as "nothing verified".
|
|
486
|
+
*/
|
|
487
|
+
function describeVerifiedAccrual(report) {
|
|
488
|
+
const { proof } = report;
|
|
489
|
+
if (proof !== null) {
|
|
490
|
+
return `${formatUsdc(proof.cumulativeAmount)} gross @ checkpoint ${proof.checkpointId} (${formatTimestamp(Number(proof.checkedAt))})`;
|
|
491
|
+
}
|
|
492
|
+
if (report.provenCumulative !== null && report.provenCumulative > 0n) {
|
|
493
|
+
return `${formatUsdc(report.provenCumulative)} gross proven on-chain (provenCumulativeOf) — the latest checkpoint does not contain this stream (${report.proofUnavailable ?? "no proof"}), so this is read from the escrow`;
|
|
494
|
+
}
|
|
495
|
+
return `not checkpointed yet (${report.proofUnavailable ?? "no proof"})`;
|
|
496
|
+
}
|
|
497
|
+
function oracleCheckpointRow(report) {
|
|
498
|
+
return [
|
|
499
|
+
"oracle checkpoint",
|
|
500
|
+
report.latestCheckpointCheckedAt === null
|
|
501
|
+
? "-"
|
|
502
|
+
: report.latestCheckpointCheckedAt <= 0
|
|
503
|
+
? "none posted yet"
|
|
504
|
+
: `latest covers up to ${formatTimestamp(report.latestCheckpointCheckedAt)}`,
|
|
505
|
+
];
|
|
506
|
+
}
|
|
507
|
+
function pushTrailingRows(rows, report) {
|
|
238
508
|
if (report.protocolFeeBps !== null) {
|
|
239
509
|
rows.push([
|
|
240
510
|
"protocol fee",
|
|
241
511
|
`${report.protocolFeeBps} bps (read from the escrow)`,
|
|
242
512
|
]);
|
|
243
513
|
}
|
|
244
|
-
return rows;
|
|
245
514
|
}
|
|
246
515
|
/**
|
|
247
516
|
* What is being waited for, in the place a number used to be. Names the two
|
package/dist/cli/status.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/wallet.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ export { PRIVY_ENV_VARS, PRIVY_SESSION_ENV_VARS, PRIVY_WALLET_KEY_ENV, } from ".
|
|
|
52
52
|
* signs an EIP-712 invocation capability and broadcasts NOTHING; telling its
|
|
53
53
|
* caller "this command signs a transaction" was simply false.
|
|
54
54
|
*/
|
|
55
|
-
export type KeyPurpose = "transaction" | "capability";
|
|
55
|
+
export type KeyPurpose = "transaction" | "capability" | "payer-close" | "x402-payment";
|
|
56
56
|
/** Which environment configured the signer, for output and for error text. */
|
|
57
57
|
export type CliWalletSource = "private-key" | "cdp" | PrivyCliWalletSource;
|
|
58
58
|
/**
|
package/dist/cli/wallet.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/cli/wallet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAE7D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAGtF,OAAO,EAKL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,eAAO,MAAM,eAAe,6BAA6B,CAAC;AAE1D,qFAAqF;AACrF,eAAO,MAAM,YAAY,uGAKf,CAAC;AAEX,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB;;;;GAIG;AACH,MAAM,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/cli/wallet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAE7D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAGtF,OAAO,EAKL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,eAAO,MAAM,eAAe,6BAA6B,CAAC;AAE1D,qFAAqF;AACrF,eAAO,MAAM,YAAY,uGAKf,CAAC;AAEX,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAClB,aAAa,GACb,YAAY,GACZ,aAAa,GACb,cAAc,CAAC;AAiBnB,8EAA8E;AAC9E,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,KAAK,GAAG,oBAAoB,CAAC;AAE3E;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;AAE7E,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;;;;;;;;OASG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC5D;AA8BD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,+BAA+B,CAAC;IACjD,kEAAkE;IAClE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CACnC;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,SAAS,CAAC,CAUpB;AAED,0EAA0E;AAC1E,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,eAAe,GACtB,MAAM,IAAI,oBAAoB,CAEhC;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,IAAI,SAAS,GAAG;IACzE,QAAQ,CAAC,eAAe,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3D,CAEA;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,OAAO,GAAE,IAAI,CAAC,uBAAuB,EAAE,SAAS,CAAM,GACrD,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CA6C3B;AAuDD;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,YAAY,GAAG,IAAI,CASrB;AAWD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,eAAe,GACtB,gBAAgB,CAclB"}
|
package/dist/cli/wallet.js
CHANGED
|
@@ -56,10 +56,33 @@ export { PRIVY_ENV_VARS, PRIVY_SESSION_ENV_VARS, PRIVY_WALLET_KEY_ENV, } from ".
|
|
|
56
56
|
const PURPOSE_TEXT = {
|
|
57
57
|
transaction: "signs a transaction",
|
|
58
58
|
capability: "signs an off-chain EIP-712 invocation capability (no transaction is broadcast)",
|
|
59
|
+
// `metrik refund --close`: the x402 payer signs the opener's EIP-712 `Close`
|
|
60
|
+
// message and the relay broadcasts it, paying the gas. It is NOT an
|
|
61
|
+
// invocation capability, and the key needs no funds at all.
|
|
62
|
+
"payer-close": "signs the payer's off-chain EIP-712 Close message (the refund relay broadcasts it and pays the gas)",
|
|
63
|
+
// `metrik pay`: the payer signs an EIP-3009 TransferWithAuthorization and the
|
|
64
|
+
// seller's facilitator settles it. The payer broadcasts nothing.
|
|
65
|
+
"x402-payment": "signs an EIP-3009 USDC authorization that the seller's facilitator settles (the payer broadcasts no transaction and needs no gas)",
|
|
59
66
|
};
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
67
|
+
const ENV_ONLY = "All are read from the environment only — never pass a credential as a command-line flag.";
|
|
68
|
+
/**
|
|
69
|
+
* How to configure the wallet a purpose needs. "Funded" is said only where a
|
|
70
|
+
* transaction is broadcast: an off-chain signature costs nothing, and telling
|
|
71
|
+
* someone to fund a key for one sends them to a faucet for no reason.
|
|
72
|
+
*/
|
|
73
|
+
function walletHint(purpose) {
|
|
74
|
+
if (purpose === "x402-payment") {
|
|
75
|
+
return (`export ${PRIVATE_KEY_ENV}=0x… (a testnet key holding USDC; no ETH needed), or configure a Coinbase CDP wallet with ` +
|
|
76
|
+
`${CDP_ENV_VARS.join(", ")}. A Privy wallet cannot pay x402: its broker does not sign EIP-3009. ${ENV_ONLY}`);
|
|
77
|
+
}
|
|
78
|
+
if (purpose === "payer-close") {
|
|
79
|
+
return (`export ${PRIVATE_KEY_ENV}=0x… (the key that paid; it needs no ETH or USDC), or configure the paying Coinbase CDP wallet with ` +
|
|
80
|
+
`${CDP_ENV_VARS.join(", ")}. A Privy wallet cannot sign the Close. ${ENV_ONLY}`);
|
|
81
|
+
}
|
|
82
|
+
return (`export ${PRIVATE_KEY_ENV}=0x… (${purpose === "transaction" ? "a funded testnet key" : "a testnet key; it needs no funds for this"}), configure a Coinbase CDP wallet with ` +
|
|
83
|
+
`${CDP_ENV_VARS.join(", ")}, or configure a Privy wallet with ${PRIVY_WALLET_KEY_ENV} (agent-owned) or ` +
|
|
84
|
+
`${PRIVY_SESSION_ENV_VARS.join(", ")} (broker session). ${ENV_ONLY}`);
|
|
85
|
+
}
|
|
63
86
|
/**
|
|
64
87
|
* Resolves the signing wallet, or throws an actionable configuration error.
|
|
65
88
|
*
|
|
@@ -70,7 +93,8 @@ const WALLET_HINT = `export ${PRIVATE_KEY_ENV}=0x… (a funded testnet key), con
|
|
|
70
93
|
export async function resolveCliWallet(env, options = {}) {
|
|
71
94
|
const wallet = await optionalCliWallet(env, options);
|
|
72
95
|
if (wallet === null) {
|
|
73
|
-
|
|
96
|
+
const purpose = options.purpose ?? "transaction";
|
|
97
|
+
throw configError(`this command ${PURPOSE_TEXT[purpose]} and needs a wallet: none of ${PRIVATE_KEY_ENV}, the CDP variables or the Privy variables are set`, walletHint(purpose));
|
|
74
98
|
}
|
|
75
99
|
return wallet;
|
|
76
100
|
}
|
package/dist/cli/wallet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/cli/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAIpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,GAGtB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,0BAA0B,CAAC;AAE1D,qFAAqF;AACrF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,gBAAgB;IAChB,oBAAoB;IACpB,mBAAmB;IACnB,6BAA6B;CACrB,CAAC;AAEX,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/cli/wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,6 +64,13 @@ export interface CallerAuthGatewayX402OpenerEnvConfig {
|
|
|
64
64
|
readonly assetVersion: string;
|
|
65
65
|
readonly terms: OpenerTerms;
|
|
66
66
|
readonly price: bigint;
|
|
67
|
+
/**
|
|
68
|
+
* `METRIK_GATEWAY_X402V2_UPFRONT_AMOUNT`: selects the upfront opener kind
|
|
69
|
+
* (then `factoryAddress` is the upfront factory). Undefined = stream kind.
|
|
70
|
+
*/
|
|
71
|
+
readonly upfrontAmount?: bigint;
|
|
72
|
+
/** The registry's implementation of the upfront factory, when it records one. */
|
|
73
|
+
readonly upfrontImplementation?: Address;
|
|
67
74
|
readonly maxTimeoutSeconds: number;
|
|
68
75
|
/** Per-request facilitator HTTP timeout, ms. */
|
|
69
76
|
readonly facilitatorTimeoutMs: number;
|
|
@@ -135,6 +142,16 @@ export declare function parseCallerAuthGatewayEnvConfig(env?: NodeJS.ProcessEnv)
|
|
|
135
142
|
* - `METRIK_GATEWAY_X402V2_MAX_DURATION_SECONDS` (required).
|
|
136
143
|
* - `METRIK_GATEWAY_X402V2_PRICE` (required) — base units per paid request (= deposit),
|
|
137
144
|
* `0 < price <= rate * maxDuration`.
|
|
145
|
+
* - `METRIK_GATEWAY_X402V2_UPFRONT_AMOUNT` — base units; when SET the listing
|
|
146
|
+
* quotes the UPFRONT ("minimum charge") opener instead: `amount = price`,
|
|
147
|
+
* `payTo = upfrontFactory.predict(6 terms)`; `upfrontAmount` is paid to the
|
|
148
|
+
* seller at settlement and is NOT refundable, only `price - upfrontAmount`
|
|
149
|
+
* (`<= rate * maxDuration`) is metered and refundable. `= PRICE` is
|
|
150
|
+
* upfront-only (no stream). Validated with the factory's rules at startup.
|
|
151
|
+
* - `METRIK_GATEWAY_X402V2_UPFRONT_FACTORY_ADDRESS` — the
|
|
152
|
+
* `X402UpfrontStreamOpenerFactory`; default the network registry's (only
|
|
153
|
+
* with `_UPFRONT_AMOUNT`). `_FACTORY_ADDRESS` names the STREAM factory and is
|
|
154
|
+
* refused together with `_UPFRONT_AMOUNT`.
|
|
138
155
|
* - `METRIK_GATEWAY_X402V2_NETWORK` — default `eip155:<METRIK_GATEWAY_CHAIN_ID>`.
|
|
139
156
|
* - `METRIK_GATEWAY_X402V2_ASSET` — default the network's registered USDC.
|
|
140
157
|
* - `METRIK_GATEWAY_X402V2_ASSET_NAME` / `_ASSET_VERSION` — EIP-712 domain, default the
|