cards402 0.4.5 → 0.4.6
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 +2 -1
- package/dist/soroban.d.ts.map +1 -1
- package/dist/soroban.js +63 -12
- package/dist/soroban.js.map +1 -1
- package/package.json +5 -3
package/README.md
CHANGED
|
@@ -141,7 +141,8 @@ try {
|
|
|
141
141
|
|
|
142
142
|
- [cards402.com](https://cards402.com) — dashboard and docs
|
|
143
143
|
- [cards402.com/docs](https://cards402.com/docs) — full API reference
|
|
144
|
-
- [cards402.com/
|
|
144
|
+
- [cards402.com/skill.md](https://cards402.com/skill.md) — drop-in agent onboarding brief
|
|
145
|
+
- [cards402.com/llms.txt](https://cards402.com/llms.txt) — LLM-index of every docs surface
|
|
145
146
|
- [github.com/CTX-com/Cards402](https://github.com/CTX-com/Cards402) — source
|
|
146
147
|
|
|
147
148
|
## License
|
package/dist/soroban.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"soroban.d.ts","sourceRoot":"","sources":["../src/soroban.ts"],"names":[],"mappings":"AAKA,OAAO,EAOL,GAAG,EACH,GAAG,EACH,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAK9B,wBAAgB,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAYxD;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAE/C,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,SAAS,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC;IAAE,EAAE,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;CAAE,CAAC,CA4BlD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"soroban.d.ts","sourceRoot":"","sources":["../src/soroban.ts"],"names":[],"mappings":"AAKA,OAAO,EAOL,GAAG,EACH,GAAG,EACH,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAK9B,wBAAgB,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAYxD;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAE/C,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,SAAS,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC;IAAE,EAAE,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;CAAE,CAAC,CA4BlD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6K1F;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE;IAAE,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,GAAG,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,EAC/D,YAAY,EAAE,MAAM,GAAG,KAAK,GAC3B;IAAE,EAAE,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAQ1C;AAID,OAAO,EAAE,GAAG,EAAE,CAAC"}
|
package/dist/soroban.js
CHANGED
|
@@ -123,6 +123,23 @@ async function submitSorobanTx(tx, server) {
|
|
|
123
123
|
// of a longer wait is much less than the cost of a stranded order.
|
|
124
124
|
// Some stellar-sdk versions can't parse newer Soroban RPC response XDR
|
|
125
125
|
// ("Bad union switch: 4"); when that happens, fall back to Horizon.
|
|
126
|
+
//
|
|
127
|
+
// Error-handling contract — changed 2026-04-14 after we shipped a
|
|
128
|
+
// stranded-order bug where FAILED statuses from getTransaction were
|
|
129
|
+
// silently caught by the inner try/catch and the loop kept polling
|
|
130
|
+
// until the deadline, at which point a txHash-attached error was
|
|
131
|
+
// thrown and purchaseCardOWS fell through to waitForCard on a tx
|
|
132
|
+
// that had actually failed on-chain. The new rules are:
|
|
133
|
+
//
|
|
134
|
+
// - Any throw whose message starts with "Soroban transaction " is
|
|
135
|
+
// one of OUR OWN terminal throws; the catch re-raises it out of
|
|
136
|
+
// the while loop unchanged.
|
|
137
|
+
// - A `txHash` is only attached to the final timeout error when we
|
|
138
|
+
// genuinely believe the tx MAY still land on the ledger later
|
|
139
|
+
// (Horizon unreachable). In every other terminal state — tx
|
|
140
|
+
// applied and failed, or Horizon confirms the tx never made a
|
|
141
|
+
// ledger — we throw a plain Error, which purchaseCardOWS will
|
|
142
|
+
// propagate to the caller instead of entering waitForCard.
|
|
126
143
|
const POLL_DEADLINE_MS = 120_000;
|
|
127
144
|
const deadline = Date.now() + POLL_DEADLINE_MS;
|
|
128
145
|
while (Date.now() < deadline) {
|
|
@@ -131,12 +148,16 @@ async function submitSorobanTx(tx, server) {
|
|
|
131
148
|
if (status.status === 'SUCCESS')
|
|
132
149
|
return send.hash;
|
|
133
150
|
if (status.status === 'FAILED') {
|
|
134
|
-
throw new Error(`Soroban transaction ${send.hash} failed
|
|
151
|
+
throw new Error(`Soroban transaction ${send.hash} failed on-chain`);
|
|
135
152
|
}
|
|
136
|
-
|
|
137
|
-
break;
|
|
153
|
+
// NOT_FOUND (or any transient non-terminal status): keep polling.
|
|
138
154
|
}
|
|
139
155
|
catch (pollErr) {
|
|
156
|
+
// Re-raise our own terminal throws so they escape the loop.
|
|
157
|
+
if (pollErr instanceof Error &&
|
|
158
|
+
pollErr.message.startsWith(`Soroban transaction ${send.hash}`)) {
|
|
159
|
+
throw pollErr;
|
|
160
|
+
}
|
|
140
161
|
// "Bad union switch" = XDR version mismatch between SDK and RPC.
|
|
141
162
|
// The TX was accepted by sendTransaction; confirm via Horizon instead.
|
|
142
163
|
if (String(pollErr?.message || '').includes('Bad union switch')) {
|
|
@@ -146,32 +167,62 @@ async function submitSorobanTx(tx, server) {
|
|
|
146
167
|
const horizonData = (await horizonResp.json());
|
|
147
168
|
if (horizonData.successful)
|
|
148
169
|
return send.hash;
|
|
170
|
+
// Horizon can see it and it failed — terminal, no recovery.
|
|
171
|
+
throw new Error(`Soroban transaction ${send.hash} failed on-chain (Horizon)`);
|
|
149
172
|
}
|
|
150
173
|
}
|
|
151
|
-
catch {
|
|
174
|
+
catch (horizonErr) {
|
|
175
|
+
// Re-raise our own terminal Horizon throws
|
|
176
|
+
if (horizonErr instanceof Error &&
|
|
177
|
+
horizonErr.message.startsWith(`Soroban transaction ${send.hash}`)) {
|
|
178
|
+
throw horizonErr;
|
|
179
|
+
}
|
|
152
180
|
/* Horizon unreachable — keep polling Soroban RPC */
|
|
153
181
|
}
|
|
154
182
|
}
|
|
183
|
+
// Any other poll-layer error: treat as transient, keep polling.
|
|
155
184
|
}
|
|
156
185
|
await new Promise((r) => setTimeout(r, 2000));
|
|
157
186
|
}
|
|
158
|
-
//
|
|
187
|
+
// Deadline reached without a terminal status. Before giving up, ask
|
|
188
|
+
// Horizon what actually happened to the tx — it's the authoritative
|
|
189
|
+
// record of what hit a ledger, independent of Soroban RPC's state.
|
|
159
190
|
try {
|
|
160
191
|
const horizonResp = await fetch(`https://horizon.stellar.org/transactions/${send.hash}`);
|
|
161
192
|
if (horizonResp.ok) {
|
|
162
193
|
const horizonData = (await horizonResp.json());
|
|
163
194
|
if (horizonData.successful)
|
|
164
195
|
return send.hash;
|
|
196
|
+
// Tx landed and failed. No recovery path — throw without txHash
|
|
197
|
+
// so the caller propagates the error instead of waiting on a card
|
|
198
|
+
// that will never come.
|
|
199
|
+
throw new Error(`Soroban transaction ${send.hash} applied on-chain but failed — no card will be credited. Retry the purchase.`);
|
|
200
|
+
}
|
|
201
|
+
if (horizonResp.status === 404) {
|
|
202
|
+
// Tx was accepted by Soroban RPC (we have a hash) but it never
|
|
203
|
+
// made it into a ledger on Horizon. This is the "network rejected
|
|
204
|
+
// at apply time" case — e.g., source account sequence drifted,
|
|
205
|
+
// host function errored before any effects landed. It is NOT
|
|
206
|
+
// going to "eventually land" — throw without txHash.
|
|
207
|
+
throw new Error(`Soroban transaction ${send.hash} was accepted by the RPC but never applied on the ledger within ${POLL_DEADLINE_MS / 1000}s — the network rejected it pre-apply. Retry the purchase.`);
|
|
165
208
|
}
|
|
166
209
|
}
|
|
167
|
-
catch {
|
|
168
|
-
|
|
210
|
+
catch (horizonErr) {
|
|
211
|
+
// Re-raise our own terminal Horizon throws; swallow network errors.
|
|
212
|
+
if (horizonErr instanceof Error &&
|
|
213
|
+
horizonErr.message.startsWith(`Soroban transaction ${send.hash}`)) {
|
|
214
|
+
throw horizonErr;
|
|
215
|
+
}
|
|
216
|
+
/* Horizon itself is unreachable — fall through to the timeout
|
|
217
|
+
error below, where we attach txHash as a last-resort safety net.
|
|
218
|
+
The watcher may still credit the order if the tx eventually
|
|
219
|
+
lands and Horizon comes back up. */
|
|
169
220
|
}
|
|
170
|
-
//
|
|
171
|
-
//
|
|
172
|
-
//
|
|
173
|
-
// the
|
|
174
|
-
const err = new Error(`Soroban transaction ${send.hash} did not finalize within ${POLL_DEADLINE_MS / 1000}s`);
|
|
221
|
+
// Soroban RPC never saw a terminal state AND Horizon is unreachable
|
|
222
|
+
// (or the response was neither 2xx nor 404). We genuinely don't know
|
|
223
|
+
// whether the tx landed, so attach txHash and let purchaseCardOWS
|
|
224
|
+
// give the cards402 backend watcher a chance to credit the order.
|
|
225
|
+
const err = new Error(`Soroban transaction ${send.hash} did not finalize within ${POLL_DEADLINE_MS / 1000}s and Horizon is unreachable`);
|
|
175
226
|
err.txHash = send.hash;
|
|
176
227
|
throw err;
|
|
177
228
|
}
|
package/dist/soroban.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"soroban.js","sourceRoot":"","sources":["../src/soroban.ts"],"names":[],"mappings":";AAAA,4EAA4E;AAC5E,8EAA8E;AAC9E,2EAA2E;AAC3E,2DAA2D;;;AAiB3D,4CAEC;AAMD,4CAYC;AAmBD,wDA8BC;AAaD,
|
|
1
|
+
{"version":3,"file":"soroban.js","sourceRoot":"","sources":["../src/soroban.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cards402",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.6",
|
|
4
4
|
"description": "Virtual Visa cards for AI agents — pay USDC or XLM on Stellar, get a card in ~60s",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"exports": {
|
|
8
8
|
".": {
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
9
10
|
"import": "./dist/index.js",
|
|
10
|
-
"
|
|
11
|
+
"require": "./dist/index.js"
|
|
11
12
|
},
|
|
12
13
|
"./mcp": {
|
|
14
|
+
"types": "./dist/mcp.d.ts",
|
|
13
15
|
"import": "./dist/mcp.js",
|
|
14
|
-
"
|
|
16
|
+
"require": "./dist/mcp.js"
|
|
15
17
|
}
|
|
16
18
|
},
|
|
17
19
|
"bin": {
|