@sardis/mcp-server 0.2.7 → 1.1.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.
Files changed (66) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/CLAUDE_DESKTOP_CONFIG.md +10 -19
  3. package/README.md +179 -221
  4. package/dist/api.d.ts +1 -1
  5. package/dist/api.d.ts.map +1 -1
  6. package/dist/api.js +4 -2
  7. package/dist/api.js.map +1 -1
  8. package/dist/cli.js +185 -20
  9. package/dist/cli.js.map +1 -1
  10. package/dist/config.d.ts +2 -0
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +3 -0
  13. package/dist/config.js.map +1 -1
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +4 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/tools/events.d.ts +7 -0
  19. package/dist/tools/events.d.ts.map +1 -0
  20. package/dist/tools/events.js +413 -0
  21. package/dist/tools/events.js.map +1 -0
  22. package/dist/tools/fiat.d.ts +2 -2
  23. package/dist/tools/fiat.d.ts.map +1 -1
  24. package/dist/tools/fiat.js +649 -266
  25. package/dist/tools/fiat.js.map +1 -1
  26. package/dist/tools/guardrails.d.ts +7 -0
  27. package/dist/tools/guardrails.d.ts.map +1 -0
  28. package/dist/tools/guardrails.js +379 -0
  29. package/dist/tools/guardrails.js.map +1 -0
  30. package/dist/tools/index.d.ts +29 -8
  31. package/dist/tools/index.d.ts.map +1 -1
  32. package/dist/tools/index.js +108 -5
  33. package/dist/tools/index.js.map +1 -1
  34. package/dist/tools/jobs.d.ts +17 -0
  35. package/dist/tools/jobs.d.ts.map +1 -0
  36. package/dist/tools/jobs.js +583 -0
  37. package/dist/tools/jobs.js.map +1 -0
  38. package/dist/tools/payments.d.ts +2 -0
  39. package/dist/tools/payments.d.ts.map +1 -1
  40. package/dist/tools/payments.js +2 -0
  41. package/dist/tools/payments.js.map +1 -1
  42. package/dist/tools/policy.d.ts.map +1 -1
  43. package/dist/tools/policy.js +32 -4
  44. package/dist/tools/policy.js.map +1 -1
  45. package/dist/tools/sandbox.js +1 -1
  46. package/dist/tools/trust.d.ts +7 -0
  47. package/dist/tools/trust.d.ts.map +1 -0
  48. package/dist/tools/trust.js +188 -0
  49. package/dist/tools/trust.js.map +1 -0
  50. package/dist/tools/types.d.ts +51 -0
  51. package/dist/tools/types.d.ts.map +1 -1
  52. package/dist/tools/types.js +20 -0
  53. package/dist/tools/types.js.map +1 -1
  54. package/dist/tools/wallet-management.d.ts.map +1 -1
  55. package/dist/tools/wallet-management.js +55 -45
  56. package/dist/tools/wallet-management.js.map +1 -1
  57. package/dist/tools/x402.d.ts +12 -0
  58. package/dist/tools/x402.d.ts.map +1 -0
  59. package/dist/tools/x402.js +299 -0
  60. package/dist/tools/x402.js.map +1 -0
  61. package/dist/version.d.ts +2 -0
  62. package/dist/version.d.ts.map +1 -0
  63. package/dist/version.js +2 -0
  64. package/dist/version.js.map +1 -0
  65. package/mcp.json +139 -53
  66. package/package.json +30 -14
@@ -0,0 +1,583 @@
1
+ /**
2
+ * Sardis MCP Server - ERC-8183 Agentic Commerce Job Tools
3
+ *
4
+ * Three-party job primitive: Client creates, Provider delivers, Evaluator judges.
5
+ * Tools:
6
+ * - sardis_create_job: Create a new job as client
7
+ * - sardis_fund_job: Fund a job
8
+ * - sardis_submit_deliverable: Submit work as provider
9
+ * - sardis_evaluate_job: Evaluate work as evaluator
10
+ * - sardis_get_job: Get job details
11
+ * - sardis_list_jobs: List jobs by role/state
12
+ * - sardis_dispute_job: Raise dispute
13
+ */
14
+ import { z } from 'zod';
15
+ import { apiRequest } from '../api.js';
16
+ import { getConfig } from '../config.js';
17
+ // Zod schemas
18
+ const CreateJobSchema = z.object({
19
+ provider_agent_id: z.string().describe('Agent ID of the service provider'),
20
+ evaluator_agent_id: z.string().describe('Agent ID of the independent evaluator'),
21
+ amount: z.string().describe('Payment amount as a decimal string (e.g., "50.00")'),
22
+ token: z.string().optional().default('USDC').describe('Payment token (default: USDC)'),
23
+ chain: z.string().optional().default('base').describe('Blockchain network (default: base)'),
24
+ deadline_hours: z.number().optional().default(72).describe('Hours until job expires (default: 72)'),
25
+ description: z.string().optional().default('').describe('Job description'),
26
+ });
27
+ const FundJobSchema = z.object({
28
+ job_id: z.string().describe('Job ID to fund'),
29
+ tx_hash: z.string().optional().default('').describe('On-chain funding transaction hash'),
30
+ });
31
+ const SubmitDeliverableSchema = z.object({
32
+ job_id: z.string().describe('Job ID to submit deliverable for'),
33
+ deliverable_uri: z.string().describe('URI of the deliverable (IPFS, HTTPS, etc.)'),
34
+ deliverable_hash: z.string().optional().default('').describe('SHA-256 hash of deliverable content'),
35
+ });
36
+ const EvaluateJobSchema = z.object({
37
+ job_id: z.string().describe('Job ID to evaluate'),
38
+ approved: z.boolean().describe('Whether to approve (true) or reject (false) the deliverable'),
39
+ reason: z.string().optional().default('').describe('Evaluation reason or feedback'),
40
+ });
41
+ const GetJobSchema = z.object({
42
+ job_id: z.string().describe('Job ID to retrieve'),
43
+ });
44
+ const ListJobsSchema = z.object({
45
+ role: z.string().optional().describe('Filter by role: client, provider, evaluator'),
46
+ state: z.string().optional().describe('Filter by state: open, funded, submitted, completed, rejected, expired, disputed'),
47
+ limit: z.number().optional().default(20).describe('Maximum results to return'),
48
+ offset: z.number().optional().default(0).describe('Pagination offset'),
49
+ });
50
+ const DisputeJobSchema = z.object({
51
+ job_id: z.string().describe('Job ID to dispute'),
52
+ reason: z.string().describe('Reason for raising the dispute'),
53
+ });
54
+ // Tool definitions
55
+ export const jobToolDefinitions = [
56
+ {
57
+ name: 'sardis_create_job',
58
+ description: 'Create a new ERC-8183 agentic commerce job. You act as the client, specifying a provider ' +
59
+ 'agent to do the work and an independent evaluator agent to judge the result. Funds are ' +
60
+ 'escrowed until the evaluator approves the deliverable.',
61
+ inputSchema: {
62
+ type: 'object',
63
+ properties: {
64
+ provider_agent_id: {
65
+ type: 'string',
66
+ description: 'Agent ID of the service provider',
67
+ },
68
+ evaluator_agent_id: {
69
+ type: 'string',
70
+ description: 'Agent ID of the independent evaluator',
71
+ },
72
+ amount: {
73
+ type: 'string',
74
+ description: 'Payment amount as a decimal string (e.g., "50.00")',
75
+ },
76
+ token: {
77
+ type: 'string',
78
+ description: 'Payment token (default: USDC)',
79
+ },
80
+ chain: {
81
+ type: 'string',
82
+ description: 'Blockchain network (default: base)',
83
+ },
84
+ deadline_hours: {
85
+ type: 'number',
86
+ description: 'Hours until job expires (default: 72)',
87
+ },
88
+ description: {
89
+ type: 'string',
90
+ description: 'Job description',
91
+ },
92
+ },
93
+ required: ['provider_agent_id', 'evaluator_agent_id', 'amount'],
94
+ },
95
+ },
96
+ {
97
+ name: 'sardis_fund_job',
98
+ description: 'Fund an ERC-8183 job. Transitions the job from "open" to "funded", escrowing the payment ' +
99
+ 'amount. Only the client agent who created the job can fund it.',
100
+ inputSchema: {
101
+ type: 'object',
102
+ properties: {
103
+ job_id: {
104
+ type: 'string',
105
+ description: 'Job ID to fund',
106
+ },
107
+ tx_hash: {
108
+ type: 'string',
109
+ description: 'On-chain funding transaction hash (optional)',
110
+ },
111
+ },
112
+ required: ['job_id'],
113
+ },
114
+ },
115
+ {
116
+ name: 'sardis_submit_deliverable',
117
+ description: 'Submit a deliverable for an ERC-8183 job. Only the provider agent can submit. ' +
118
+ 'Transitions the job from "funded" to "submitted" for evaluator review.',
119
+ inputSchema: {
120
+ type: 'object',
121
+ properties: {
122
+ job_id: {
123
+ type: 'string',
124
+ description: 'Job ID to submit deliverable for',
125
+ },
126
+ deliverable_uri: {
127
+ type: 'string',
128
+ description: 'URI of the deliverable (IPFS hash, HTTPS URL, etc.)',
129
+ },
130
+ deliverable_hash: {
131
+ type: 'string',
132
+ description: 'SHA-256 hash of deliverable content for verification',
133
+ },
134
+ },
135
+ required: ['job_id', 'deliverable_uri'],
136
+ },
137
+ },
138
+ {
139
+ name: 'sardis_evaluate_job',
140
+ description: 'Evaluate a submitted deliverable for an ERC-8183 job. Only the evaluator agent can ' +
141
+ 'evaluate. Approving releases payment to the provider; rejecting returns funds to the client.',
142
+ inputSchema: {
143
+ type: 'object',
144
+ properties: {
145
+ job_id: {
146
+ type: 'string',
147
+ description: 'Job ID to evaluate',
148
+ },
149
+ approved: {
150
+ type: 'boolean',
151
+ description: 'Whether to approve (true) or reject (false)',
152
+ },
153
+ reason: {
154
+ type: 'string',
155
+ description: 'Evaluation reason or feedback',
156
+ },
157
+ },
158
+ required: ['job_id', 'approved'],
159
+ },
160
+ },
161
+ {
162
+ name: 'sardis_get_job',
163
+ description: 'Get details of an ERC-8183 job including its current state, participants, amounts, ' +
164
+ 'deliverable, and evaluation results.',
165
+ inputSchema: {
166
+ type: 'object',
167
+ properties: {
168
+ job_id: {
169
+ type: 'string',
170
+ description: 'Job ID to retrieve',
171
+ },
172
+ },
173
+ required: ['job_id'],
174
+ },
175
+ },
176
+ {
177
+ name: 'sardis_list_jobs',
178
+ description: 'List ERC-8183 jobs. Filter by your role (client, provider, evaluator) and/or job state.',
179
+ inputSchema: {
180
+ type: 'object',
181
+ properties: {
182
+ role: {
183
+ type: 'string',
184
+ enum: ['client', 'provider', 'evaluator'],
185
+ description: 'Filter by your role in the job',
186
+ },
187
+ state: {
188
+ type: 'string',
189
+ enum: ['open', 'funded', 'submitted', 'completed', 'rejected', 'expired', 'disputed'],
190
+ description: 'Filter by job state',
191
+ },
192
+ limit: {
193
+ type: 'number',
194
+ description: 'Maximum results to return (default: 20)',
195
+ },
196
+ offset: {
197
+ type: 'number',
198
+ description: 'Pagination offset (default: 0)',
199
+ },
200
+ },
201
+ required: [],
202
+ },
203
+ },
204
+ {
205
+ name: 'sardis_dispute_job',
206
+ description: 'Raise a dispute on an ERC-8183 job. Only the client or provider can dispute. ' +
207
+ 'Transitions funded or submitted jobs to "disputed" state for resolution.',
208
+ inputSchema: {
209
+ type: 'object',
210
+ properties: {
211
+ job_id: {
212
+ type: 'string',
213
+ description: 'Job ID to dispute',
214
+ },
215
+ reason: {
216
+ type: 'string',
217
+ description: 'Reason for raising the dispute',
218
+ },
219
+ },
220
+ required: ['job_id', 'reason'],
221
+ },
222
+ },
223
+ ];
224
+ // Tool handlers
225
+ export const jobToolHandlers = {
226
+ sardis_create_job: async (args) => {
227
+ const parsed = CreateJobSchema.safeParse(args);
228
+ if (!parsed.success) {
229
+ return {
230
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
231
+ isError: true,
232
+ };
233
+ }
234
+ const { provider_agent_id, evaluator_agent_id, amount, token, chain, deadline_hours, description } = parsed.data;
235
+ const config = getConfig();
236
+ if (!config.apiKey || config.mode === 'simulated') {
237
+ const simId = `job_sim_${Date.now().toString(36)}`;
238
+ const deadline = new Date(Date.now() + deadline_hours * 3600_000).toISOString();
239
+ return {
240
+ content: [
241
+ {
242
+ type: 'text',
243
+ text: JSON.stringify({
244
+ success: true,
245
+ job_id: simId,
246
+ state: 'open',
247
+ created_at: new Date().toISOString(),
248
+ deadline,
249
+ message: `Job created: ${amount} ${token} for provider ${provider_agent_id}, evaluated by ${evaluator_agent_id}`,
250
+ }, null, 2),
251
+ },
252
+ ],
253
+ };
254
+ }
255
+ try {
256
+ const result = await apiRequest('POST', '/api/v2/erc8183/jobs', {
257
+ provider_agent_id,
258
+ evaluator_agent_id,
259
+ amount,
260
+ token,
261
+ chain,
262
+ deadline_hours,
263
+ description,
264
+ });
265
+ return {
266
+ content: [
267
+ {
268
+ type: 'text',
269
+ text: JSON.stringify({
270
+ success: true,
271
+ ...result,
272
+ message: `Job ${result.job_id} created (${amount} ${token}), deadline: ${result.deadline}`,
273
+ }, null, 2),
274
+ },
275
+ ],
276
+ };
277
+ }
278
+ catch (error) {
279
+ return {
280
+ content: [
281
+ { type: 'text', text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : 'Failed to create job' }, null, 2) },
282
+ ],
283
+ isError: true,
284
+ };
285
+ }
286
+ },
287
+ sardis_fund_job: async (args) => {
288
+ const parsed = FundJobSchema.safeParse(args);
289
+ if (!parsed.success) {
290
+ return {
291
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
292
+ isError: true,
293
+ };
294
+ }
295
+ const { job_id, tx_hash } = parsed.data;
296
+ const config = getConfig();
297
+ if (!config.apiKey || config.mode === 'simulated') {
298
+ return {
299
+ content: [
300
+ {
301
+ type: 'text',
302
+ text: JSON.stringify({
303
+ success: true,
304
+ job_id,
305
+ state: 'funded',
306
+ funded_at: new Date().toISOString(),
307
+ message: `Job ${job_id} funded successfully`,
308
+ }, null, 2),
309
+ },
310
+ ],
311
+ };
312
+ }
313
+ try {
314
+ const result = await apiRequest('POST', `/api/v2/erc8183/jobs/${job_id}/fund`, { tx_hash });
315
+ return {
316
+ content: [
317
+ {
318
+ type: 'text',
319
+ text: JSON.stringify({ success: true, ...result, message: `Job ${job_id} funded` }, null, 2),
320
+ },
321
+ ],
322
+ };
323
+ }
324
+ catch (error) {
325
+ return {
326
+ content: [
327
+ { type: 'text', text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : 'Failed to fund job' }, null, 2) },
328
+ ],
329
+ isError: true,
330
+ };
331
+ }
332
+ },
333
+ sardis_submit_deliverable: async (args) => {
334
+ const parsed = SubmitDeliverableSchema.safeParse(args);
335
+ if (!parsed.success) {
336
+ return {
337
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
338
+ isError: true,
339
+ };
340
+ }
341
+ const { job_id, deliverable_uri, deliverable_hash } = parsed.data;
342
+ const config = getConfig();
343
+ if (!config.apiKey || config.mode === 'simulated') {
344
+ return {
345
+ content: [
346
+ {
347
+ type: 'text',
348
+ text: JSON.stringify({
349
+ success: true,
350
+ job_id,
351
+ state: 'submitted',
352
+ deliverable_uri,
353
+ submitted_at: new Date().toISOString(),
354
+ message: `Deliverable submitted for job ${job_id}`,
355
+ }, null, 2),
356
+ },
357
+ ],
358
+ };
359
+ }
360
+ try {
361
+ const result = await apiRequest('POST', `/api/v2/erc8183/jobs/${job_id}/submit`, { deliverable_uri, deliverable_hash });
362
+ return {
363
+ content: [
364
+ {
365
+ type: 'text',
366
+ text: JSON.stringify({ success: true, ...result, message: `Deliverable submitted for job ${job_id}` }, null, 2),
367
+ },
368
+ ],
369
+ };
370
+ }
371
+ catch (error) {
372
+ return {
373
+ content: [
374
+ { type: 'text', text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : 'Failed to submit deliverable' }, null, 2) },
375
+ ],
376
+ isError: true,
377
+ };
378
+ }
379
+ },
380
+ sardis_evaluate_job: async (args) => {
381
+ const parsed = EvaluateJobSchema.safeParse(args);
382
+ if (!parsed.success) {
383
+ return {
384
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
385
+ isError: true,
386
+ };
387
+ }
388
+ const { job_id, approved, reason } = parsed.data;
389
+ const config = getConfig();
390
+ if (!config.apiKey || config.mode === 'simulated') {
391
+ const result = approved ? 'approved' : 'rejected';
392
+ const state = approved ? 'completed' : 'rejected';
393
+ return {
394
+ content: [
395
+ {
396
+ type: 'text',
397
+ text: JSON.stringify({
398
+ success: true,
399
+ job_id,
400
+ state,
401
+ evaluation_result: result,
402
+ evaluated_at: new Date().toISOString(),
403
+ message: `Job ${job_id} ${result}${reason ? `: ${reason}` : ''}`,
404
+ }, null, 2),
405
+ },
406
+ ],
407
+ };
408
+ }
409
+ try {
410
+ const result = await apiRequest('POST', `/api/v2/erc8183/jobs/${job_id}/evaluate`, { approved, reason });
411
+ return {
412
+ content: [
413
+ {
414
+ type: 'text',
415
+ text: JSON.stringify({
416
+ success: true,
417
+ ...result,
418
+ message: `Job ${job_id} ${approved ? 'approved' : 'rejected'}${reason ? `: ${reason}` : ''}`,
419
+ }, null, 2),
420
+ },
421
+ ],
422
+ };
423
+ }
424
+ catch (error) {
425
+ return {
426
+ content: [
427
+ { type: 'text', text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : 'Failed to evaluate job' }, null, 2) },
428
+ ],
429
+ isError: true,
430
+ };
431
+ }
432
+ },
433
+ sardis_get_job: async (args) => {
434
+ const parsed = GetJobSchema.safeParse(args);
435
+ if (!parsed.success) {
436
+ return {
437
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
438
+ isError: true,
439
+ };
440
+ }
441
+ const { job_id } = parsed.data;
442
+ const config = getConfig();
443
+ if (!config.apiKey || config.mode === 'simulated') {
444
+ return {
445
+ content: [
446
+ {
447
+ type: 'text',
448
+ text: JSON.stringify({
449
+ id: job_id,
450
+ client_agent_id: config.agentId || 'agent_sim_client',
451
+ provider_agent_id: 'agent_sim_provider',
452
+ evaluator_agent_id: 'agent_sim_evaluator',
453
+ amount: '50.00',
454
+ token: 'USDC',
455
+ chain: config.chain,
456
+ state: 'open',
457
+ description: 'Simulated ERC-8183 job',
458
+ created_at: new Date().toISOString(),
459
+ deadline: new Date(Date.now() + 72 * 3600_000).toISOString(),
460
+ }, null, 2),
461
+ },
462
+ ],
463
+ };
464
+ }
465
+ try {
466
+ const result = await apiRequest('GET', `/api/v2/erc8183/jobs/${job_id}`);
467
+ return {
468
+ content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
469
+ };
470
+ }
471
+ catch (error) {
472
+ return {
473
+ content: [
474
+ { type: 'text', text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : 'Failed to get job' }, null, 2) },
475
+ ],
476
+ isError: true,
477
+ };
478
+ }
479
+ },
480
+ sardis_list_jobs: async (args) => {
481
+ const parsed = ListJobsSchema.safeParse(args);
482
+ const { role, state, limit, offset } = parsed.success
483
+ ? parsed.data
484
+ : { role: undefined, state: undefined, limit: 20, offset: 0 };
485
+ const config = getConfig();
486
+ if (!config.apiKey || config.mode === 'simulated') {
487
+ const simTime = new Date().toISOString();
488
+ return {
489
+ content: [
490
+ {
491
+ type: 'text',
492
+ text: JSON.stringify({
493
+ jobs: [
494
+ {
495
+ id: `job_sim_${Date.now().toString(36)}`,
496
+ client_agent_id: config.agentId || 'agent_sim_client',
497
+ provider_agent_id: 'agent_sim_provider',
498
+ evaluator_agent_id: 'agent_sim_evaluator',
499
+ amount: '50.00',
500
+ token: 'USDC',
501
+ chain: config.chain,
502
+ state: state || 'open',
503
+ description: 'Simulated job',
504
+ created_at: simTime,
505
+ deadline: new Date(Date.now() + 72 * 3600_000).toISOString(),
506
+ },
507
+ ],
508
+ total: 1,
509
+ }, null, 2),
510
+ },
511
+ ],
512
+ };
513
+ }
514
+ try {
515
+ const params = new URLSearchParams({
516
+ limit: limit.toString(),
517
+ offset: offset.toString(),
518
+ });
519
+ if (role)
520
+ params.append('role', role);
521
+ if (state)
522
+ params.append('state', state);
523
+ const result = await apiRequest('GET', `/api/v2/erc8183/jobs?${params}`);
524
+ return {
525
+ content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
526
+ };
527
+ }
528
+ catch (error) {
529
+ return {
530
+ content: [
531
+ { type: 'text', text: `Failed to list jobs: ${error instanceof Error ? error.message : 'Unknown error'}` },
532
+ ],
533
+ isError: true,
534
+ };
535
+ }
536
+ },
537
+ sardis_dispute_job: async (args) => {
538
+ const parsed = DisputeJobSchema.safeParse(args);
539
+ if (!parsed.success) {
540
+ return {
541
+ content: [{ type: 'text', text: `Invalid request: ${parsed.error.message}` }],
542
+ isError: true,
543
+ };
544
+ }
545
+ const { job_id, reason } = parsed.data;
546
+ const config = getConfig();
547
+ if (!config.apiKey || config.mode === 'simulated') {
548
+ return {
549
+ content: [
550
+ {
551
+ type: 'text',
552
+ text: JSON.stringify({
553
+ success: true,
554
+ job_id,
555
+ state: 'disputed',
556
+ message: `Dispute raised on job ${job_id}: ${reason}`,
557
+ }, null, 2),
558
+ },
559
+ ],
560
+ };
561
+ }
562
+ try {
563
+ const result = await apiRequest('POST', `/api/v2/erc8183/jobs/${job_id}/dispute`, { reason });
564
+ return {
565
+ content: [
566
+ {
567
+ type: 'text',
568
+ text: JSON.stringify({ success: true, ...result, message: `Dispute raised on job ${job_id}` }, null, 2),
569
+ },
570
+ ],
571
+ };
572
+ }
573
+ catch (error) {
574
+ return {
575
+ content: [
576
+ { type: 'text', text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : 'Failed to dispute job' }, null, 2) },
577
+ ],
578
+ isError: true,
579
+ };
580
+ }
581
+ },
582
+ };
583
+ //# sourceMappingURL=jobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/tools/jobs.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ interface PaymentResult {
11
11
  chain: string;
12
12
  ledger_tx_id?: string;
13
13
  audit_anchor?: string;
14
+ execution_path?: 'legacy_tx' | 'erc4337_userop';
15
+ user_op_hash?: string;
14
16
  }
15
17
  interface LedgerEntry {
16
18
  id?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../../src/tools/payments.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAc,MAAM,YAAY,CAAC;AAO1E,UAAU,aAAa;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,WAAW;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AA4CD;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,EACtB,KAAK,GAAE,MAAe,GACrB,OAAO,CAAC,aAAa,CAAC,CAuDxB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA4BhF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,GAAE,MAAW,EAClB,MAAM,GAAE,MAAU,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,EAAE,CAAC,CAsDxB;AAGD,eAAO,MAAM,sBAAsB,EAAE,cAAc,EAsElD,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAwP3D,CAAC"}
1
+ {"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../../src/tools/payments.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAc,MAAM,YAAY,CAAC;AAO1E,UAAU,aAAa;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,WAAW,GAAG,gBAAgB,CAAC;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,WAAW;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AA4CD;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,EACtB,KAAK,GAAE,MAAe,GACrB,OAAO,CAAC,aAAa,CAAC,CA2DxB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA4BhF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,GAAE,MAAW,EAClB,MAAM,GAAE,MAAU,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,EAAE,CAAC,CAsDxB;AAGD,eAAO,MAAM,sBAAsB,EAAE,cAAc,EAsElD,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAwP3D,CAAC"}
@@ -72,6 +72,8 @@ export async function executePayment(vendor, amount, purpose, vendorAddress, tok
72
72
  chain: transfer.chain,
73
73
  ledger_tx_id: transfer.ledger_tx_id,
74
74
  audit_anchor: transfer.audit_anchor ?? undefined,
75
+ execution_path: transfer.execution_path,
76
+ user_op_hash: transfer.user_op_hash ?? undefined,
75
77
  };
76
78
  }
77
79
  /**