warpmetal 0.4.1 → 0.4.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 CHANGED
@@ -109,10 +109,26 @@ warpmetal checkout submit \
109
109
  Check the payer wallet address and balance with:
110
110
 
111
111
  ```sh
112
+ x402api wallet show --wallet <wallet-name> --json
112
113
  x402api wallet address --wallet <wallet-name> --json
113
114
  x402api wallet balance --wallet <wallet-name> --json
114
115
  ```
115
116
 
117
+ For a new dedicated wallet, configure the enforceable local per-payment
118
+ ceiling when it is created:
119
+
120
+ ```sh
121
+ x402api wallet create --name <wallet-name> \
122
+ --network <exact-challenge-network> \
123
+ --maximum-payment-atomic <per-payment-policy-cap> --json
124
+ ```
125
+
126
+ Require `maximumPaymentAtomic` to cover the live charge without exceeding the
127
+ task or operator limit. Among valid sponsored terms, honor an explicit network
128
+ or asset preference, otherwise prefer an already funded compatible wallet,
129
+ then the first compatible term in live challenge order. Never switch terms
130
+ after authorization.
131
+
116
132
  If funding is short in an interactive conversation, tell the human the exact
117
133
  top-up in normal and atomic units, the network, stablecoin and contract/mint,
118
134
  and the payer wallet's public receiving address. The human sends the token to
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "warpmetal",
3
- "version": "0.4.1",
3
+ "version": "0.4.2",
4
4
  "description": "Agent-safe CLI and skill for purchasing and managing WarpMetal VPS servers",
5
5
  "type": "module",
6
6
  "bin": {
@@ -43,9 +43,12 @@ warpmetal health --json
43
43
  warpmetal catalog --json
44
44
  ```
45
45
 
46
- Stop if `purchasingReady` is false. Select `planId` and the exact OS `name`
47
- from the live catalog. Do not reuse an OS name or price from documentation or
48
- a previous session.
46
+ Stop the current purchase if `purchasingReady` is false. In unattended
47
+ scheduling, recheck after 60 seconds, then double the delay after each failed
48
+ check up to 15 minutes and honor a longer `Retry-After`; never hot-loop. In an
49
+ interactive conversation, report the unavailable state and stop. Select
50
+ `planId` and the exact OS `name` from the live catalog. Do not reuse an OS name
51
+ or price from documentation or a previous session.
49
52
 
50
53
  ## Prepare an order
51
54
 
@@ -88,6 +91,11 @@ its matching `x402api-pay` skill, and select or fund a dedicated
88
91
  network-specific wallet. Require `agentWalletSupported: true`,
89
92
  `sponsoredNetworkFee: true`, and `buyerNativeFeeRequired: false` on the chosen
90
93
  live term. Never fall back to a historical buyer-funded or TRON profile.
94
+ Honor an explicit task or operator network and asset preference. Otherwise use
95
+ a compatible sufficiently funded wallet, then the first compatible term in the
96
+ live challenge's order. Never switch terms after authorization. Require the
97
+ wallet's `maximumPaymentAtomic` to cover the live amount without exceeding the
98
+ task or operator limit.
91
99
 
92
100
  After interactive confirmation or autonomous policy validation, invoke the
93
101
  returned authorize argv once. The separate
@@ -42,7 +42,20 @@ skill automatically.
42
42
  already permits it and a secure password source is configured; otherwise
43
43
  reuse a preconfigured wallet or stop. Keep Base and Solana wallets separate;
44
44
  never import the owner's primary seed or key. TRON wallet management exists,
45
- but the published launch payer cannot authorize TRON.
45
+ but the published launch payer cannot authorize TRON. Configure the local
46
+ per-payment ceiling at creation and inspect it before reuse:
47
+
48
+ ```sh
49
+ x402api wallet create --name <name> \
50
+ --network <exact-challenge-network> \
51
+ --maximum-payment-atomic <per-payment-policy-cap> --json
52
+ x402api wallet show --wallet <name> --json
53
+ ```
54
+
55
+ Require `maximumPaymentAtomic` to be at least the exact live amount and no
56
+ higher than the task or operator limit. If an existing wallet has no ceiling
57
+ or an unsuitable one, do not treat its full balance as bounded authority;
58
+ use a suitably capped dedicated wallet or stop.
46
59
  5. Use both public, safe commands before requesting funding:
47
60
 
48
61
  ```sh
@@ -106,6 +119,12 @@ launch profiles are sponsored Base USDC and sponsored Solana USDC/USDT, bound
106
119
  by the strict `com.x402api.gas-sponsorship` extension. Stop on an expired gas
107
120
  reservation or any buyer-funded, unsupported, or unbound alternative.
108
121
 
122
+ Among valid sponsored terms, honor an explicit task or operator network and
123
+ asset preference. Otherwise prefer a compatible wallet that is already
124
+ sufficiently funded. If several terms remain, choose the first compatible term
125
+ in the live challenge's advertised order. Do not switch terms after
126
+ authorization.
127
+
109
128
  Do not replace the two-stage workflow with `x402api pay`, `payment submit`, or
110
129
  `payment reconcile`. Those wallet commands can submit an exact credential-free
111
130
  endpoint; WarpMetal checkout requires a private owner token that must never
@@ -11,8 +11,11 @@
11
11
 
12
12
  - Treat `https://warpmetal.com/llms.txt`, the live catalog, and the live HTTP
13
13
  402 challenge as authoritative in that order.
14
- - Stop new purchases when `warpmetal health --json` reports
15
- `purchasingReady: false`.
14
+ - Stop the current purchase when `warpmetal health --json` reports
15
+ `purchasingReady: false`. An unattended scheduler may recheck after 60
16
+ seconds, then double the delay after each failure up to 15 minutes and honor
17
+ a longer `Retry-After`; never hot-loop. An interactive agent reports the
18
+ unavailable state and stops.
16
19
  - Select an exact OS name from the chosen plan's current
17
20
  `operatingSystems[]`. Never guess or hard-code an image version.
18
21