@agenttrust-sdk/mcp 0.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 (103) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +233 -0
  3. package/dist/chain.d.ts +41 -0
  4. package/dist/chain.js +164 -0
  5. package/dist/chain.js.map +1 -0
  6. package/dist/config.d.ts +35 -0
  7. package/dist/config.js +99 -0
  8. package/dist/config.js.map +1 -0
  9. package/dist/idl/policy_vault.json +1723 -0
  10. package/dist/idl/trustgate.json +623 -0
  11. package/dist/idl/validation_registry.json +1052 -0
  12. package/dist/index.d.ts +10 -0
  13. package/dist/index.js +123 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/prompts/audit-payment.d.ts +10 -0
  16. package/dist/prompts/audit-payment.js +55 -0
  17. package/dist/prompts/audit-payment.js.map +1 -0
  18. package/dist/prompts/explain-failure.d.ts +7 -0
  19. package/dist/prompts/explain-failure.js +57 -0
  20. package/dist/prompts/explain-failure.js.map +1 -0
  21. package/dist/prompts/index.d.ts +3 -0
  22. package/dist/prompts/index.js +12 -0
  23. package/dist/prompts/index.js.map +1 -0
  24. package/dist/prompts/setup-agent.d.ts +6 -0
  25. package/dist/prompts/setup-agent.js +43 -0
  26. package/dist/prompts/setup-agent.js.map +1 -0
  27. package/dist/prompts/types.d.ts +23 -0
  28. package/dist/prompts/types.js +6 -0
  29. package/dist/prompts/types.js.map +1 -0
  30. package/dist/resources/docs.d.ts +23 -0
  31. package/dist/resources/docs.js +147 -0
  32. package/dist/resources/docs.js.map +1 -0
  33. package/dist/resources/programs.d.ts +14 -0
  34. package/dist/resources/programs.js +69 -0
  35. package/dist/resources/programs.js.map +1 -0
  36. package/dist/server.d.ts +19 -0
  37. package/dist/server.js +136 -0
  38. package/dist/server.js.map +1 -0
  39. package/dist/tools/common.d.ts +18 -0
  40. package/dist/tools/common.js +77 -0
  41. package/dist/tools/common.js.map +1 -0
  42. package/dist/tools/discovery/docs.d.ts +48 -0
  43. package/dist/tools/discovery/docs.js +200 -0
  44. package/dist/tools/discovery/docs.js.map +1 -0
  45. package/dist/tools/discovery/explain-decision.d.ts +28 -0
  46. package/dist/tools/discovery/explain-decision.js +144 -0
  47. package/dist/tools/discovery/explain-decision.js.map +1 -0
  48. package/dist/tools/discovery/facilitator-walkthrough.d.ts +30 -0
  49. package/dist/tools/discovery/facilitator-walkthrough.js +117 -0
  50. package/dist/tools/discovery/facilitator-walkthrough.js.map +1 -0
  51. package/dist/tools/index.d.ts +9 -0
  52. package/dist/tools/index.js +55 -0
  53. package/dist/tools/index.js.map +1 -0
  54. package/dist/tools/read/demo-state.d.ts +48 -0
  55. package/dist/tools/read/demo-state.js +129 -0
  56. package/dist/tools/read/demo-state.js.map +1 -0
  57. package/dist/tools/read/get-feedback-log.d.ts +28 -0
  58. package/dist/tools/read/get-feedback-log.js +51 -0
  59. package/dist/tools/read/get-feedback-log.js.map +1 -0
  60. package/dist/tools/read/get-killswitch.d.ts +38 -0
  61. package/dist/tools/read/get-killswitch.js +63 -0
  62. package/dist/tools/read/get-killswitch.js.map +1 -0
  63. package/dist/tools/read/get-policy.d.ts +51 -0
  64. package/dist/tools/read/get-policy.js +71 -0
  65. package/dist/tools/read/get-policy.js.map +1 -0
  66. package/dist/tools/read/get-quantu-reputation.d.ts +39 -0
  67. package/dist/tools/read/get-quantu-reputation.js +65 -0
  68. package/dist/tools/read/get-quantu-reputation.js.map +1 -0
  69. package/dist/tools/read/get-validation-attestation.d.ts +45 -0
  70. package/dist/tools/read/get-validation-attestation.js +76 -0
  71. package/dist/tools/read/get-validation-attestation.js.map +1 -0
  72. package/dist/tools/read/get-velocity.d.ts +31 -0
  73. package/dist/tools/read/get-velocity.js +50 -0
  74. package/dist/tools/read/get-velocity.js.map +1 -0
  75. package/dist/tools/read/list-facilitators.d.ts +31 -0
  76. package/dist/tools/read/list-facilitators.js +60 -0
  77. package/dist/tools/read/list-facilitators.js.map +1 -0
  78. package/dist/tools/read/list-policies.d.ts +33 -0
  79. package/dist/tools/read/list-policies.js +49 -0
  80. package/dist/tools/read/list-policies.js.map +1 -0
  81. package/dist/tools/read/simulate-payment.d.ts +44 -0
  82. package/dist/tools/read/simulate-payment.js +54 -0
  83. package/dist/tools/read/simulate-payment.js.map +1 -0
  84. package/dist/tools/types.d.ts +31 -0
  85. package/dist/tools/types.js +12 -0
  86. package/dist/tools/types.js.map +1 -0
  87. package/dist/tools/write/emit-feedback.d.ts +55 -0
  88. package/dist/tools/write/emit-feedback.js +83 -0
  89. package/dist/tools/write/emit-feedback.js.map +1 -0
  90. package/dist/tools/write/init-policy.d.ts +133 -0
  91. package/dist/tools/write/init-policy.js +124 -0
  92. package/dist/tools/write/init-policy.js.map +1 -0
  93. package/dist/tools/write/request-validation.d.ts +39 -0
  94. package/dist/tools/write/request-validation.js +69 -0
  95. package/dist/tools/write/request-validation.js.map +1 -0
  96. package/dist/tools/write/respond-to-validation.d.ts +47 -0
  97. package/dist/tools/write/respond-to-validation.js +81 -0
  98. package/dist/tools/write/respond-to-validation.js.map +1 -0
  99. package/dist/tools/write/set-killswitch.d.ts +34 -0
  100. package/dist/tools/write/set-killswitch.js +70 -0
  101. package/dist/tools/write/set-killswitch.js.map +1 -0
  102. package/package.json +72 -0
  103. package/scripts/install-claude-desktop.sh +72 -0
@@ -0,0 +1,1052 @@
1
+ {
2
+ "address": "Cx4RFa6ysw3qXYhugPkF8pFSWBkmKq59h2dWgF2tKhtv",
3
+ "metadata": {
4
+ "name": "validation_registry",
5
+ "version": "0.1.0",
6
+ "spec": "0.1.0",
7
+ "description": "AgentTrust ValidationRegistry — third leg of the ERC-8004 trust stack"
8
+ },
9
+ "instructions": [
10
+ {
11
+ "name": "register_attestor",
12
+ "docs": [
13
+ "Self-register as an attestor. Permissionless. Sybil deterrent: rent",
14
+ "+ lack of downstream-consumer trust (PolicyVault filters by attestor)."
15
+ ],
16
+ "discriminator": [
17
+ 68,
18
+ 201,
19
+ 86,
20
+ 244,
21
+ 51,
22
+ 113,
23
+ 15,
24
+ 94
25
+ ],
26
+ "accounts": [
27
+ {
28
+ "name": "attestor",
29
+ "writable": true,
30
+ "signer": true
31
+ },
32
+ {
33
+ "name": "attestor_profile",
34
+ "writable": true,
35
+ "pda": {
36
+ "seeds": [
37
+ {
38
+ "kind": "const",
39
+ "value": [
40
+ 97,
41
+ 116,
42
+ 116,
43
+ 101,
44
+ 115,
45
+ 116,
46
+ 111,
47
+ 114
48
+ ]
49
+ },
50
+ {
51
+ "kind": "account",
52
+ "path": "attestor"
53
+ }
54
+ ]
55
+ }
56
+ },
57
+ {
58
+ "name": "system_program",
59
+ "address": "11111111111111111111111111111111"
60
+ }
61
+ ],
62
+ "args": [
63
+ {
64
+ "name": "display_name_uri",
65
+ "type": "string"
66
+ }
67
+ ]
68
+ },
69
+ {
70
+ "name": "register_namespace",
71
+ "docs": [
72
+ "Register a capability namespace. Permissionless — anyone can call.",
73
+ "Spam deterrent: rent (~0.0023 SOL).",
74
+ "Caller MUST compute `namespace_hash = SHA256(name_utf8)` off-chain."
75
+ ],
76
+ "discriminator": [
77
+ 168,
78
+ 143,
79
+ 144,
80
+ 145,
81
+ 45,
82
+ 80,
83
+ 93,
84
+ 126
85
+ ],
86
+ "accounts": [
87
+ {
88
+ "name": "creator",
89
+ "writable": true,
90
+ "signer": true
91
+ },
92
+ {
93
+ "name": "namespace",
94
+ "writable": true,
95
+ "pda": {
96
+ "seeds": [
97
+ {
98
+ "kind": "const",
99
+ "value": [
100
+ 99,
101
+ 97,
102
+ 112,
103
+ 97,
104
+ 98,
105
+ 105,
106
+ 108,
107
+ 105,
108
+ 116,
109
+ 121
110
+ ]
111
+ },
112
+ {
113
+ "kind": "arg",
114
+ "path": "namespace_hash"
115
+ }
116
+ ]
117
+ }
118
+ },
119
+ {
120
+ "name": "system_program",
121
+ "address": "11111111111111111111111111111111"
122
+ }
123
+ ],
124
+ "args": [
125
+ {
126
+ "name": "namespace_hash",
127
+ "type": {
128
+ "array": [
129
+ "u8",
130
+ 32
131
+ ]
132
+ }
133
+ },
134
+ {
135
+ "name": "name",
136
+ "type": "string"
137
+ },
138
+ {
139
+ "name": "version",
140
+ "type": "string"
141
+ },
142
+ {
143
+ "name": "schema_uri",
144
+ "type": "string"
145
+ }
146
+ ]
147
+ },
148
+ {
149
+ "name": "request_validation",
150
+ "docs": [
151
+ "Open a validation request for an agent. Subject's owner OR any third",
152
+ "party can call. Off-chain attestors discover via the `RequestCreated`",
153
+ "event."
154
+ ],
155
+ "discriminator": [
156
+ 72,
157
+ 26,
158
+ 53,
159
+ 67,
160
+ 228,
161
+ 30,
162
+ 144,
163
+ 53
164
+ ],
165
+ "accounts": [
166
+ {
167
+ "name": "requester",
168
+ "writable": true,
169
+ "signer": true
170
+ },
171
+ {
172
+ "name": "validation_request",
173
+ "writable": true,
174
+ "pda": {
175
+ "seeds": [
176
+ {
177
+ "kind": "const",
178
+ "value": [
179
+ 114,
180
+ 101,
181
+ 113,
182
+ 117,
183
+ 101,
184
+ 115,
185
+ 116
186
+ ]
187
+ },
188
+ {
189
+ "kind": "arg",
190
+ "path": "subject_asset"
191
+ },
192
+ {
193
+ "kind": "arg",
194
+ "path": "capability_hash"
195
+ },
196
+ {
197
+ "kind": "account",
198
+ "path": "requester"
199
+ }
200
+ ]
201
+ }
202
+ },
203
+ {
204
+ "name": "capability_namespace",
205
+ "docs": [
206
+ "Capability namespace must already exist (prevents requests against",
207
+ "undefined capabilities)."
208
+ ],
209
+ "pda": {
210
+ "seeds": [
211
+ {
212
+ "kind": "const",
213
+ "value": [
214
+ 99,
215
+ 97,
216
+ 112,
217
+ 97,
218
+ 98,
219
+ 105,
220
+ 108,
221
+ 105,
222
+ 116,
223
+ 121
224
+ ]
225
+ },
226
+ {
227
+ "kind": "arg",
228
+ "path": "capability_hash"
229
+ }
230
+ ]
231
+ }
232
+ },
233
+ {
234
+ "name": "system_program",
235
+ "address": "11111111111111111111111111111111"
236
+ }
237
+ ],
238
+ "args": [
239
+ {
240
+ "name": "subject_asset",
241
+ "type": "pubkey"
242
+ },
243
+ {
244
+ "name": "capability_hash",
245
+ "type": {
246
+ "array": [
247
+ "u8",
248
+ 32
249
+ ]
250
+ }
251
+ },
252
+ {
253
+ "name": "claim_uri_hash",
254
+ "type": {
255
+ "array": [
256
+ "u8",
257
+ 32
258
+ ]
259
+ }
260
+ },
261
+ {
262
+ "name": "deadline",
263
+ "type": "u64"
264
+ }
265
+ ]
266
+ },
267
+ {
268
+ "name": "respond_to_validation",
269
+ "docs": [
270
+ "Attestor responds with an Ed25519-signed attestation. Sysvar",
271
+ "verification at instruction index `current - 1` (mirrors Quantu's",
272
+ "`set_agent_wallet` pattern). Domain-separated message:",
273
+ "`AGENTTRUST_ATTEST || subject || cap || payload || expires`."
274
+ ],
275
+ "discriminator": [
276
+ 64,
277
+ 212,
278
+ 244,
279
+ 6,
280
+ 65,
281
+ 134,
282
+ 212,
283
+ 122
284
+ ],
285
+ "accounts": [
286
+ {
287
+ "name": "payer",
288
+ "docs": [
289
+ "Anyone can pay for the rent."
290
+ ],
291
+ "writable": true,
292
+ "signer": true
293
+ },
294
+ {
295
+ "name": "attestor",
296
+ "docs": [
297
+ "The attestor must sign the tx. v1.1+ adds Ed25519 sysvar verify",
298
+ "for non-repudiation against future key compromise."
299
+ ],
300
+ "signer": true
301
+ },
302
+ {
303
+ "name": "attestation",
304
+ "writable": true,
305
+ "pda": {
306
+ "seeds": [
307
+ {
308
+ "kind": "const",
309
+ "value": [
310
+ 97,
311
+ 116,
312
+ 116,
313
+ 101,
314
+ 115,
315
+ 116,
316
+ 97,
317
+ 116,
318
+ 105,
319
+ 111,
320
+ 110
321
+ ]
322
+ },
323
+ {
324
+ "kind": "arg",
325
+ "path": "subject_asset"
326
+ },
327
+ {
328
+ "kind": "arg",
329
+ "path": "capability_hash"
330
+ },
331
+ {
332
+ "kind": "account",
333
+ "path": "attestor"
334
+ }
335
+ ]
336
+ }
337
+ },
338
+ {
339
+ "name": "attestor_profile",
340
+ "writable": true,
341
+ "pda": {
342
+ "seeds": [
343
+ {
344
+ "kind": "const",
345
+ "value": [
346
+ 97,
347
+ 116,
348
+ 116,
349
+ 101,
350
+ 115,
351
+ 116,
352
+ 111,
353
+ 114
354
+ ]
355
+ },
356
+ {
357
+ "kind": "account",
358
+ "path": "attestor"
359
+ }
360
+ ]
361
+ }
362
+ },
363
+ {
364
+ "name": "capability_namespace",
365
+ "docs": [
366
+ "Capability must exist (prevents attestations to undefined capabilities)."
367
+ ],
368
+ "pda": {
369
+ "seeds": [
370
+ {
371
+ "kind": "const",
372
+ "value": [
373
+ 99,
374
+ 97,
375
+ 112,
376
+ 97,
377
+ 98,
378
+ 105,
379
+ 108,
380
+ 105,
381
+ 116,
382
+ 121
383
+ ]
384
+ },
385
+ {
386
+ "kind": "arg",
387
+ "path": "capability_hash"
388
+ }
389
+ ]
390
+ }
391
+ },
392
+ {
393
+ "name": "system_program",
394
+ "address": "11111111111111111111111111111111"
395
+ }
396
+ ],
397
+ "args": [
398
+ {
399
+ "name": "subject_asset",
400
+ "type": "pubkey"
401
+ },
402
+ {
403
+ "name": "capability_hash",
404
+ "type": {
405
+ "array": [
406
+ "u8",
407
+ 32
408
+ ]
409
+ }
410
+ },
411
+ {
412
+ "name": "claim_payload_hash",
413
+ "type": {
414
+ "array": [
415
+ "u8",
416
+ 32
417
+ ]
418
+ }
419
+ },
420
+ {
421
+ "name": "claim_uri_hash",
422
+ "type": {
423
+ "array": [
424
+ "u8",
425
+ 32
426
+ ]
427
+ }
428
+ },
429
+ {
430
+ "name": "expires_at",
431
+ "type": "u64"
432
+ }
433
+ ]
434
+ },
435
+ {
436
+ "name": "revoke_validation",
437
+ "docs": [
438
+ "Original attestor revokes their own attestation. Sets `revoked=true`",
439
+ "(audit-trail preserving — accounts are not closed)."
440
+ ],
441
+ "discriminator": [
442
+ 33,
443
+ 148,
444
+ 178,
445
+ 136,
446
+ 222,
447
+ 96,
448
+ 13,
449
+ 227
450
+ ],
451
+ "accounts": [
452
+ {
453
+ "name": "attestor",
454
+ "signer": true
455
+ },
456
+ {
457
+ "name": "attestation",
458
+ "writable": true,
459
+ "pda": {
460
+ "seeds": [
461
+ {
462
+ "kind": "const",
463
+ "value": [
464
+ 97,
465
+ 116,
466
+ 116,
467
+ 101,
468
+ 115,
469
+ 116,
470
+ 97,
471
+ 116,
472
+ 105,
473
+ 111,
474
+ 110
475
+ ]
476
+ },
477
+ {
478
+ "kind": "arg",
479
+ "path": "subject_asset"
480
+ },
481
+ {
482
+ "kind": "arg",
483
+ "path": "capability_hash"
484
+ },
485
+ {
486
+ "kind": "account",
487
+ "path": "attestor"
488
+ }
489
+ ]
490
+ }
491
+ },
492
+ {
493
+ "name": "attestor_profile",
494
+ "writable": true,
495
+ "pda": {
496
+ "seeds": [
497
+ {
498
+ "kind": "const",
499
+ "value": [
500
+ 97,
501
+ 116,
502
+ 116,
503
+ 101,
504
+ 115,
505
+ 116,
506
+ 111,
507
+ 114
508
+ ]
509
+ },
510
+ {
511
+ "kind": "account",
512
+ "path": "attestor"
513
+ }
514
+ ]
515
+ }
516
+ }
517
+ ],
518
+ "args": [
519
+ {
520
+ "name": "subject_asset",
521
+ "type": "pubkey"
522
+ },
523
+ {
524
+ "name": "capability_hash",
525
+ "type": {
526
+ "array": [
527
+ "u8",
528
+ 32
529
+ ]
530
+ }
531
+ },
532
+ {
533
+ "name": "revocation_reason_hash",
534
+ "type": {
535
+ "array": [
536
+ "u8",
537
+ 32
538
+ ]
539
+ }
540
+ }
541
+ ]
542
+ }
543
+ ],
544
+ "accounts": [
545
+ {
546
+ "name": "AttestorProfile",
547
+ "discriminator": [
548
+ 80,
549
+ 125,
550
+ 165,
551
+ 23,
552
+ 103,
553
+ 186,
554
+ 41,
555
+ 194
556
+ ]
557
+ },
558
+ {
559
+ "name": "CapabilityNamespace",
560
+ "discriminator": [
561
+ 181,
562
+ 184,
563
+ 42,
564
+ 101,
565
+ 24,
566
+ 183,
567
+ 193,
568
+ 18
569
+ ]
570
+ },
571
+ {
572
+ "name": "ValidationAttestation",
573
+ "discriminator": [
574
+ 130,
575
+ 54,
576
+ 37,
577
+ 194,
578
+ 159,
579
+ 219,
580
+ 114,
581
+ 123
582
+ ]
583
+ },
584
+ {
585
+ "name": "ValidationRequest",
586
+ "discriminator": [
587
+ 130,
588
+ 174,
589
+ 153,
590
+ 111,
591
+ 74,
592
+ 241,
593
+ 40,
594
+ 140
595
+ ]
596
+ }
597
+ ],
598
+ "events": [
599
+ {
600
+ "name": "AttestationCreated",
601
+ "discriminator": [
602
+ 217,
603
+ 170,
604
+ 19,
605
+ 203,
606
+ 128,
607
+ 51,
608
+ 29,
609
+ 163
610
+ ]
611
+ },
612
+ {
613
+ "name": "AttestationRevoked",
614
+ "discriminator": [
615
+ 47,
616
+ 106,
617
+ 65,
618
+ 238,
619
+ 200,
620
+ 127,
621
+ 163,
622
+ 50
623
+ ]
624
+ },
625
+ {
626
+ "name": "AttestorRegistered",
627
+ "discriminator": [
628
+ 142,
629
+ 114,
630
+ 59,
631
+ 201,
632
+ 93,
633
+ 183,
634
+ 89,
635
+ 183
636
+ ]
637
+ },
638
+ {
639
+ "name": "NamespaceRegistered",
640
+ "discriminator": [
641
+ 194,
642
+ 227,
643
+ 137,
644
+ 127,
645
+ 163,
646
+ 67,
647
+ 162,
648
+ 245
649
+ ]
650
+ },
651
+ {
652
+ "name": "RequestCreated",
653
+ "discriminator": [
654
+ 102,
655
+ 44,
656
+ 0,
657
+ 225,
658
+ 163,
659
+ 110,
660
+ 167,
661
+ 187
662
+ ]
663
+ }
664
+ ],
665
+ "errors": [
666
+ {
667
+ "code": 14000,
668
+ "name": "NameTooShort",
669
+ "msg": "Namespace name too short (min 3 chars)"
670
+ },
671
+ {
672
+ "code": 14001,
673
+ "name": "NameTooLong",
674
+ "msg": "Namespace name too long (max 32 chars)"
675
+ },
676
+ {
677
+ "code": 14002,
678
+ "name": "NamespaceColonForbidden",
679
+ "msg": "Namespace name must not contain ':' (delimiter is reserved)"
680
+ },
681
+ {
682
+ "code": 14003,
683
+ "name": "VersionTooLong",
684
+ "msg": "Version string too long (max 16 chars)"
685
+ },
686
+ {
687
+ "code": 14004,
688
+ "name": "UriTooLong",
689
+ "msg": "URI too long"
690
+ },
691
+ {
692
+ "code": 14010,
693
+ "name": "DeadlineInPast",
694
+ "msg": "Deadline is in the past"
695
+ },
696
+ {
697
+ "code": 14011,
698
+ "name": "DeadlineTooFar",
699
+ "msg": "Deadline too far in the future (max 30 days ~432_000*30 slots)"
700
+ },
701
+ {
702
+ "code": 14020,
703
+ "name": "ExpiryInPast",
704
+ "msg": "Expiry is in the past"
705
+ },
706
+ {
707
+ "code": 14030,
708
+ "name": "NotOriginalAttestor",
709
+ "msg": "Only the original attestor can revoke their attestation"
710
+ },
711
+ {
712
+ "code": 14031,
713
+ "name": "AlreadyRevoked",
714
+ "msg": "Attestation already revoked"
715
+ },
716
+ {
717
+ "code": 14040,
718
+ "name": "Overflow",
719
+ "msg": "Counter overflow"
720
+ }
721
+ ],
722
+ "types": [
723
+ {
724
+ "name": "AttestationCreated",
725
+ "type": {
726
+ "kind": "struct",
727
+ "fields": [
728
+ {
729
+ "name": "subject_asset",
730
+ "type": "pubkey"
731
+ },
732
+ {
733
+ "name": "capability_hash",
734
+ "type": {
735
+ "array": [
736
+ "u8",
737
+ 32
738
+ ]
739
+ }
740
+ },
741
+ {
742
+ "name": "attestor",
743
+ "type": "pubkey"
744
+ },
745
+ {
746
+ "name": "expires_at",
747
+ "type": "u64"
748
+ },
749
+ {
750
+ "name": "issued_at",
751
+ "type": "u64"
752
+ }
753
+ ]
754
+ }
755
+ },
756
+ {
757
+ "name": "AttestationRevoked",
758
+ "type": {
759
+ "kind": "struct",
760
+ "fields": [
761
+ {
762
+ "name": "subject_asset",
763
+ "type": "pubkey"
764
+ },
765
+ {
766
+ "name": "capability_hash",
767
+ "type": {
768
+ "array": [
769
+ "u8",
770
+ 32
771
+ ]
772
+ }
773
+ },
774
+ {
775
+ "name": "attestor",
776
+ "type": "pubkey"
777
+ },
778
+ {
779
+ "name": "revoked_at",
780
+ "type": "u64"
781
+ }
782
+ ]
783
+ }
784
+ },
785
+ {
786
+ "name": "AttestorProfile",
787
+ "type": {
788
+ "kind": "struct",
789
+ "fields": [
790
+ {
791
+ "name": "attestor",
792
+ "type": "pubkey"
793
+ },
794
+ {
795
+ "name": "display_name_uri",
796
+ "type": "string"
797
+ },
798
+ {
799
+ "name": "total_attestations",
800
+ "type": "u64"
801
+ },
802
+ {
803
+ "name": "total_revoked_by_attestor",
804
+ "type": "u64"
805
+ },
806
+ {
807
+ "name": "total_revoked_externally",
808
+ "type": "u64"
809
+ },
810
+ {
811
+ "name": "registered_at",
812
+ "type": "u64"
813
+ },
814
+ {
815
+ "name": "bump",
816
+ "type": "u8"
817
+ }
818
+ ]
819
+ }
820
+ },
821
+ {
822
+ "name": "AttestorRegistered",
823
+ "type": {
824
+ "kind": "struct",
825
+ "fields": [
826
+ {
827
+ "name": "attestor",
828
+ "type": "pubkey"
829
+ }
830
+ ]
831
+ }
832
+ },
833
+ {
834
+ "name": "CapabilityNamespace",
835
+ "type": {
836
+ "kind": "struct",
837
+ "fields": [
838
+ {
839
+ "name": "namespace_hash",
840
+ "type": {
841
+ "array": [
842
+ "u8",
843
+ 32
844
+ ]
845
+ }
846
+ },
847
+ {
848
+ "name": "name",
849
+ "type": "string"
850
+ },
851
+ {
852
+ "name": "version",
853
+ "type": "string"
854
+ },
855
+ {
856
+ "name": "schema_uri",
857
+ "type": "string"
858
+ },
859
+ {
860
+ "name": "registered_at",
861
+ "type": "u64"
862
+ },
863
+ {
864
+ "name": "creator",
865
+ "type": "pubkey"
866
+ },
867
+ {
868
+ "name": "bump",
869
+ "type": "u8"
870
+ }
871
+ ]
872
+ }
873
+ },
874
+ {
875
+ "name": "NamespaceRegistered",
876
+ "type": {
877
+ "kind": "struct",
878
+ "fields": [
879
+ {
880
+ "name": "namespace_hash",
881
+ "type": {
882
+ "array": [
883
+ "u8",
884
+ 32
885
+ ]
886
+ }
887
+ },
888
+ {
889
+ "name": "creator",
890
+ "type": "pubkey"
891
+ }
892
+ ]
893
+ }
894
+ },
895
+ {
896
+ "name": "RequestCreated",
897
+ "type": {
898
+ "kind": "struct",
899
+ "fields": [
900
+ {
901
+ "name": "subject_asset",
902
+ "type": "pubkey"
903
+ },
904
+ {
905
+ "name": "capability_hash",
906
+ "type": {
907
+ "array": [
908
+ "u8",
909
+ 32
910
+ ]
911
+ }
912
+ },
913
+ {
914
+ "name": "requester",
915
+ "type": "pubkey"
916
+ },
917
+ {
918
+ "name": "deadline",
919
+ "type": "u64"
920
+ }
921
+ ]
922
+ }
923
+ },
924
+ {
925
+ "name": "ValidationAttestation",
926
+ "type": {
927
+ "kind": "struct",
928
+ "fields": [
929
+ {
930
+ "name": "subject_asset",
931
+ "type": "pubkey"
932
+ },
933
+ {
934
+ "name": "capability_hash",
935
+ "type": {
936
+ "array": [
937
+ "u8",
938
+ 32
939
+ ]
940
+ }
941
+ },
942
+ {
943
+ "name": "attestor",
944
+ "type": "pubkey"
945
+ },
946
+ {
947
+ "name": "claim_payload_hash",
948
+ "type": {
949
+ "array": [
950
+ "u8",
951
+ 32
952
+ ]
953
+ }
954
+ },
955
+ {
956
+ "name": "attestor_signature",
957
+ "type": {
958
+ "array": [
959
+ "u8",
960
+ 64
961
+ ]
962
+ }
963
+ },
964
+ {
965
+ "name": "issued_at",
966
+ "type": "u64"
967
+ },
968
+ {
969
+ "name": "expires_at",
970
+ "type": "u64"
971
+ },
972
+ {
973
+ "name": "revoked",
974
+ "type": "bool"
975
+ },
976
+ {
977
+ "name": "revoked_at",
978
+ "type": "u64"
979
+ },
980
+ {
981
+ "name": "revocation_reason_hash",
982
+ "type": {
983
+ "array": [
984
+ "u8",
985
+ 32
986
+ ]
987
+ }
988
+ },
989
+ {
990
+ "name": "claim_uri_hash",
991
+ "type": {
992
+ "array": [
993
+ "u8",
994
+ 32
995
+ ]
996
+ }
997
+ },
998
+ {
999
+ "name": "bump",
1000
+ "type": "u8"
1001
+ }
1002
+ ]
1003
+ }
1004
+ },
1005
+ {
1006
+ "name": "ValidationRequest",
1007
+ "type": {
1008
+ "kind": "struct",
1009
+ "fields": [
1010
+ {
1011
+ "name": "subject_asset",
1012
+ "type": "pubkey"
1013
+ },
1014
+ {
1015
+ "name": "capability_hash",
1016
+ "type": {
1017
+ "array": [
1018
+ "u8",
1019
+ 32
1020
+ ]
1021
+ }
1022
+ },
1023
+ {
1024
+ "name": "requester",
1025
+ "type": "pubkey"
1026
+ },
1027
+ {
1028
+ "name": "claim_uri_hash",
1029
+ "type": {
1030
+ "array": [
1031
+ "u8",
1032
+ 32
1033
+ ]
1034
+ }
1035
+ },
1036
+ {
1037
+ "name": "created_at",
1038
+ "type": "u64"
1039
+ },
1040
+ {
1041
+ "name": "deadline",
1042
+ "type": "u64"
1043
+ },
1044
+ {
1045
+ "name": "bump",
1046
+ "type": "u8"
1047
+ }
1048
+ ]
1049
+ }
1050
+ }
1051
+ ]
1052
+ }