@wireio/stake 0.1.0 → 0.1.1

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 (50) hide show
  1. package/README.md +57 -0
  2. package/lib/stake.browser.js +4623 -3451
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +372 -537
  5. package/lib/stake.js +4801 -3574
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +4623 -3451
  8. package/lib/stake.m.js.map +1 -1
  9. package/package.json +1 -1
  10. package/src/assets/solana/idl/liqsol_core.json +4239 -0
  11. package/src/assets/solana/idl/liqsol_token.json +183 -0
  12. package/src/assets/solana/idl/validator_leaderboard.json +270 -265
  13. package/src/assets/solana/types/liqsol_core.ts +4245 -0
  14. package/src/assets/solana/types/liqsol_token.ts +189 -0
  15. package/src/assets/solana/types/validator_leaderboard.ts +270 -265
  16. package/src/index.ts +1 -3
  17. package/src/networks/ethereum/contract.ts +138 -36
  18. package/src/networks/ethereum/ethereum.ts +167 -38
  19. package/src/networks/ethereum/types.ts +32 -1
  20. package/src/networks/solana/clients/deposit.client.ts +71 -109
  21. package/src/networks/solana/clients/distribution.client.ts +256 -383
  22. package/src/networks/solana/clients/leaderboard.client.ts +38 -133
  23. package/src/networks/solana/constants.ts +214 -130
  24. package/src/networks/solana/program.ts +25 -38
  25. package/src/networks/solana/solana.ts +100 -89
  26. package/src/networks/solana/types.ts +37 -47
  27. package/src/networks/solana/utils.ts +551 -0
  28. package/src/scripts/tsconfig.json +17 -0
  29. package/src/staker/staker.ts +5 -4
  30. package/src/staker/types.ts +2 -2
  31. package/src/assets/solana/idl/deposit.json +0 -296
  32. package/src/assets/solana/idl/distribution.json +0 -768
  33. package/src/assets/solana/idl/liq_sol_token.json +0 -298
  34. package/src/assets/solana/idl/mint_helper.json +0 -110
  35. package/src/assets/solana/idl/read_tracked_balance.json +0 -140
  36. package/src/assets/solana/idl/stake_controller.json +0 -2149
  37. package/src/assets/solana/idl/treasury.json +0 -110
  38. package/src/assets/solana/idl/validator_registry.json +0 -487
  39. package/src/assets/solana/idl/yield_oracle.json +0 -32
  40. package/src/assets/solana/types/deposit.ts +0 -302
  41. package/src/assets/solana/types/distribution.ts +0 -774
  42. package/src/assets/solana/types/liq_sol_token.ts +0 -304
  43. package/src/assets/solana/types/mint_helper.ts +0 -116
  44. package/src/assets/solana/types/read_tracked_balance.ts +0 -146
  45. package/src/assets/solana/types/stake_controller.ts +0 -2155
  46. package/src/assets/solana/types/stake_registry.ts +0 -441
  47. package/src/assets/solana/types/treasury.ts +0 -116
  48. package/src/assets/solana/types/validator_registry.ts +0 -493
  49. package/src/assets/solana/types/yield_oracle.ts +0 -38
  50. package/src/common/utils.ts +0 -9
@@ -0,0 +1,4245 @@
1
+ /**
2
+ * Program IDL in camelCase format in order to be used in JS/TS.
3
+ *
4
+ * Note that this is only a type helper and is not the actual IDL. The original
5
+ * IDL can be found at `target/idl/liqsol_core.json`.
6
+ */
7
+ export type LiqsolCore = {
8
+ "address": "BsxpwvCaoerUPdY4CgPFgHMmgN939ogDd8MMvH7Zdpgr",
9
+ "metadata": {
10
+ "name": "liqsolCore",
11
+ "version": "0.1.0",
12
+ "spec": "0.1.0",
13
+ "description": "Created with Anchor"
14
+ },
15
+ "instructions": [
16
+ {
17
+ "name": "addBondLevel",
18
+ "discriminator": [
19
+ 102,
20
+ 36,
21
+ 12,
22
+ 245,
23
+ 60,
24
+ 124,
25
+ 92,
26
+ 74
27
+ ],
28
+ "accounts": [
29
+ {
30
+ "name": "authority",
31
+ "writable": true,
32
+ "signer": true
33
+ },
34
+ {
35
+ "name": "barConfig"
36
+ },
37
+ {
38
+ "name": "bondLevel",
39
+ "writable": true
40
+ },
41
+ {
42
+ "name": "systemProgram"
43
+ }
44
+ ],
45
+ "args": [
46
+ {
47
+ "name": "bondId",
48
+ "type": {
49
+ "array": [
50
+ "u8",
51
+ 32
52
+ ]
53
+ }
54
+ },
55
+ {
56
+ "name": "warmupPeriod",
57
+ "type": "u64"
58
+ },
59
+ {
60
+ "name": "cooldownPeriod",
61
+ "type": "u64"
62
+ },
63
+ {
64
+ "name": "minReceiptPrincipal",
65
+ "type": "u64"
66
+ },
67
+ {
68
+ "name": "roles",
69
+ "type": {
70
+ "array": [
71
+ {
72
+ "defined": {
73
+ "name": "role"
74
+ }
75
+ },
76
+ 4
77
+ ]
78
+ }
79
+ }
80
+ ]
81
+ },
82
+ {
83
+ "name": "addValidator",
84
+ "docs": [
85
+ "Done///"
86
+ ],
87
+ "discriminator": [
88
+ 250,
89
+ 113,
90
+ 53,
91
+ 54,
92
+ 141,
93
+ 117,
94
+ 215,
95
+ 185
96
+ ],
97
+ "accounts": [
98
+ {
99
+ "name": "authority",
100
+ "signer": true
101
+ },
102
+ {
103
+ "name": "validatorRegistry",
104
+ "writable": true
105
+ },
106
+ {
107
+ "name": "transientsTracking",
108
+ "writable": true
109
+ }
110
+ ],
111
+ "args": [
112
+ {
113
+ "name": "voteAccount",
114
+ "type": "pubkey"
115
+ },
116
+ {
117
+ "name": "name",
118
+ "type": "string"
119
+ },
120
+ {
121
+ "name": "performanceScore",
122
+ "type": "u8"
123
+ }
124
+ ]
125
+ },
126
+ {
127
+ "name": "advanceServiceability",
128
+ "docs": [
129
+ "Advance the max servicable receipt ID"
130
+ ],
131
+ "discriminator": [
132
+ 139,
133
+ 89,
134
+ 79,
135
+ 2,
136
+ 90,
137
+ 211,
138
+ 173,
139
+ 240
140
+ ],
141
+ "accounts": [
142
+ {
143
+ "name": "global",
144
+ "writable": true
145
+ },
146
+ {
147
+ "name": "runtimeProgram"
148
+ }
149
+ ],
150
+ "args": [
151
+ {
152
+ "name": "resolvedEpoch",
153
+ "type": "u64"
154
+ }
155
+ ]
156
+ },
157
+ {
158
+ "name": "bondWireReceipt",
159
+ "discriminator": [
160
+ 56,
161
+ 121,
162
+ 67,
163
+ 27,
164
+ 75,
165
+ 101,
166
+ 114,
167
+ 5
168
+ ],
169
+ "accounts": [
170
+ {
171
+ "name": "payer",
172
+ "writable": true,
173
+ "signer": true
174
+ },
175
+ {
176
+ "name": "bondLevel",
177
+ "writable": true
178
+ },
179
+ {
180
+ "name": "actor",
181
+ "docs": [
182
+ "Actor being bonded/flagged"
183
+ ]
184
+ },
185
+ {
186
+ "name": "bondedActor",
187
+ "writable": true
188
+ },
189
+ {
190
+ "name": "bondOwner",
191
+ "docs": [
192
+ "Owner of the WireReceipt bond"
193
+ ],
194
+ "writable": true,
195
+ "signer": true
196
+ },
197
+ {
198
+ "name": "barConfig"
199
+ },
200
+ {
201
+ "name": "wireReceipt",
202
+ "docs": [
203
+ "The WireReceipt account used as the bond; must belong to the bond owner"
204
+ ],
205
+ "writable": true
206
+ },
207
+ {
208
+ "name": "systemProgram"
209
+ }
210
+ ],
211
+ "args": []
212
+ },
213
+ {
214
+ "name": "claimBond",
215
+ "discriminator": [
216
+ 173,
217
+ 34,
218
+ 157,
219
+ 61,
220
+ 45,
221
+ 120,
222
+ 246,
223
+ 11
224
+ ],
225
+ "accounts": [
226
+ {
227
+ "name": "bondOwner",
228
+ "writable": true,
229
+ "signer": true
230
+ },
231
+ {
232
+ "name": "barConfig",
233
+ "docs": [
234
+ "Reserved for future OPP assertions"
235
+ ]
236
+ },
237
+ {
238
+ "name": "bondLevel"
239
+ },
240
+ {
241
+ "name": "actor",
242
+ "docs": [
243
+ "Actor whose bond is being claimed/cleared"
244
+ ]
245
+ },
246
+ {
247
+ "name": "bondedActor",
248
+ "writable": true
249
+ },
250
+ {
251
+ "name": "wireReceipt",
252
+ "docs": [
253
+ "The WireReceipt to unlock after claiming bond"
254
+ ],
255
+ "writable": true
256
+ }
257
+ ],
258
+ "args": [
259
+ {
260
+ "name": "reclaimStorage",
261
+ "type": "bool"
262
+ }
263
+ ]
264
+ },
265
+ {
266
+ "name": "claimWithdraw",
267
+ "docs": [
268
+ "Pay user (stub) and close/burn the receipt via CPI to nft_factory."
269
+ ],
270
+ "discriminator": [
271
+ 232,
272
+ 89,
273
+ 154,
274
+ 117,
275
+ 16,
276
+ 204,
277
+ 182,
278
+ 224
279
+ ],
280
+ "accounts": [
281
+ {
282
+ "name": "user",
283
+ "writable": true,
284
+ "signer": true
285
+ },
286
+ {
287
+ "name": "global",
288
+ "docs": [
289
+ "Global operator state"
290
+ ],
291
+ "writable": true
292
+ },
293
+ {
294
+ "name": "mintAuthority"
295
+ },
296
+ {
297
+ "name": "receiptData",
298
+ "writable": true
299
+ },
300
+ {
301
+ "name": "mintAccount",
302
+ "writable": true
303
+ },
304
+ {
305
+ "name": "ownerAta",
306
+ "writable": true
307
+ },
308
+ {
309
+ "name": "tokenProgram"
310
+ },
311
+ {
312
+ "name": "systemProgram"
313
+ },
314
+ {
315
+ "name": "associatedTokenProgram"
316
+ }
317
+ ],
318
+ "args": []
319
+ },
320
+ {
321
+ "name": "deposit",
322
+ "discriminator": [
323
+ 242,
324
+ 35,
325
+ 198,
326
+ 137,
327
+ 82,
328
+ 225,
329
+ 242,
330
+ 182
331
+ ],
332
+ "accounts": [
333
+ {
334
+ "name": "user",
335
+ "writable": true,
336
+ "signer": true
337
+ },
338
+ {
339
+ "name": "depositAuthority",
340
+ "writable": true
341
+ },
342
+ {
343
+ "name": "systemProgram"
344
+ },
345
+ {
346
+ "name": "tokenProgram"
347
+ },
348
+ {
349
+ "name": "associatedTokenProgram"
350
+ },
351
+ {
352
+ "name": "liqsolProgram"
353
+ },
354
+ {
355
+ "name": "payRateHistory"
356
+ },
357
+ {
358
+ "name": "stakeProgram"
359
+ },
360
+ {
361
+ "name": "liqsolMint",
362
+ "writable": true
363
+ },
364
+ {
365
+ "name": "userAta",
366
+ "writable": true
367
+ },
368
+ {
369
+ "name": "liqsolMintAuthority"
370
+ },
371
+ {
372
+ "name": "reservePool",
373
+ "writable": true
374
+ },
375
+ {
376
+ "name": "vault"
377
+ },
378
+ {
379
+ "name": "ephemeralStake",
380
+ "writable": true
381
+ },
382
+ {
383
+ "name": "controllerState",
384
+ "writable": true
385
+ },
386
+ {
387
+ "name": "payoutState",
388
+ "writable": true
389
+ },
390
+ {
391
+ "name": "bucketAuthority"
392
+ },
393
+ {
394
+ "name": "bucketTokenAccount",
395
+ "docs": [
396
+ "The bucket's associated token account"
397
+ ],
398
+ "writable": true
399
+ },
400
+ {
401
+ "name": "userRecord",
402
+ "writable": true
403
+ },
404
+ {
405
+ "name": "distributionState",
406
+ "writable": true
407
+ },
408
+ {
409
+ "name": "instructionsSysvar"
410
+ },
411
+ {
412
+ "name": "clock"
413
+ },
414
+ {
415
+ "name": "stakeHistory"
416
+ },
417
+ {
418
+ "name": "rent"
419
+ }
420
+ ],
421
+ "args": [
422
+ {
423
+ "name": "amount",
424
+ "type": "u64"
425
+ },
426
+ {
427
+ "name": "seed",
428
+ "type": "u32"
429
+ }
430
+ ]
431
+ },
432
+ {
433
+ "name": "depositToReserve",
434
+ "docs": [
435
+ "Done///",
436
+ "/// TODO: delete after development or put in that flag thing"
437
+ ],
438
+ "discriminator": [
439
+ 8,
440
+ 79,
441
+ 123,
442
+ 129,
443
+ 146,
444
+ 140,
445
+ 178,
446
+ 128
447
+ ],
448
+ "accounts": [
449
+ {
450
+ "name": "depositor",
451
+ "writable": true,
452
+ "signer": true
453
+ },
454
+ {
455
+ "name": "reservePool",
456
+ "writable": true
457
+ },
458
+ {
459
+ "name": "vault"
460
+ },
461
+ {
462
+ "name": "ephemeralStake",
463
+ "writable": true
464
+ },
465
+ {
466
+ "name": "controllerState"
467
+ },
468
+ {
469
+ "name": "stakeProgram"
470
+ },
471
+ {
472
+ "name": "systemProgram"
473
+ },
474
+ {
475
+ "name": "clock"
476
+ },
477
+ {
478
+ "name": "stakeHistory"
479
+ },
480
+ {
481
+ "name": "rent"
482
+ }
483
+ ],
484
+ "args": [
485
+ {
486
+ "name": "amount",
487
+ "type": "u64"
488
+ },
489
+ {
490
+ "name": "seed",
491
+ "type": "u32"
492
+ }
493
+ ]
494
+ },
495
+ {
496
+ "name": "distributeFromReserve",
497
+ "docs": [
498
+ "Done///"
499
+ ],
500
+ "discriminator": [
501
+ 204,
502
+ 157,
503
+ 72,
504
+ 30,
505
+ 26,
506
+ 149,
507
+ 166,
508
+ 166
509
+ ],
510
+ "accounts": [
511
+ {
512
+ "name": "reservePool",
513
+ "writable": true
514
+ },
515
+ {
516
+ "name": "vault"
517
+ },
518
+ {
519
+ "name": "epochState",
520
+ "writable": true
521
+ },
522
+ {
523
+ "name": "processingState",
524
+ "writable": true
525
+ },
526
+ {
527
+ "name": "validatorRegistry",
528
+ "writable": true
529
+ },
530
+ {
531
+ "name": "stakeProgram"
532
+ },
533
+ {
534
+ "name": "systemProgram"
535
+ },
536
+ {
537
+ "name": "clock"
538
+ },
539
+ {
540
+ "name": "stakeHistory"
541
+ },
542
+ {
543
+ "name": "stakeConfig"
544
+ },
545
+ {
546
+ "name": "rent"
547
+ }
548
+ ],
549
+ "args": [
550
+ {
551
+ "name": "validatorsCount",
552
+ "type": "u8"
553
+ }
554
+ ]
555
+ },
556
+ {
557
+ "name": "getTransientValues",
558
+ "discriminator": [
559
+ 13,
560
+ 139,
561
+ 204,
562
+ 177,
563
+ 30,
564
+ 98,
565
+ 185,
566
+ 246
567
+ ],
568
+ "accounts": [
569
+ {
570
+ "name": "validatorRegistry"
571
+ }
572
+ ],
573
+ "args": [
574
+ {
575
+ "name": "voteAccount",
576
+ "type": "pubkey"
577
+ }
578
+ ]
579
+ },
580
+ {
581
+ "name": "initBucket",
582
+ "docs": [
583
+ "Done///"
584
+ ],
585
+ "discriminator": [
586
+ 237,
587
+ 69,
588
+ 61,
589
+ 218,
590
+ 18,
591
+ 60,
592
+ 21,
593
+ 236
594
+ ],
595
+ "accounts": [
596
+ {
597
+ "name": "admin",
598
+ "writable": true,
599
+ "signer": true
600
+ },
601
+ {
602
+ "name": "bucketAuthority"
603
+ },
604
+ {
605
+ "name": "bucketTokenAccount",
606
+ "writable": true
607
+ },
608
+ {
609
+ "name": "liqsolMint"
610
+ },
611
+ {
612
+ "name": "systemProgram"
613
+ },
614
+ {
615
+ "name": "tokenProgram"
616
+ },
617
+ {
618
+ "name": "associatedTokenProgram"
619
+ }
620
+ ],
621
+ "args": []
622
+ },
623
+ {
624
+ "name": "initialize",
625
+ "discriminator": [
626
+ 175,
627
+ 175,
628
+ 109,
629
+ 31,
630
+ 13,
631
+ 152,
632
+ 155,
633
+ 237
634
+ ],
635
+ "accounts": [
636
+ {
637
+ "name": "authority",
638
+ "writable": true,
639
+ "signer": true
640
+ },
641
+ {
642
+ "name": "liqsolMint"
643
+ },
644
+ {
645
+ "name": "distributionState",
646
+ "writable": true
647
+ },
648
+ {
649
+ "name": "tokenProgram"
650
+ },
651
+ {
652
+ "name": "systemProgram"
653
+ },
654
+ {
655
+ "name": "rent"
656
+ }
657
+ ],
658
+ "args": []
659
+ },
660
+ {
661
+ "name": "initializeBar",
662
+ "discriminator": [
663
+ 35,
664
+ 177,
665
+ 162,
666
+ 209,
667
+ 1,
668
+ 193,
669
+ 155,
670
+ 110
671
+ ],
672
+ "accounts": [
673
+ {
674
+ "name": "payer",
675
+ "writable": true,
676
+ "signer": true
677
+ },
678
+ {
679
+ "name": "barConfig",
680
+ "writable": true
681
+ },
682
+ {
683
+ "name": "systemProgram"
684
+ }
685
+ ],
686
+ "args": []
687
+ },
688
+ {
689
+ "name": "initializeEpochState",
690
+ "docs": [
691
+ "Done///"
692
+ ],
693
+ "discriminator": [
694
+ 139,
695
+ 122,
696
+ 53,
697
+ 254,
698
+ 85,
699
+ 205,
700
+ 138,
701
+ 245
702
+ ],
703
+ "accounts": [
704
+ {
705
+ "name": "admin",
706
+ "writable": true,
707
+ "signer": true
708
+ },
709
+ {
710
+ "name": "epochState",
711
+ "writable": true
712
+ },
713
+ {
714
+ "name": "systemProgram"
715
+ }
716
+ ],
717
+ "args": []
718
+ },
719
+ {
720
+ "name": "initializePayCycle",
721
+ "docs": [
722
+ "Done///"
723
+ ],
724
+ "discriminator": [
725
+ 1,
726
+ 184,
727
+ 249,
728
+ 179,
729
+ 11,
730
+ 182,
731
+ 239,
732
+ 224
733
+ ],
734
+ "accounts": [
735
+ {
736
+ "name": "admin",
737
+ "writable": true,
738
+ "signer": true
739
+ },
740
+ {
741
+ "name": "payCycle",
742
+ "writable": true
743
+ },
744
+ {
745
+ "name": "systemProgram"
746
+ }
747
+ ],
748
+ "args": []
749
+ },
750
+ {
751
+ "name": "initializePayRateHistory",
752
+ "docs": [
753
+ "Done///"
754
+ ],
755
+ "discriminator": [
756
+ 157,
757
+ 190,
758
+ 74,
759
+ 135,
760
+ 91,
761
+ 232,
762
+ 250,
763
+ 122
764
+ ],
765
+ "accounts": [
766
+ {
767
+ "name": "admin",
768
+ "writable": true,
769
+ "signer": true
770
+ },
771
+ {
772
+ "name": "payRateHistory",
773
+ "writable": true
774
+ },
775
+ {
776
+ "name": "systemProgram"
777
+ }
778
+ ],
779
+ "args": []
780
+ },
781
+ {
782
+ "name": "initializePayoutState",
783
+ "docs": [
784
+ "Done///"
785
+ ],
786
+ "discriminator": [
787
+ 105,
788
+ 120,
789
+ 7,
790
+ 121,
791
+ 238,
792
+ 221,
793
+ 62,
794
+ 160
795
+ ],
796
+ "accounts": [
797
+ {
798
+ "name": "admin",
799
+ "writable": true,
800
+ "signer": true
801
+ },
802
+ {
803
+ "name": "payoutState",
804
+ "writable": true
805
+ },
806
+ {
807
+ "name": "systemProgram"
808
+ }
809
+ ],
810
+ "args": []
811
+ },
812
+ {
813
+ "name": "initializeProcessingState",
814
+ "docs": [
815
+ "Done///"
816
+ ],
817
+ "discriminator": [
818
+ 228,
819
+ 202,
820
+ 164,
821
+ 194,
822
+ 29,
823
+ 134,
824
+ 125,
825
+ 242
826
+ ],
827
+ "accounts": [
828
+ {
829
+ "name": "admin",
830
+ "writable": true,
831
+ "signer": true
832
+ },
833
+ {
834
+ "name": "processingState",
835
+ "writable": true
836
+ },
837
+ {
838
+ "name": "systemProgram"
839
+ }
840
+ ],
841
+ "args": []
842
+ },
843
+ {
844
+ "name": "initializeReservePool",
845
+ "docs": [
846
+ "Done///"
847
+ ],
848
+ "discriminator": [
849
+ 4,
850
+ 7,
851
+ 171,
852
+ 131,
853
+ 156,
854
+ 172,
855
+ 150,
856
+ 220
857
+ ],
858
+ "accounts": [
859
+ {
860
+ "name": "reservePool",
861
+ "writable": true
862
+ },
863
+ {
864
+ "name": "vault"
865
+ },
866
+ {
867
+ "name": "payer",
868
+ "writable": true,
869
+ "signer": true
870
+ },
871
+ {
872
+ "name": "controllerState",
873
+ "writable": true
874
+ },
875
+ {
876
+ "name": "stakeProgram"
877
+ },
878
+ {
879
+ "name": "systemProgram"
880
+ },
881
+ {
882
+ "name": "rent"
883
+ }
884
+ ],
885
+ "args": []
886
+ },
887
+ {
888
+ "name": "initializeStakeControllerState",
889
+ "docs": [
890
+ "Done///"
891
+ ],
892
+ "discriminator": [
893
+ 220,
894
+ 247,
895
+ 13,
896
+ 165,
897
+ 202,
898
+ 250,
899
+ 102,
900
+ 197
901
+ ],
902
+ "accounts": [
903
+ {
904
+ "name": "controllerState",
905
+ "writable": true
906
+ },
907
+ {
908
+ "name": "payer",
909
+ "writable": true,
910
+ "signer": true
911
+ },
912
+ {
913
+ "name": "authority",
914
+ "signer": true
915
+ },
916
+ {
917
+ "name": "systemProgram"
918
+ }
919
+ ],
920
+ "args": []
921
+ },
922
+ {
923
+ "name": "initializeStakeMetrics",
924
+ "docs": [
925
+ "Done///"
926
+ ],
927
+ "discriminator": [
928
+ 203,
929
+ 209,
930
+ 129,
931
+ 123,
932
+ 12,
933
+ 17,
934
+ 20,
935
+ 175
936
+ ],
937
+ "accounts": [
938
+ {
939
+ "name": "admin",
940
+ "writable": true,
941
+ "signer": true
942
+ },
943
+ {
944
+ "name": "stakeMetrics",
945
+ "writable": true
946
+ },
947
+ {
948
+ "name": "systemProgram"
949
+ }
950
+ ],
951
+ "args": []
952
+ },
953
+ {
954
+ "name": "initializeTrancheState",
955
+ "discriminator": [
956
+ 160,
957
+ 50,
958
+ 212,
959
+ 249,
960
+ 197,
961
+ 155,
962
+ 79,
963
+ 226
964
+ ],
965
+ "accounts": [
966
+ {
967
+ "name": "authority",
968
+ "writable": true,
969
+ "signer": true
970
+ },
971
+ {
972
+ "name": "trancheState",
973
+ "writable": true
974
+ },
975
+ {
976
+ "name": "chainlinkFeed"
977
+ },
978
+ {
979
+ "name": "chainlinkProgram"
980
+ },
981
+ {
982
+ "name": "systemProgram"
983
+ }
984
+ ],
985
+ "args": []
986
+ },
987
+ {
988
+ "name": "initializeTransientsTracking",
989
+ "docs": [
990
+ "Done///"
991
+ ],
992
+ "discriminator": [
993
+ 45,
994
+ 17,
995
+ 111,
996
+ 28,
997
+ 248,
998
+ 238,
999
+ 237,
1000
+ 30
1001
+ ],
1002
+ "accounts": [
1003
+ {
1004
+ "name": "payer",
1005
+ "writable": true,
1006
+ "signer": true
1007
+ },
1008
+ {
1009
+ "name": "transientsTracking",
1010
+ "writable": true
1011
+ },
1012
+ {
1013
+ "name": "systemProgram"
1014
+ }
1015
+ ],
1016
+ "args": []
1017
+ },
1018
+ {
1019
+ "name": "initializeValidatorRegistry",
1020
+ "docs": [
1021
+ "Done///"
1022
+ ],
1023
+ "discriminator": [
1024
+ 168,
1025
+ 49,
1026
+ 128,
1027
+ 236,
1028
+ 25,
1029
+ 7,
1030
+ 168,
1031
+ 85
1032
+ ],
1033
+ "accounts": [
1034
+ {
1035
+ "name": "payer",
1036
+ "writable": true,
1037
+ "signer": true
1038
+ },
1039
+ {
1040
+ "name": "validatorRegistry",
1041
+ "writable": true
1042
+ },
1043
+ {
1044
+ "name": "systemProgram"
1045
+ }
1046
+ ],
1047
+ "args": [
1048
+ {
1049
+ "name": "authority",
1050
+ "type": "pubkey"
1051
+ }
1052
+ ]
1053
+ },
1054
+ {
1055
+ "name": "initializeVault",
1056
+ "docs": [
1057
+ "Done///"
1058
+ ],
1059
+ "discriminator": [
1060
+ 48,
1061
+ 191,
1062
+ 163,
1063
+ 44,
1064
+ 71,
1065
+ 129,
1066
+ 63,
1067
+ 164
1068
+ ],
1069
+ "accounts": [
1070
+ {
1071
+ "name": "vault",
1072
+ "writable": true
1073
+ },
1074
+ {
1075
+ "name": "payer",
1076
+ "writable": true,
1077
+ "signer": true
1078
+ },
1079
+ {
1080
+ "name": "controllerState",
1081
+ "writable": true
1082
+ },
1083
+ {
1084
+ "name": "systemProgram"
1085
+ }
1086
+ ],
1087
+ "args": []
1088
+ },
1089
+ {
1090
+ "name": "initializeWireConfig",
1091
+ "discriminator": [
1092
+ 65,
1093
+ 61,
1094
+ 193,
1095
+ 228,
1096
+ 121,
1097
+ 252,
1098
+ 165,
1099
+ 207
1100
+ ],
1101
+ "accounts": [
1102
+ {
1103
+ "name": "admin",
1104
+ "writable": true,
1105
+ "signer": true
1106
+ },
1107
+ {
1108
+ "name": "globalState",
1109
+ "writable": true
1110
+ },
1111
+ {
1112
+ "name": "systemProgram"
1113
+ }
1114
+ ],
1115
+ "args": []
1116
+ },
1117
+ {
1118
+ "name": "maintenanceMergeTransients",
1119
+ "docs": [
1120
+ "Done///"
1121
+ ],
1122
+ "discriminator": [
1123
+ 171,
1124
+ 33,
1125
+ 27,
1126
+ 133,
1127
+ 97,
1128
+ 62,
1129
+ 213,
1130
+ 96
1131
+ ],
1132
+ "accounts": [
1133
+ {
1134
+ "name": "admin",
1135
+ "signer": true
1136
+ },
1137
+ {
1138
+ "name": "vault",
1139
+ "writable": true
1140
+ },
1141
+ {
1142
+ "name": "validatorRegistry",
1143
+ "writable": true
1144
+ },
1145
+ {
1146
+ "name": "transientsTracking",
1147
+ "writable": true
1148
+ },
1149
+ {
1150
+ "name": "stakeProgram"
1151
+ },
1152
+ {
1153
+ "name": "systemProgram"
1154
+ },
1155
+ {
1156
+ "name": "clock"
1157
+ },
1158
+ {
1159
+ "name": "stakeHistory"
1160
+ },
1161
+ {
1162
+ "name": "rent"
1163
+ },
1164
+ {
1165
+ "name": "epochState",
1166
+ "writable": true
1167
+ },
1168
+ {
1169
+ "name": "processingState",
1170
+ "writable": true
1171
+ }
1172
+ ],
1173
+ "args": [
1174
+ {
1175
+ "name": "voteAccount",
1176
+ "type": "pubkey"
1177
+ },
1178
+ {
1179
+ "name": "startEpoch",
1180
+ "type": "u64"
1181
+ }
1182
+ ]
1183
+ },
1184
+ {
1185
+ "name": "moveTransientToActive",
1186
+ "discriminator": [
1187
+ 140,
1188
+ 99,
1189
+ 170,
1190
+ 186,
1191
+ 84,
1192
+ 61,
1193
+ 184,
1194
+ 75
1195
+ ],
1196
+ "accounts": [
1197
+ {
1198
+ "name": "validatorRegistry",
1199
+ "writable": true
1200
+ }
1201
+ ],
1202
+ "args": [
1203
+ {
1204
+ "name": "voteAccount",
1205
+ "type": "pubkey"
1206
+ },
1207
+ {
1208
+ "name": "amount",
1209
+ "type": "u64"
1210
+ }
1211
+ ]
1212
+ },
1213
+ {
1214
+ "name": "processPayCycle",
1215
+ "docs": [
1216
+ "Done///"
1217
+ ],
1218
+ "discriminator": [
1219
+ 98,
1220
+ 183,
1221
+ 240,
1222
+ 247,
1223
+ 39,
1224
+ 248,
1225
+ 198,
1226
+ 224
1227
+ ],
1228
+ "accounts": [
1229
+ {
1230
+ "name": "admin",
1231
+ "signer": true
1232
+ },
1233
+ {
1234
+ "name": "payCycle",
1235
+ "writable": true
1236
+ },
1237
+ {
1238
+ "name": "stakeMetrics",
1239
+ "writable": true
1240
+ },
1241
+ {
1242
+ "name": "payoutState",
1243
+ "writable": true
1244
+ },
1245
+ {
1246
+ "name": "payRateHistory",
1247
+ "writable": true
1248
+ },
1249
+ {
1250
+ "name": "distributionState"
1251
+ },
1252
+ {
1253
+ "name": "liqsolMint",
1254
+ "writable": true
1255
+ },
1256
+ {
1257
+ "name": "bucketTokenAccount",
1258
+ "writable": true
1259
+ },
1260
+ {
1261
+ "name": "stakeControllerAuthority",
1262
+ "writable": true
1263
+ },
1264
+ {
1265
+ "name": "mintAuthority"
1266
+ },
1267
+ {
1268
+ "name": "liqsolProgram"
1269
+ },
1270
+ {
1271
+ "name": "tokenProgram"
1272
+ },
1273
+ {
1274
+ "name": "instructions"
1275
+ }
1276
+ ],
1277
+ "args": []
1278
+ },
1279
+ {
1280
+ "name": "purchaseWarrantsFromYield",
1281
+ "discriminator": [
1282
+ 42,
1283
+ 126,
1284
+ 140,
1285
+ 136,
1286
+ 176,
1287
+ 155,
1288
+ 106,
1289
+ 139
1290
+ ],
1291
+ "accounts": [
1292
+ {
1293
+ "name": "user",
1294
+ "writable": true,
1295
+ "signer": true
1296
+ },
1297
+ {
1298
+ "name": "globalState",
1299
+ "writable": true
1300
+ },
1301
+ {
1302
+ "name": "liqsolMint"
1303
+ },
1304
+ {
1305
+ "name": "poolAuthority",
1306
+ "docs": [
1307
+ "Pool authority PDA"
1308
+ ]
1309
+ },
1310
+ {
1311
+ "name": "liqsolPoolAta",
1312
+ "docs": [
1313
+ "Pool's liqSOL ATA - deterministically derived from pool_authority + liqsol_mint"
1314
+ ],
1315
+ "writable": true
1316
+ },
1317
+ {
1318
+ "name": "solBucket",
1319
+ "docs": [
1320
+ "SOL bucket for raw SOL warrant purchases"
1321
+ ],
1322
+ "writable": true
1323
+ },
1324
+ {
1325
+ "name": "liqsolPoolUserRecord",
1326
+ "writable": true
1327
+ },
1328
+ {
1329
+ "name": "distributionState",
1330
+ "writable": true
1331
+ },
1332
+ {
1333
+ "name": "payRateHistory"
1334
+ },
1335
+ {
1336
+ "name": "bucketAuthority"
1337
+ },
1338
+ {
1339
+ "name": "bucketTokenAccount",
1340
+ "writable": true
1341
+ },
1342
+ {
1343
+ "name": "tokenProgram"
1344
+ },
1345
+ {
1346
+ "name": "systemProgram"
1347
+ },
1348
+ {
1349
+ "name": "trancheState",
1350
+ "writable": true
1351
+ },
1352
+ {
1353
+ "name": "userWarrantRecord",
1354
+ "writable": true
1355
+ },
1356
+ {
1357
+ "name": "chainlinkFeed"
1358
+ },
1359
+ {
1360
+ "name": "chainlinkProgram"
1361
+ }
1362
+ ],
1363
+ "args": []
1364
+ },
1365
+ {
1366
+ "name": "purchaseWithLiqsol",
1367
+ "discriminator": [
1368
+ 90,
1369
+ 74,
1370
+ 45,
1371
+ 119,
1372
+ 201,
1373
+ 62,
1374
+ 148,
1375
+ 74
1376
+ ],
1377
+ "accounts": [
1378
+ {
1379
+ "name": "user",
1380
+ "writable": true,
1381
+ "signer": true
1382
+ },
1383
+ {
1384
+ "name": "liqsolMint",
1385
+ "writable": true
1386
+ },
1387
+ {
1388
+ "name": "globalState",
1389
+ "writable": true
1390
+ },
1391
+ {
1392
+ "name": "buyerAta",
1393
+ "writable": true
1394
+ },
1395
+ {
1396
+ "name": "poolAuthority"
1397
+ },
1398
+ {
1399
+ "name": "liqsolPoolAta",
1400
+ "writable": true
1401
+ },
1402
+ {
1403
+ "name": "warrantDepositRecord",
1404
+ "docs": [
1405
+ "User's warrant deposit record"
1406
+ ],
1407
+ "writable": true
1408
+ },
1409
+ {
1410
+ "name": "liqsolPoolUserRecord",
1411
+ "docs": [
1412
+ "Pool's UserRecord in distribution system (for yield tracking)"
1413
+ ],
1414
+ "writable": true
1415
+ },
1416
+ {
1417
+ "name": "distributionState",
1418
+ "writable": true
1419
+ },
1420
+ {
1421
+ "name": "payRateHistory"
1422
+ },
1423
+ {
1424
+ "name": "bucketAuthority"
1425
+ },
1426
+ {
1427
+ "name": "bucketTokenAccount",
1428
+ "writable": true
1429
+ },
1430
+ {
1431
+ "name": "solBucket"
1432
+ },
1433
+ {
1434
+ "name": "trancheState",
1435
+ "writable": true
1436
+ },
1437
+ {
1438
+ "name": "userWarrantRecord",
1439
+ "writable": true
1440
+ },
1441
+ {
1442
+ "name": "chainlinkFeed"
1443
+ },
1444
+ {
1445
+ "name": "chainlinkProgram"
1446
+ },
1447
+ {
1448
+ "name": "tokenProgram"
1449
+ },
1450
+ {
1451
+ "name": "associatedTokenProgram"
1452
+ },
1453
+ {
1454
+ "name": "systemProgram"
1455
+ }
1456
+ ],
1457
+ "args": [
1458
+ {
1459
+ "name": "amount",
1460
+ "type": "u64"
1461
+ }
1462
+ ]
1463
+ },
1464
+ {
1465
+ "name": "purchaseWithSol",
1466
+ "discriminator": [
1467
+ 27,
1468
+ 238,
1469
+ 240,
1470
+ 155,
1471
+ 170,
1472
+ 180,
1473
+ 26,
1474
+ 118
1475
+ ],
1476
+ "accounts": [
1477
+ {
1478
+ "name": "user",
1479
+ "writable": true,
1480
+ "signer": true
1481
+ },
1482
+ {
1483
+ "name": "liqsolMint",
1484
+ "writable": true
1485
+ },
1486
+ {
1487
+ "name": "globalState",
1488
+ "writable": true
1489
+ },
1490
+ {
1491
+ "name": "poolAuthority",
1492
+ "docs": [
1493
+ "Pool authority PDA"
1494
+ ]
1495
+ },
1496
+ {
1497
+ "name": "liqsolPoolAta",
1498
+ "docs": [
1499
+ "Pool's liqSOL ATA (for baseline tracking)"
1500
+ ],
1501
+ "writable": true
1502
+ },
1503
+ {
1504
+ "name": "liqsolPoolUserRecord",
1505
+ "docs": [
1506
+ "Pool's UserRecord in distribution system (for yield tracking)"
1507
+ ],
1508
+ "writable": true
1509
+ },
1510
+ {
1511
+ "name": "distributionState",
1512
+ "writable": true
1513
+ },
1514
+ {
1515
+ "name": "payRateHistory"
1516
+ },
1517
+ {
1518
+ "name": "bucketAuthority"
1519
+ },
1520
+ {
1521
+ "name": "bucketTokenAccount",
1522
+ "writable": true
1523
+ },
1524
+ {
1525
+ "name": "solBucket",
1526
+ "docs": [
1527
+ "Native SOL bucket (System Account PDA)"
1528
+ ],
1529
+ "writable": true
1530
+ },
1531
+ {
1532
+ "name": "warrantDepositRecord",
1533
+ "docs": [
1534
+ "User's warrant deposit record"
1535
+ ],
1536
+ "writable": true
1537
+ },
1538
+ {
1539
+ "name": "trancheState",
1540
+ "writable": true
1541
+ },
1542
+ {
1543
+ "name": "userWarrantRecord",
1544
+ "writable": true
1545
+ },
1546
+ {
1547
+ "name": "chainlinkFeed"
1548
+ },
1549
+ {
1550
+ "name": "chainlinkProgram"
1551
+ },
1552
+ {
1553
+ "name": "tokenProgram"
1554
+ },
1555
+ {
1556
+ "name": "systemProgram"
1557
+ }
1558
+ ],
1559
+ "args": [
1560
+ {
1561
+ "name": "amount",
1562
+ "type": "u64"
1563
+ }
1564
+ ]
1565
+ },
1566
+ {
1567
+ "name": "recordPrice",
1568
+ "discriminator": [
1569
+ 210,
1570
+ 113,
1571
+ 46,
1572
+ 101,
1573
+ 107,
1574
+ 218,
1575
+ 83,
1576
+ 51
1577
+ ],
1578
+ "accounts": [
1579
+ {
1580
+ "name": "payer",
1581
+ "writable": true,
1582
+ "signer": true
1583
+ },
1584
+ {
1585
+ "name": "trancheState"
1586
+ },
1587
+ {
1588
+ "name": "priceHistory",
1589
+ "writable": true
1590
+ },
1591
+ {
1592
+ "name": "chainlinkProgram"
1593
+ },
1594
+ {
1595
+ "name": "chainlinkFeed"
1596
+ },
1597
+ {
1598
+ "name": "systemProgram"
1599
+ }
1600
+ ],
1601
+ "args": []
1602
+ },
1603
+ {
1604
+ "name": "requestWithdraw",
1605
+ "discriminator": [
1606
+ 137,
1607
+ 95,
1608
+ 187,
1609
+ 96,
1610
+ 250,
1611
+ 138,
1612
+ 31,
1613
+ 182
1614
+ ],
1615
+ "accounts": [
1616
+ {
1617
+ "name": "user",
1618
+ "writable": true,
1619
+ "signer": true
1620
+ },
1621
+ {
1622
+ "name": "owner",
1623
+ "docs": [
1624
+ "Recipient of the NFT receipt (can be user)"
1625
+ ],
1626
+ "writable": true
1627
+ },
1628
+ {
1629
+ "name": "global",
1630
+ "docs": [
1631
+ "Global operator state"
1632
+ ],
1633
+ "writable": true
1634
+ },
1635
+ {
1636
+ "name": "liqsolMint",
1637
+ "docs": [
1638
+ "liqSOL mint reference (must match Global.liqsol_mint so we can read decimals)"
1639
+ ]
1640
+ },
1641
+ {
1642
+ "name": "userAta",
1643
+ "writable": true
1644
+ },
1645
+ {
1646
+ "name": "userRecord",
1647
+ "writable": true
1648
+ },
1649
+ {
1650
+ "name": "mintAuthority"
1651
+ },
1652
+ {
1653
+ "name": "receiptData",
1654
+ "writable": true
1655
+ },
1656
+ {
1657
+ "name": "metadata",
1658
+ "writable": true
1659
+ },
1660
+ {
1661
+ "name": "nftMint",
1662
+ "writable": true
1663
+ },
1664
+ {
1665
+ "name": "nftAta",
1666
+ "writable": true
1667
+ },
1668
+ {
1669
+ "name": "tokenProgram"
1670
+ },
1671
+ {
1672
+ "name": "tokenInterface"
1673
+ },
1674
+ {
1675
+ "name": "associatedTokenProgram"
1676
+ },
1677
+ {
1678
+ "name": "systemProgram"
1679
+ },
1680
+ {
1681
+ "name": "rent"
1682
+ }
1683
+ ],
1684
+ "args": [
1685
+ {
1686
+ "name": "amount",
1687
+ "type": "u64"
1688
+ },
1689
+ {
1690
+ "name": "ts",
1691
+ "type": "u64"
1692
+ }
1693
+ ]
1694
+ },
1695
+ {
1696
+ "name": "resetDistributionState",
1697
+ "discriminator": [
1698
+ 159,
1699
+ 183,
1700
+ 162,
1701
+ 74,
1702
+ 228,
1703
+ 135,
1704
+ 157,
1705
+ 79
1706
+ ],
1707
+ "accounts": [
1708
+ {
1709
+ "name": "admin",
1710
+ "signer": true
1711
+ },
1712
+ {
1713
+ "name": "distributionState",
1714
+ "writable": true
1715
+ }
1716
+ ],
1717
+ "args": []
1718
+ },
1719
+ {
1720
+ "name": "resetGlobalState",
1721
+ "discriminator": [
1722
+ 252,
1723
+ 41,
1724
+ 117,
1725
+ 110,
1726
+ 248,
1727
+ 165,
1728
+ 48,
1729
+ 88
1730
+ ],
1731
+ "accounts": [
1732
+ {
1733
+ "name": "admin",
1734
+ "signer": true
1735
+ },
1736
+ {
1737
+ "name": "globalState",
1738
+ "writable": true
1739
+ }
1740
+ ],
1741
+ "args": []
1742
+ },
1743
+ {
1744
+ "name": "resetPriceHistory",
1745
+ "discriminator": [
1746
+ 213,
1747
+ 231,
1748
+ 155,
1749
+ 139,
1750
+ 248,
1751
+ 60,
1752
+ 67,
1753
+ 199
1754
+ ],
1755
+ "accounts": [
1756
+ {
1757
+ "name": "admin",
1758
+ "writable": true,
1759
+ "signer": true
1760
+ },
1761
+ {
1762
+ "name": "trancheState",
1763
+ "writable": true
1764
+ },
1765
+ {
1766
+ "name": "priceHistory",
1767
+ "writable": true
1768
+ },
1769
+ {
1770
+ "name": "systemProgram"
1771
+ }
1772
+ ],
1773
+ "args": []
1774
+ },
1775
+ {
1776
+ "name": "resetTrancheState",
1777
+ "discriminator": [
1778
+ 106,
1779
+ 102,
1780
+ 143,
1781
+ 40,
1782
+ 152,
1783
+ 173,
1784
+ 165,
1785
+ 168
1786
+ ],
1787
+ "accounts": [
1788
+ {
1789
+ "name": "admin",
1790
+ "writable": true,
1791
+ "signer": true
1792
+ },
1793
+ {
1794
+ "name": "trancheState",
1795
+ "writable": true
1796
+ },
1797
+ {
1798
+ "name": "priceHistory",
1799
+ "writable": true
1800
+ },
1801
+ {
1802
+ "name": "systemProgram"
1803
+ }
1804
+ ],
1805
+ "args": []
1806
+ },
1807
+ {
1808
+ "name": "setDDay",
1809
+ "discriminator": [
1810
+ 161,
1811
+ 160,
1812
+ 249,
1813
+ 85,
1814
+ 122,
1815
+ 254,
1816
+ 165,
1817
+ 218
1818
+ ],
1819
+ "accounts": [
1820
+ {
1821
+ "name": "admin",
1822
+ "signer": true
1823
+ },
1824
+ {
1825
+ "name": "globalState",
1826
+ "writable": true
1827
+ }
1828
+ ],
1829
+ "args": [
1830
+ {
1831
+ "name": "dDay",
1832
+ "type": "bool"
1833
+ }
1834
+ ]
1835
+ },
1836
+ {
1837
+ "name": "setMinWarmupCooldown",
1838
+ "discriminator": [
1839
+ 68,
1840
+ 204,
1841
+ 32,
1842
+ 34,
1843
+ 89,
1844
+ 181,
1845
+ 12,
1846
+ 5
1847
+ ],
1848
+ "accounts": [
1849
+ {
1850
+ "name": "authority",
1851
+ "signer": true
1852
+ },
1853
+ {
1854
+ "name": "barConfig",
1855
+ "writable": true
1856
+ }
1857
+ ],
1858
+ "args": [
1859
+ {
1860
+ "name": "minWarmupCooldown",
1861
+ "type": "u64"
1862
+ }
1863
+ ]
1864
+ },
1865
+ {
1866
+ "name": "setPaused",
1867
+ "discriminator": [
1868
+ 91,
1869
+ 60,
1870
+ 125,
1871
+ 192,
1872
+ 176,
1873
+ 225,
1874
+ 166,
1875
+ 218
1876
+ ],
1877
+ "accounts": [
1878
+ {
1879
+ "name": "admin",
1880
+ "signer": true
1881
+ },
1882
+ {
1883
+ "name": "globalState",
1884
+ "writable": true
1885
+ }
1886
+ ],
1887
+ "args": [
1888
+ {
1889
+ "name": "paused",
1890
+ "type": "bool"
1891
+ }
1892
+ ]
1893
+ },
1894
+ {
1895
+ "name": "setRefundActive",
1896
+ "discriminator": [
1897
+ 104,
1898
+ 25,
1899
+ 45,
1900
+ 139,
1901
+ 207,
1902
+ 254,
1903
+ 129,
1904
+ 237
1905
+ ],
1906
+ "accounts": [
1907
+ {
1908
+ "name": "admin",
1909
+ "signer": true
1910
+ },
1911
+ {
1912
+ "name": "globalState",
1913
+ "writable": true
1914
+ }
1915
+ ],
1916
+ "args": [
1917
+ {
1918
+ "name": "refundActive",
1919
+ "type": "bool"
1920
+ }
1921
+ ]
1922
+ },
1923
+ {
1924
+ "name": "slashBond",
1925
+ "discriminator": [
1926
+ 143,
1927
+ 246,
1928
+ 51,
1929
+ 243,
1930
+ 88,
1931
+ 198,
1932
+ 217,
1933
+ 48
1934
+ ],
1935
+ "accounts": [
1936
+ {
1937
+ "name": "authority",
1938
+ "writable": true,
1939
+ "signer": true
1940
+ },
1941
+ {
1942
+ "name": "barConfig"
1943
+ },
1944
+ {
1945
+ "name": "actor",
1946
+ "docs": [
1947
+ "Actor being slashed"
1948
+ ]
1949
+ },
1950
+ {
1951
+ "name": "bondedActor",
1952
+ "writable": true
1953
+ },
1954
+ {
1955
+ "name": "wireReceipt",
1956
+ "docs": [
1957
+ "The WireReceipt used as collateral - will be zeroed"
1958
+ ],
1959
+ "writable": true
1960
+ }
1961
+ ],
1962
+ "args": []
1963
+ },
1964
+ {
1965
+ "name": "stakeLiqsol",
1966
+ "discriminator": [
1967
+ 135,
1968
+ 102,
1969
+ 130,
1970
+ 67,
1971
+ 57,
1972
+ 29,
1973
+ 101,
1974
+ 95
1975
+ ],
1976
+ "accounts": [
1977
+ {
1978
+ "name": "user",
1979
+ "writable": true,
1980
+ "signer": true
1981
+ },
1982
+ {
1983
+ "name": "liqsolMint",
1984
+ "writable": true
1985
+ },
1986
+ {
1987
+ "name": "globalState",
1988
+ "writable": true
1989
+ },
1990
+ {
1991
+ "name": "userAta",
1992
+ "writable": true
1993
+ },
1994
+ {
1995
+ "name": "poolAuthority"
1996
+ },
1997
+ {
1998
+ "name": "liqsolPoolAta",
1999
+ "writable": true
2000
+ },
2001
+ {
2002
+ "name": "warrantDepositRecord",
2003
+ "docs": [
2004
+ "User's warrant deposit record"
2005
+ ],
2006
+ "writable": true
2007
+ },
2008
+ {
2009
+ "name": "liqsolPoolUserRecord",
2010
+ "docs": [
2011
+ "Pool's UserRecord in distribution system (for yield tracking)"
2012
+ ],
2013
+ "writable": true
2014
+ },
2015
+ {
2016
+ "name": "distributionState",
2017
+ "writable": true
2018
+ },
2019
+ {
2020
+ "name": "payRateHistory"
2021
+ },
2022
+ {
2023
+ "name": "bucketAuthority"
2024
+ },
2025
+ {
2026
+ "name": "bucketTokenAccount",
2027
+ "writable": true
2028
+ },
2029
+ {
2030
+ "name": "solBucket"
2031
+ },
2032
+ {
2033
+ "name": "tokenProgram"
2034
+ },
2035
+ {
2036
+ "name": "associatedTokenProgram"
2037
+ },
2038
+ {
2039
+ "name": "systemProgram"
2040
+ }
2041
+ ],
2042
+ "args": [
2043
+ {
2044
+ "name": "amount",
2045
+ "type": "u64"
2046
+ }
2047
+ ]
2048
+ },
2049
+ {
2050
+ "name": "syncValidatorScores",
2051
+ "discriminator": [
2052
+ 10,
2053
+ 26,
2054
+ 245,
2055
+ 222,
2056
+ 183,
2057
+ 46,
2058
+ 70,
2059
+ 181
2060
+ ],
2061
+ "accounts": [
2062
+ {
2063
+ "name": "authority",
2064
+ "signer": true
2065
+ },
2066
+ {
2067
+ "name": "validatorRegistry",
2068
+ "writable": true
2069
+ },
2070
+ {
2071
+ "name": "stakeControllerProgram"
2072
+ }
2073
+ ],
2074
+ "args": [
2075
+ {
2076
+ "name": "voteAccounts",
2077
+ "type": {
2078
+ "vec": "pubkey"
2079
+ }
2080
+ },
2081
+ {
2082
+ "name": "validatorMetrics",
2083
+ "type": {
2084
+ "vec": {
2085
+ "defined": {
2086
+ "name": "validatorMetrics"
2087
+ }
2088
+ }
2089
+ }
2090
+ }
2091
+ ]
2092
+ },
2093
+ {
2094
+ "name": "syncValidatorStakes",
2095
+ "docs": [
2096
+ "Done///"
2097
+ ],
2098
+ "discriminator": [
2099
+ 40,
2100
+ 56,
2101
+ 118,
2102
+ 52,
2103
+ 20,
2104
+ 213,
2105
+ 229,
2106
+ 135
2107
+ ],
2108
+ "accounts": [
2109
+ {
2110
+ "name": "admin",
2111
+ "signer": true
2112
+ },
2113
+ {
2114
+ "name": "mainValidatorStake"
2115
+ },
2116
+ {
2117
+ "name": "validatorRegistry",
2118
+ "writable": true
2119
+ },
2120
+ {
2121
+ "name": "stakeHistory"
2122
+ }
2123
+ ],
2124
+ "args": [
2125
+ {
2126
+ "name": "validator",
2127
+ "type": "pubkey"
2128
+ }
2129
+ ]
2130
+ },
2131
+ {
2132
+ "name": "unbond",
2133
+ "discriminator": [
2134
+ 151,
2135
+ 129,
2136
+ 36,
2137
+ 46,
2138
+ 102,
2139
+ 195,
2140
+ 111,
2141
+ 122
2142
+ ],
2143
+ "accounts": [
2144
+ {
2145
+ "name": "bondOwner",
2146
+ "signer": true
2147
+ },
2148
+ {
2149
+ "name": "barConfig",
2150
+ "docs": [
2151
+ "Reserved for future OPP assertions"
2152
+ ]
2153
+ },
2154
+ {
2155
+ "name": "bondLevel"
2156
+ },
2157
+ {
2158
+ "name": "actor",
2159
+ "docs": [
2160
+ "Actor whose bond is being released"
2161
+ ]
2162
+ },
2163
+ {
2164
+ "name": "bondedActor",
2165
+ "writable": true
2166
+ }
2167
+ ],
2168
+ "args": []
2169
+ },
2170
+ {
2171
+ "name": "updateBondLevel",
2172
+ "discriminator": [
2173
+ 48,
2174
+ 233,
2175
+ 159,
2176
+ 234,
2177
+ 230,
2178
+ 200,
2179
+ 171,
2180
+ 205
2181
+ ],
2182
+ "accounts": [
2183
+ {
2184
+ "name": "authority",
2185
+ "signer": true
2186
+ },
2187
+ {
2188
+ "name": "barConfig"
2189
+ },
2190
+ {
2191
+ "name": "bondLevel",
2192
+ "writable": true
2193
+ }
2194
+ ],
2195
+ "args": [
2196
+ {
2197
+ "name": "warmupPeriod",
2198
+ "type": "u64"
2199
+ },
2200
+ {
2201
+ "name": "cooldownPeriod",
2202
+ "type": "u64"
2203
+ },
2204
+ {
2205
+ "name": "minReceiptPrincipal",
2206
+ "type": "u64"
2207
+ },
2208
+ {
2209
+ "name": "roles",
2210
+ "type": {
2211
+ "array": [
2212
+ {
2213
+ "defined": {
2214
+ "name": "role"
2215
+ }
2216
+ },
2217
+ 4
2218
+ ]
2219
+ }
2220
+ },
2221
+ {
2222
+ "name": "enabled",
2223
+ "type": "bool"
2224
+ }
2225
+ ]
2226
+ },
2227
+ {
2228
+ "name": "updateGrowthParameters",
2229
+ "discriminator": [
2230
+ 172,
2231
+ 187,
2232
+ 237,
2233
+ 233,
2234
+ 250,
2235
+ 160,
2236
+ 115,
2237
+ 239
2238
+ ],
2239
+ "accounts": [
2240
+ {
2241
+ "name": "admin",
2242
+ "writable": true,
2243
+ "signer": true
2244
+ },
2245
+ {
2246
+ "name": "trancheState",
2247
+ "writable": true
2248
+ },
2249
+ {
2250
+ "name": "priceHistory",
2251
+ "writable": true
2252
+ },
2253
+ {
2254
+ "name": "systemProgram"
2255
+ }
2256
+ ],
2257
+ "args": [
2258
+ {
2259
+ "name": "supplyGrowthBps",
2260
+ "type": "u16"
2261
+ },
2262
+ {
2263
+ "name": "priceGrowthBps",
2264
+ "type": "u16"
2265
+ }
2266
+ ]
2267
+ },
2268
+ {
2269
+ "name": "updateMaxResolvedDeactivations",
2270
+ "discriminator": [
2271
+ 231,
2272
+ 111,
2273
+ 22,
2274
+ 0,
2275
+ 70,
2276
+ 141,
2277
+ 42,
2278
+ 204
2279
+ ],
2280
+ "accounts": [
2281
+ {
2282
+ "name": "transientsTracking",
2283
+ "writable": true
2284
+ }
2285
+ ],
2286
+ "args": [
2287
+ {
2288
+ "name": "voteAccount",
2289
+ "type": "pubkey"
2290
+ },
2291
+ {
2292
+ "name": "newValue",
2293
+ "type": "u16"
2294
+ }
2295
+ ]
2296
+ },
2297
+ {
2298
+ "name": "updateMaxResolvedStake",
2299
+ "discriminator": [
2300
+ 241,
2301
+ 21,
2302
+ 28,
2303
+ 14,
2304
+ 58,
2305
+ 11,
2306
+ 76,
2307
+ 44
2308
+ ],
2309
+ "accounts": [
2310
+ {
2311
+ "name": "transientsTracking",
2312
+ "writable": true
2313
+ }
2314
+ ],
2315
+ "args": [
2316
+ {
2317
+ "name": "voteAccount",
2318
+ "type": "pubkey"
2319
+ },
2320
+ {
2321
+ "name": "newValue",
2322
+ "type": "u16"
2323
+ }
2324
+ ]
2325
+ },
2326
+ {
2327
+ "name": "updatePriceBounds",
2328
+ "discriminator": [
2329
+ 241,
2330
+ 116,
2331
+ 141,
2332
+ 65,
2333
+ 61,
2334
+ 95,
2335
+ 232,
2336
+ 28
2337
+ ],
2338
+ "accounts": [
2339
+ {
2340
+ "name": "admin",
2341
+ "writable": true,
2342
+ "signer": true
2343
+ },
2344
+ {
2345
+ "name": "trancheState",
2346
+ "writable": true
2347
+ },
2348
+ {
2349
+ "name": "priceHistory",
2350
+ "writable": true
2351
+ },
2352
+ {
2353
+ "name": "systemProgram"
2354
+ }
2355
+ ],
2356
+ "args": [
2357
+ {
2358
+ "name": "minPriceUsd",
2359
+ "type": "i128"
2360
+ },
2361
+ {
2362
+ "name": "maxPriceUsd",
2363
+ "type": "i128"
2364
+ },
2365
+ {
2366
+ "name": "maxStalenessSeconds",
2367
+ "type": "i64"
2368
+ }
2369
+ ]
2370
+ },
2371
+ {
2372
+ "name": "updateStakeStateOnSync",
2373
+ "docs": [
2374
+ "Done///"
2375
+ ],
2376
+ "discriminator": [
2377
+ 146,
2378
+ 155,
2379
+ 114,
2380
+ 27,
2381
+ 121,
2382
+ 60,
2383
+ 159,
2384
+ 234
2385
+ ],
2386
+ "accounts": [
2387
+ {
2388
+ "name": "admin",
2389
+ "signer": true
2390
+ },
2391
+ {
2392
+ "name": "stakeMetrics",
2393
+ "writable": true
2394
+ },
2395
+ {
2396
+ "name": "epochState",
2397
+ "writable": true
2398
+ },
2399
+ {
2400
+ "name": "payoutState",
2401
+ "writable": true
2402
+ },
2403
+ {
2404
+ "name": "processingState",
2405
+ "writable": true
2406
+ },
2407
+ {
2408
+ "name": "validatorRegistry",
2409
+ "writable": true
2410
+ },
2411
+ {
2412
+ "name": "payCycle",
2413
+ "writable": true
2414
+ }
2415
+ ],
2416
+ "args": []
2417
+ },
2418
+ {
2419
+ "name": "updateTransientsTracking",
2420
+ "discriminator": [
2421
+ 146,
2422
+ 77,
2423
+ 164,
2424
+ 79,
2425
+ 174,
2426
+ 67,
2427
+ 108,
2428
+ 106
2429
+ ],
2430
+ "accounts": [
2431
+ {
2432
+ "name": "transientsTracking",
2433
+ "writable": true
2434
+ }
2435
+ ],
2436
+ "args": [
2437
+ {
2438
+ "name": "voteAccount",
2439
+ "type": "pubkey"
2440
+ },
2441
+ {
2442
+ "name": "params",
2443
+ "type": {
2444
+ "defined": {
2445
+ "name": "transientUpdateParams"
2446
+ }
2447
+ }
2448
+ }
2449
+ ]
2450
+ },
2451
+ {
2452
+ "name": "updateUser",
2453
+ "discriminator": [
2454
+ 9,
2455
+ 2,
2456
+ 160,
2457
+ 169,
2458
+ 118,
2459
+ 12,
2460
+ 207,
2461
+ 84
2462
+ ],
2463
+ "accounts": [
2464
+ {
2465
+ "name": "user",
2466
+ "writable": true
2467
+ },
2468
+ {
2469
+ "name": "userAta",
2470
+ "writable": true
2471
+ },
2472
+ {
2473
+ "name": "userRecord",
2474
+ "writable": true
2475
+ },
2476
+ {
2477
+ "name": "authority",
2478
+ "docs": [
2479
+ "Authority that can update this user record",
2480
+ "- For manual registration: user's keypair",
2481
+ "- For deposit flow: deposit program's program_authority PDA"
2482
+ ],
2483
+ "signer": true
2484
+ },
2485
+ {
2486
+ "name": "payer",
2487
+ "docs": [
2488
+ "Payer for the user record PDA creation (always the user)"
2489
+ ],
2490
+ "writable": true,
2491
+ "signer": true
2492
+ },
2493
+ {
2494
+ "name": "distributionState",
2495
+ "writable": true
2496
+ },
2497
+ {
2498
+ "name": "liqsolMint"
2499
+ },
2500
+ {
2501
+ "name": "instructionsSysvar"
2502
+ },
2503
+ {
2504
+ "name": "tokenProgram"
2505
+ },
2506
+ {
2507
+ "name": "payRateHistory"
2508
+ },
2509
+ {
2510
+ "name": "bucketAuthority"
2511
+ },
2512
+ {
2513
+ "name": "bucketTokenAccount",
2514
+ "docs": [
2515
+ "The bucket's associated token account holding liq"
2516
+ ],
2517
+ "writable": true
2518
+ },
2519
+ {
2520
+ "name": "systemProgram"
2521
+ }
2522
+ ],
2523
+ "args": []
2524
+ },
2525
+ {
2526
+ "name": "withdrawStake",
2527
+ "discriminator": [
2528
+ 153,
2529
+ 8,
2530
+ 22,
2531
+ 138,
2532
+ 105,
2533
+ 176,
2534
+ 87,
2535
+ 66
2536
+ ],
2537
+ "accounts": [
2538
+ {
2539
+ "name": "user",
2540
+ "writable": true,
2541
+ "signer": true
2542
+ },
2543
+ {
2544
+ "name": "liqsolMint",
2545
+ "writable": true
2546
+ },
2547
+ {
2548
+ "name": "globalState",
2549
+ "writable": true
2550
+ },
2551
+ {
2552
+ "name": "userAta",
2553
+ "writable": true
2554
+ },
2555
+ {
2556
+ "name": "poolAuthority"
2557
+ },
2558
+ {
2559
+ "name": "liqsolPoolAta",
2560
+ "writable": true
2561
+ },
2562
+ {
2563
+ "name": "warrantDepositRecord",
2564
+ "docs": [
2565
+ "User's warrant deposit record"
2566
+ ],
2567
+ "writable": true
2568
+ },
2569
+ {
2570
+ "name": "liqsolPoolUserRecord",
2571
+ "docs": [
2572
+ "Pool's UserRecord in distribution system (for yield tracking)"
2573
+ ],
2574
+ "writable": true
2575
+ },
2576
+ {
2577
+ "name": "distributionState",
2578
+ "writable": true
2579
+ },
2580
+ {
2581
+ "name": "payRateHistory"
2582
+ },
2583
+ {
2584
+ "name": "bucketAuthority"
2585
+ },
2586
+ {
2587
+ "name": "bucketTokenAccount",
2588
+ "docs": [
2589
+ "The bucket's associated token account holding liqSOL"
2590
+ ],
2591
+ "writable": true
2592
+ },
2593
+ {
2594
+ "name": "solBucket"
2595
+ },
2596
+ {
2597
+ "name": "tokenProgram"
2598
+ },
2599
+ {
2600
+ "name": "systemProgram"
2601
+ }
2602
+ ],
2603
+ "args": [
2604
+ {
2605
+ "name": "amount",
2606
+ "type": "u64"
2607
+ }
2608
+ ]
2609
+ }
2610
+ ],
2611
+ "accounts": [
2612
+ {
2613
+ "name": "barConfig",
2614
+ "discriminator": [
2615
+ 172,
2616
+ 166,
2617
+ 67,
2618
+ 186,
2619
+ 146,
2620
+ 5,
2621
+ 198,
2622
+ 67
2623
+ ]
2624
+ },
2625
+ {
2626
+ "name": "bondLevel",
2627
+ "discriminator": [
2628
+ 103,
2629
+ 61,
2630
+ 221,
2631
+ 129,
2632
+ 28,
2633
+ 118,
2634
+ 201,
2635
+ 85
2636
+ ]
2637
+ },
2638
+ {
2639
+ "name": "bondedActor",
2640
+ "discriminator": [
2641
+ 127,
2642
+ 148,
2643
+ 70,
2644
+ 241,
2645
+ 91,
2646
+ 0,
2647
+ 3,
2648
+ 233
2649
+ ]
2650
+ },
2651
+ {
2652
+ "name": "distributionState",
2653
+ "discriminator": [
2654
+ 7,
2655
+ 25,
2656
+ 94,
2657
+ 15,
2658
+ 208,
2659
+ 170,
2660
+ 4,
2661
+ 103
2662
+ ]
2663
+ },
2664
+ {
2665
+ "name": "epochState",
2666
+ "discriminator": [
2667
+ 191,
2668
+ 63,
2669
+ 139,
2670
+ 237,
2671
+ 144,
2672
+ 12,
2673
+ 223,
2674
+ 210
2675
+ ]
2676
+ },
2677
+ {
2678
+ "name": "global",
2679
+ "discriminator": [
2680
+ 167,
2681
+ 232,
2682
+ 232,
2683
+ 177,
2684
+ 200,
2685
+ 108,
2686
+ 114,
2687
+ 127
2688
+ ]
2689
+ },
2690
+ {
2691
+ "name": "globalState",
2692
+ "discriminator": [
2693
+ 163,
2694
+ 46,
2695
+ 74,
2696
+ 168,
2697
+ 216,
2698
+ 123,
2699
+ 133,
2700
+ 98
2701
+ ]
2702
+ },
2703
+ {
2704
+ "name": "liqReceiptData",
2705
+ "discriminator": [
2706
+ 75,
2707
+ 119,
2708
+ 90,
2709
+ 79,
2710
+ 25,
2711
+ 200,
2712
+ 9,
2713
+ 46
2714
+ ]
2715
+ },
2716
+ {
2717
+ "name": "payCycle",
2718
+ "discriminator": [
2719
+ 119,
2720
+ 127,
2721
+ 39,
2722
+ 70,
2723
+ 134,
2724
+ 173,
2725
+ 90,
2726
+ 225
2727
+ ]
2728
+ },
2729
+ {
2730
+ "name": "payRateHistory",
2731
+ "discriminator": [
2732
+ 139,
2733
+ 8,
2734
+ 65,
2735
+ 111,
2736
+ 71,
2737
+ 41,
2738
+ 187,
2739
+ 218
2740
+ ]
2741
+ },
2742
+ {
2743
+ "name": "payoutState",
2744
+ "discriminator": [
2745
+ 106,
2746
+ 54,
2747
+ 13,
2748
+ 167,
2749
+ 203,
2750
+ 44,
2751
+ 168,
2752
+ 150
2753
+ ]
2754
+ },
2755
+ {
2756
+ "name": "priceHistory",
2757
+ "discriminator": [
2758
+ 38,
2759
+ 241,
2760
+ 40,
2761
+ 19,
2762
+ 42,
2763
+ 228,
2764
+ 93,
2765
+ 152
2766
+ ]
2767
+ },
2768
+ {
2769
+ "name": "processingState",
2770
+ "discriminator": [
2771
+ 47,
2772
+ 15,
2773
+ 142,
2774
+ 130,
2775
+ 245,
2776
+ 250,
2777
+ 198,
2778
+ 161
2779
+ ]
2780
+ },
2781
+ {
2782
+ "name": "stakeControllerState",
2783
+ "discriminator": [
2784
+ 218,
2785
+ 168,
2786
+ 114,
2787
+ 136,
2788
+ 80,
2789
+ 186,
2790
+ 29,
2791
+ 218
2792
+ ]
2793
+ },
2794
+ {
2795
+ "name": "stakeMetrics",
2796
+ "discriminator": [
2797
+ 91,
2798
+ 84,
2799
+ 217,
2800
+ 97,
2801
+ 98,
2802
+ 38,
2803
+ 18,
2804
+ 143
2805
+ ]
2806
+ },
2807
+ {
2808
+ "name": "tokenMetadata",
2809
+ "discriminator": [
2810
+ 237,
2811
+ 215,
2812
+ 132,
2813
+ 182,
2814
+ 24,
2815
+ 127,
2816
+ 175,
2817
+ 173
2818
+ ]
2819
+ },
2820
+ {
2821
+ "name": "trancheState",
2822
+ "discriminator": [
2823
+ 212,
2824
+ 231,
2825
+ 254,
2826
+ 24,
2827
+ 238,
2828
+ 63,
2829
+ 92,
2830
+ 105
2831
+ ]
2832
+ },
2833
+ {
2834
+ "name": "userRecord",
2835
+ "discriminator": [
2836
+ 210,
2837
+ 252,
2838
+ 132,
2839
+ 218,
2840
+ 191,
2841
+ 85,
2842
+ 173,
2843
+ 167
2844
+ ]
2845
+ },
2846
+ {
2847
+ "name": "userWarrantRecord",
2848
+ "discriminator": [
2849
+ 241,
2850
+ 1,
2851
+ 155,
2852
+ 227,
2853
+ 164,
2854
+ 252,
2855
+ 70,
2856
+ 195
2857
+ ]
2858
+ },
2859
+ {
2860
+ "name": "userWithdrawRecord",
2861
+ "discriminator": [
2862
+ 127,
2863
+ 174,
2864
+ 233,
2865
+ 74,
2866
+ 19,
2867
+ 123,
2868
+ 21,
2869
+ 13
2870
+ ]
2871
+ },
2872
+ {
2873
+ "name": "validatorRegistry",
2874
+ "discriminator": [
2875
+ 168,
2876
+ 113,
2877
+ 195,
2878
+ 186,
2879
+ 62,
2880
+ 121,
2881
+ 163,
2882
+ 230
2883
+ ]
2884
+ },
2885
+ {
2886
+ "name": "validatorTransientsTracking",
2887
+ "discriminator": [
2888
+ 120,
2889
+ 82,
2890
+ 6,
2891
+ 162,
2892
+ 246,
2893
+ 129,
2894
+ 133,
2895
+ 63
2896
+ ]
2897
+ },
2898
+ {
2899
+ "name": "wireReceipt",
2900
+ "discriminator": [
2901
+ 166,
2902
+ 10,
2903
+ 172,
2904
+ 11,
2905
+ 51,
2906
+ 126,
2907
+ 156,
2908
+ 221
2909
+ ]
2910
+ }
2911
+ ],
2912
+ "events": [
2913
+ {
2914
+ "name": "epochResolved",
2915
+ "discriminator": [
2916
+ 62,
2917
+ 81,
2918
+ 212,
2919
+ 223,
2920
+ 209,
2921
+ 104,
2922
+ 51,
2923
+ 65
2924
+ ]
2925
+ },
2926
+ {
2927
+ "name": "stakesMerged",
2928
+ "discriminator": [
2929
+ 3,
2930
+ 16,
2931
+ 51,
2932
+ 153,
2933
+ 152,
2934
+ 186,
2935
+ 19,
2936
+ 97
2937
+ ]
2938
+ },
2939
+ {
2940
+ "name": "validatorsSyncedEvent",
2941
+ "discriminator": [
2942
+ 119,
2943
+ 121,
2944
+ 49,
2945
+ 120,
2946
+ 230,
2947
+ 132,
2948
+ 109,
2949
+ 214
2950
+ ]
2951
+ },
2952
+ {
2953
+ "name": "withdrawClaimed",
2954
+ "discriminator": [
2955
+ 77,
2956
+ 130,
2957
+ 89,
2958
+ 38,
2959
+ 239,
2960
+ 172,
2961
+ 174,
2962
+ 85
2963
+ ]
2964
+ },
2965
+ {
2966
+ "name": "withdrawRequested",
2967
+ "discriminator": [
2968
+ 114,
2969
+ 16,
2970
+ 240,
2971
+ 206,
2972
+ 93,
2973
+ 128,
2974
+ 151,
2975
+ 39
2976
+ ]
2977
+ }
2978
+ ],
2979
+ "errors": [
2980
+ {
2981
+ "code": 6000,
2982
+ "name": "destinationAccountDoesNotExist",
2983
+ "msg": "Destination stake account does not exist"
2984
+ },
2985
+ {
2986
+ "code": 6001,
2987
+ "name": "sourceAccountDoesNotExist",
2988
+ "msg": "Source stake account does not exist"
2989
+ },
2990
+ {
2991
+ "code": 6002,
2992
+ "name": "invalidDestinationOwner",
2993
+ "msg": "Destination account not owned by stake program"
2994
+ },
2995
+ {
2996
+ "code": 6003,
2997
+ "name": "invalidSourceOwner",
2998
+ "msg": "Source account not owned by stake program"
2999
+ },
3000
+ {
3001
+ "code": 6004,
3002
+ "name": "clockBorrowFailed",
3003
+ "msg": "Failed to borrow clock data"
3004
+ },
3005
+ {
3006
+ "code": 6005,
3007
+ "name": "clockDeserializeFailed",
3008
+ "msg": "Failed to deserialize clock"
3009
+ },
3010
+ {
3011
+ "code": 6006,
3012
+ "name": "destinationAnalysisFailed",
3013
+ "msg": "Failed to analyze destination stake account"
3014
+ },
3015
+ {
3016
+ "code": 6007,
3017
+ "name": "sourceAnalysisFailed",
3018
+ "msg": "Failed to analyze source stake account"
3019
+ },
3020
+ {
3021
+ "code": 6008,
3022
+ "name": "destinationStillActivating",
3023
+ "msg": "Destination stake is still activating"
3024
+ },
3025
+ {
3026
+ "code": 6009,
3027
+ "name": "destinationDeactivating",
3028
+ "msg": "Destination stake is deactivating"
3029
+ },
3030
+ {
3031
+ "code": 6010,
3032
+ "name": "sourceStillActivating",
3033
+ "msg": "Source stake is still activating"
3034
+ },
3035
+ {
3036
+ "code": 6011,
3037
+ "name": "sourceDeactivating",
3038
+ "msg": "Source stake is deactivating"
3039
+ },
3040
+ {
3041
+ "code": 6012,
3042
+ "name": "destinationBorrowFailed",
3043
+ "msg": "Failed to borrow destination account data"
3044
+ },
3045
+ {
3046
+ "code": 6013,
3047
+ "name": "destinationParseFailed",
3048
+ "msg": "Failed to parse destination stake state"
3049
+ },
3050
+ {
3051
+ "code": 6014,
3052
+ "name": "sourceBorrowFailed",
3053
+ "msg": "Failed to borrow source account data"
3054
+ },
3055
+ {
3056
+ "code": 6015,
3057
+ "name": "sourceParseFailed",
3058
+ "msg": "Failed to parse source stake state"
3059
+ },
3060
+ {
3061
+ "code": 6016,
3062
+ "name": "differentValidators",
3063
+ "msg": "Stakes are delegated to different validators"
3064
+ },
3065
+ {
3066
+ "code": 6017,
3067
+ "name": "differentStakers",
3068
+ "msg": "Stakes have different staker authorities"
3069
+ },
3070
+ {
3071
+ "code": 6018,
3072
+ "name": "differentWithdrawers",
3073
+ "msg": "Stakes have different withdrawer authorities"
3074
+ },
3075
+ {
3076
+ "code": 6019,
3077
+ "name": "authoritiesNotFound",
3078
+ "msg": "Could not extract authorities from accounts"
3079
+ },
3080
+ {
3081
+ "code": 6020,
3082
+ "name": "mergeInstructionFailed",
3083
+ "msg": "Merge instruction failed"
3084
+ },
3085
+ {
3086
+ "code": 6021,
3087
+ "name": "epochRewardsActive",
3088
+ "msg": "Epoch rewards distribution is active - stake operations blocked"
3089
+ },
3090
+ {
3091
+ "code": 6022,
3092
+ "name": "differentCreditsObserved",
3093
+ "msg": "Stakes have different credits_observed - cannot merge until both earn same rewards"
3094
+ }
3095
+ ],
3096
+ "types": [
3097
+ {
3098
+ "name": "barConfig",
3099
+ "type": {
3100
+ "kind": "struct",
3101
+ "fields": [
3102
+ {
3103
+ "name": "authority",
3104
+ "type": "pubkey"
3105
+ },
3106
+ {
3107
+ "name": "minWarmupCooldown",
3108
+ "type": "u64"
3109
+ },
3110
+ {
3111
+ "name": "bump",
3112
+ "type": "u8"
3113
+ }
3114
+ ]
3115
+ }
3116
+ },
3117
+ {
3118
+ "name": "bondLevel",
3119
+ "type": {
3120
+ "kind": "struct",
3121
+ "fields": [
3122
+ {
3123
+ "name": "id",
3124
+ "type": {
3125
+ "array": [
3126
+ "u8",
3127
+ 32
3128
+ ]
3129
+ }
3130
+ },
3131
+ {
3132
+ "name": "warmupPeriod",
3133
+ "type": "u64"
3134
+ },
3135
+ {
3136
+ "name": "cooldownPeriod",
3137
+ "type": "u64"
3138
+ },
3139
+ {
3140
+ "name": "minReceiptPrincipal",
3141
+ "docs": [
3142
+ "Minimum principal across WireReceipt buckets (staked + purchased + purchased_with_sol)"
3143
+ ],
3144
+ "type": "u64"
3145
+ },
3146
+ {
3147
+ "name": "roles",
3148
+ "docs": [
3149
+ "Roles granted when bonding at this level"
3150
+ ],
3151
+ "type": {
3152
+ "array": [
3153
+ {
3154
+ "defined": {
3155
+ "name": "role"
3156
+ }
3157
+ },
3158
+ 4
3159
+ ]
3160
+ }
3161
+ },
3162
+ {
3163
+ "name": "enabled",
3164
+ "type": "bool"
3165
+ },
3166
+ {
3167
+ "name": "bump",
3168
+ "type": "u8"
3169
+ }
3170
+ ]
3171
+ }
3172
+ },
3173
+ {
3174
+ "name": "bondedActor",
3175
+ "type": {
3176
+ "kind": "struct",
3177
+ "fields": [
3178
+ {
3179
+ "name": "actor",
3180
+ "type": "pubkey"
3181
+ },
3182
+ {
3183
+ "name": "bondOwner",
3184
+ "type": "pubkey"
3185
+ },
3186
+ {
3187
+ "name": "wireReceipt",
3188
+ "type": "pubkey"
3189
+ },
3190
+ {
3191
+ "name": "bondLevelId",
3192
+ "type": {
3193
+ "array": [
3194
+ "u8",
3195
+ 32
3196
+ ]
3197
+ }
3198
+ },
3199
+ {
3200
+ "name": "bondedAt",
3201
+ "type": "i64"
3202
+ },
3203
+ {
3204
+ "name": "unbondedAt",
3205
+ "type": "i64"
3206
+ },
3207
+ {
3208
+ "name": "bump",
3209
+ "type": "u8"
3210
+ }
3211
+ ]
3212
+ }
3213
+ },
3214
+ {
3215
+ "name": "distributionState",
3216
+ "type": {
3217
+ "kind": "struct",
3218
+ "fields": [
3219
+ {
3220
+ "name": "liqsolMint",
3221
+ "type": "pubkey"
3222
+ },
3223
+ {
3224
+ "name": "totalTrackedBalance",
3225
+ "type": "u64"
3226
+ },
3227
+ {
3228
+ "name": "availableBalance",
3229
+ "type": "u64"
3230
+ },
3231
+ {
3232
+ "name": "bump",
3233
+ "type": "u8"
3234
+ }
3235
+ ]
3236
+ }
3237
+ },
3238
+ {
3239
+ "name": "epochResolved",
3240
+ "type": {
3241
+ "kind": "struct",
3242
+ "fields": [
3243
+ {
3244
+ "name": "validator",
3245
+ "type": "pubkey"
3246
+ },
3247
+ {
3248
+ "name": "epoch",
3249
+ "type": "u64"
3250
+ },
3251
+ {
3252
+ "name": "totalStakeAmount",
3253
+ "type": "u64"
3254
+ },
3255
+ {
3256
+ "name": "maxIndex",
3257
+ "type": "u32"
3258
+ }
3259
+ ]
3260
+ }
3261
+ },
3262
+ {
3263
+ "name": "epochState",
3264
+ "type": {
3265
+ "kind": "struct",
3266
+ "fields": [
3267
+ {
3268
+ "name": "lastUpdatedGlobalEpoch",
3269
+ "type": "u64"
3270
+ },
3271
+ {
3272
+ "name": "lastDistributionEpoch",
3273
+ "type": {
3274
+ "option": "u64"
3275
+ }
3276
+ },
3277
+ {
3278
+ "name": "lastDistributionSlot",
3279
+ "type": {
3280
+ "option": "u64"
3281
+ }
3282
+ },
3283
+ {
3284
+ "name": "lastDeactivationEpoch",
3285
+ "type": "u64"
3286
+ },
3287
+ {
3288
+ "name": "lastRebalanceEpoch",
3289
+ "type": "u64"
3290
+ },
3291
+ {
3292
+ "name": "lastMergeTransientsEpoch",
3293
+ "type": "u64"
3294
+ },
3295
+ {
3296
+ "name": "currentMergeProcessingEpoch",
3297
+ "type": "u64"
3298
+ },
3299
+ {
3300
+ "name": "bump",
3301
+ "type": "u8"
3302
+ }
3303
+ ]
3304
+ }
3305
+ },
3306
+ {
3307
+ "name": "global",
3308
+ "docs": [
3309
+ "Global operator state. Epoch-based model: receipts are serviceable",
3310
+ "when `epoch <= serviceable_epoch` as reported by an external runtime."
3311
+ ],
3312
+ "type": {
3313
+ "kind": "struct",
3314
+ "fields": [
3315
+ {
3316
+ "name": "bump",
3317
+ "type": "u8"
3318
+ },
3319
+ {
3320
+ "name": "liqsolMint",
3321
+ "docs": [
3322
+ "Token-2022 liqSOL mint burned on withdraw."
3323
+ ],
3324
+ "type": "pubkey"
3325
+ },
3326
+ {
3327
+ "name": "serviceableEpoch",
3328
+ "docs": [
3329
+ "Highest epoch that is currently claimable."
3330
+ ],
3331
+ "type": "u64"
3332
+ }
3333
+ ]
3334
+ }
3335
+ },
3336
+ {
3337
+ "name": "globalState",
3338
+ "type": {
3339
+ "kind": "struct",
3340
+ "fields": [
3341
+ {
3342
+ "name": "admin",
3343
+ "type": "pubkey"
3344
+ },
3345
+ {
3346
+ "name": "dDay",
3347
+ "docs": [
3348
+ "D-Day flag - when true, staking withdrawals are disabled"
3349
+ ],
3350
+ "type": "bool"
3351
+ },
3352
+ {
3353
+ "name": "refundActive",
3354
+ "docs": [
3355
+ "Refund flag - when true, users may burn their positions for principal"
3356
+ ],
3357
+ "type": "bool"
3358
+ },
3359
+ {
3360
+ "name": "deployedAt",
3361
+ "docs": [
3362
+ "Delay before refunds automatically activate (seconds)"
3363
+ ],
3364
+ "type": "i64"
3365
+ },
3366
+ {
3367
+ "name": "refundDelaySeconds",
3368
+ "type": "i64"
3369
+ },
3370
+ {
3371
+ "name": "paused",
3372
+ "docs": [
3373
+ "Global pause flag - when true, all operations except refunds are disabled"
3374
+ ],
3375
+ "type": "bool"
3376
+ },
3377
+ {
3378
+ "name": "totalStakedLiqsol",
3379
+ "docs": [
3380
+ "Aggregate liqSOL staked through warrants (maps to distribution tracked balance)"
3381
+ ],
3382
+ "type": "u64"
3383
+ },
3384
+ {
3385
+ "name": "totalPurchasedLiqsol",
3386
+ "docs": [
3387
+ "Aggregate liqSOL warrant purchases (part of distribution tracked balance)"
3388
+ ],
3389
+ "type": "u64"
3390
+ },
3391
+ {
3392
+ "name": "totalPurchasedSol",
3393
+ "docs": [
3394
+ "Aggregate raw SOL warrant purchases (custodied in SOL bucket)"
3395
+ ],
3396
+ "type": "u64"
3397
+ },
3398
+ {
3399
+ "name": "totalShares",
3400
+ "docs": [
3401
+ "Total shares issued to all users (for share/index yield isolation)"
3402
+ ],
3403
+ "type": "u64"
3404
+ },
3405
+ {
3406
+ "name": "currentIndex",
3407
+ "docs": [
3408
+ "Current share-to-token exchange rate (scaled by INDEX_SCALE = 1e12)",
3409
+ "Starts at INDEX_SCALE (1.0) and grows as yield accrues"
3410
+ ],
3411
+ "type": "u64"
3412
+ },
3413
+ {
3414
+ "name": "lastPoolLiqsolBalance",
3415
+ "docs": [
3416
+ "Last observed liqSOL pool balance (for proportional yield calculation)"
3417
+ ],
3418
+ "type": "u64"
3419
+ },
3420
+ {
3421
+ "name": "lastPoolSolBalance",
3422
+ "docs": [
3423
+ "Last observed raw SOL pool balance (for proportional yield calculation)"
3424
+ ],
3425
+ "type": "u64"
3426
+ },
3427
+ {
3428
+ "name": "yieldAccumulatedSolEq",
3429
+ "docs": [
3430
+ "Accumulated yield (in equivalent units) available for protocol warrant purchases"
3431
+ ],
3432
+ "type": "u64"
3433
+ },
3434
+ {
3435
+ "name": "bump",
3436
+ "type": "u8"
3437
+ }
3438
+ ]
3439
+ }
3440
+ },
3441
+ {
3442
+ "name": "liqReceiptData",
3443
+ "type": {
3444
+ "kind": "struct",
3445
+ "fields": [
3446
+ {
3447
+ "name": "liqports",
3448
+ "type": "u64"
3449
+ },
3450
+ {
3451
+ "name": "epoch",
3452
+ "type": "u64"
3453
+ },
3454
+ {
3455
+ "name": "fulfilled",
3456
+ "type": "bool"
3457
+ }
3458
+ ]
3459
+ }
3460
+ },
3461
+ {
3462
+ "name": "payCycle",
3463
+ "type": {
3464
+ "kind": "struct",
3465
+ "fields": [
3466
+ {
3467
+ "name": "epoch",
3468
+ "type": "u64"
3469
+ },
3470
+ {
3471
+ "name": "totalYield",
3472
+ "type": "u64"
3473
+ },
3474
+ {
3475
+ "name": "timestamp",
3476
+ "type": "i64"
3477
+ },
3478
+ {
3479
+ "name": "fulfilled",
3480
+ "type": "bool"
3481
+ },
3482
+ {
3483
+ "name": "lastSlotPaidFor",
3484
+ "type": "u64"
3485
+ },
3486
+ {
3487
+ "name": "bump",
3488
+ "type": "u8"
3489
+ }
3490
+ ]
3491
+ }
3492
+ },
3493
+ {
3494
+ "name": "payRateEntry",
3495
+ "type": {
3496
+ "kind": "struct",
3497
+ "fields": [
3498
+ {
3499
+ "name": "timestamp",
3500
+ "type": "i64"
3501
+ },
3502
+ {
3503
+ "name": "scaledRate",
3504
+ "type": "u64"
3505
+ }
3506
+ ]
3507
+ }
3508
+ },
3509
+ {
3510
+ "name": "payRateHistory",
3511
+ "type": {
3512
+ "kind": "struct",
3513
+ "fields": [
3514
+ {
3515
+ "name": "currentIndex",
3516
+ "type": "u16"
3517
+ },
3518
+ {
3519
+ "name": "totalEntriesAdded",
3520
+ "type": "u64"
3521
+ },
3522
+ {
3523
+ "name": "entries",
3524
+ "type": {
3525
+ "vec": {
3526
+ "defined": {
3527
+ "name": "payRateEntry"
3528
+ }
3529
+ }
3530
+ }
3531
+ },
3532
+ {
3533
+ "name": "maxEntries",
3534
+ "type": "u16"
3535
+ },
3536
+ {
3537
+ "name": "bump",
3538
+ "type": "u8"
3539
+ }
3540
+ ]
3541
+ }
3542
+ },
3543
+ {
3544
+ "name": "payoutState",
3545
+ "type": {
3546
+ "kind": "struct",
3547
+ "fields": [
3548
+ {
3549
+ "name": "totalPaidOutThisEpoch",
3550
+ "type": "u64"
3551
+ },
3552
+ {
3553
+ "name": "epochPayoutDelta",
3554
+ "type": "i64"
3555
+ },
3556
+ {
3557
+ "name": "feesRemainingToDistribute",
3558
+ "type": "u64"
3559
+ },
3560
+ {
3561
+ "name": "feePayoutPerPc",
3562
+ "type": "u64"
3563
+ },
3564
+ {
3565
+ "name": "totalFeesDeposited",
3566
+ "type": "u64"
3567
+ },
3568
+ {
3569
+ "name": "totalCumulativePayout",
3570
+ "type": "u64"
3571
+ },
3572
+ {
3573
+ "name": "bump",
3574
+ "type": "u8"
3575
+ }
3576
+ ]
3577
+ }
3578
+ },
3579
+ {
3580
+ "name": "priceHistory",
3581
+ "docs": [
3582
+ "Price history for windowed moving average calculations",
3583
+ "All prices stored in 8-decimal precision"
3584
+ ],
3585
+ "type": {
3586
+ "kind": "struct",
3587
+ "fields": [
3588
+ {
3589
+ "name": "windowSize",
3590
+ "docs": [
3591
+ "Number of prices to keep in the moving average window"
3592
+ ],
3593
+ "type": "u8"
3594
+ },
3595
+ {
3596
+ "name": "prices",
3597
+ "docs": [
3598
+ "Circular buffer of recent prices (fixed size, 8-dec each)"
3599
+ ],
3600
+ "type": {
3601
+ "array": [
3602
+ "i128",
3603
+ 10
3604
+ ]
3605
+ }
3606
+ },
3607
+ {
3608
+ "name": "count",
3609
+ "docs": [
3610
+ "Number of valid entries in the prices array (0-10)"
3611
+ ],
3612
+ "type": "u8"
3613
+ },
3614
+ {
3615
+ "name": "nextIndex",
3616
+ "type": "u8"
3617
+ },
3618
+ {
3619
+ "name": "bump",
3620
+ "type": "u8"
3621
+ }
3622
+ ]
3623
+ }
3624
+ },
3625
+ {
3626
+ "name": "processingState",
3627
+ "type": {
3628
+ "kind": "struct",
3629
+ "fields": [
3630
+ {
3631
+ "name": "validatorsProcessedThisEpoch",
3632
+ "type": "u8"
3633
+ },
3634
+ {
3635
+ "name": "validatorsMergeProcessedThisEpoch",
3636
+ "type": "u8"
3637
+ },
3638
+ {
3639
+ "name": "distributionInProgress",
3640
+ "type": "bool"
3641
+ },
3642
+ {
3643
+ "name": "bump",
3644
+ "type": "u8"
3645
+ }
3646
+ ]
3647
+ }
3648
+ },
3649
+ {
3650
+ "name": "role",
3651
+ "docs": [
3652
+ "Role granted by a bond level"
3653
+ ],
3654
+ "type": {
3655
+ "kind": "struct",
3656
+ "fields": [
3657
+ {
3658
+ "name": "roleId",
3659
+ "type": "u64"
3660
+ },
3661
+ {
3662
+ "name": "executionDelay",
3663
+ "docs": [
3664
+ "Delay in seconds before role becomes active (for time-locked operations)"
3665
+ ],
3666
+ "type": "u32"
3667
+ }
3668
+ ]
3669
+ }
3670
+ },
3671
+ {
3672
+ "name": "stakeControllerState",
3673
+ "type": {
3674
+ "kind": "struct",
3675
+ "fields": [
3676
+ {
3677
+ "name": "authority",
3678
+ "type": "pubkey"
3679
+ },
3680
+ {
3681
+ "name": "vaultInitialized",
3682
+ "type": "bool"
3683
+ },
3684
+ {
3685
+ "name": "reservePoolInitialized",
3686
+ "type": "bool"
3687
+ },
3688
+ {
3689
+ "name": "bump",
3690
+ "type": "u8"
3691
+ }
3692
+ ]
3693
+ }
3694
+ },
3695
+ {
3696
+ "name": "stakeMetrics",
3697
+ "type": {
3698
+ "kind": "struct",
3699
+ "fields": [
3700
+ {
3701
+ "name": "currentActiveStake",
3702
+ "type": "u64"
3703
+ },
3704
+ {
3705
+ "name": "transientActiveStake",
3706
+ "type": "u64"
3707
+ },
3708
+ {
3709
+ "name": "actualSystemYieldReceived",
3710
+ "type": "u64"
3711
+ },
3712
+ {
3713
+ "name": "solSystemPayRate",
3714
+ "type": "u64"
3715
+ },
3716
+ {
3717
+ "name": "bump",
3718
+ "type": "u8"
3719
+ }
3720
+ ]
3721
+ }
3722
+ },
3723
+ {
3724
+ "name": "stakesMerged",
3725
+ "type": {
3726
+ "kind": "struct",
3727
+ "fields": [
3728
+ {
3729
+ "name": "validator",
3730
+ "type": "pubkey"
3731
+ },
3732
+ {
3733
+ "name": "epoch",
3734
+ "type": "u64"
3735
+ },
3736
+ {
3737
+ "name": "count",
3738
+ "type": "u32"
3739
+ },
3740
+ {
3741
+ "name": "amount",
3742
+ "type": "u64"
3743
+ }
3744
+ ]
3745
+ }
3746
+ },
3747
+ {
3748
+ "name": "tokenMetadata",
3749
+ "type": {
3750
+ "kind": "struct",
3751
+ "fields": [
3752
+ {
3753
+ "name": "name",
3754
+ "type": "string"
3755
+ },
3756
+ {
3757
+ "name": "symbol",
3758
+ "type": "string"
3759
+ },
3760
+ {
3761
+ "name": "uri",
3762
+ "type": "string"
3763
+ }
3764
+ ]
3765
+ }
3766
+ },
3767
+ {
3768
+ "name": "trancheState",
3769
+ "docs": [
3770
+ "All i128 values use 8-decimal precision (SCALE = 1e8 = 100,000,000)",
3771
+ "This matches Chainlink SOL/USD's native format, avoiding conversion overhead",
3772
+ "Example: $193.32 is stored as 19332000000"
3773
+ ],
3774
+ "type": {
3775
+ "kind": "struct",
3776
+ "fields": [
3777
+ {
3778
+ "name": "admin",
3779
+ "docs": [
3780
+ "Admin authority (can update growth parameters and price bounds)"
3781
+ ],
3782
+ "type": "pubkey"
3783
+ },
3784
+ {
3785
+ "name": "currentTrancheNumber",
3786
+ "type": "u64"
3787
+ },
3788
+ {
3789
+ "name": "currentTrancheSupply",
3790
+ "type": "i128"
3791
+ },
3792
+ {
3793
+ "name": "currentTranchePriceUsd",
3794
+ "type": "i128"
3795
+ },
3796
+ {
3797
+ "name": "totalWarrantsSold",
3798
+ "type": "i128"
3799
+ },
3800
+ {
3801
+ "name": "initialTrancheSupply",
3802
+ "type": "i128"
3803
+ },
3804
+ {
3805
+ "name": "supplyGrowthBps",
3806
+ "docs": [
3807
+ "Supply growth in basis points (e.g., 100 = 1%, max 10000)"
3808
+ ],
3809
+ "type": "u16"
3810
+ },
3811
+ {
3812
+ "name": "priceGrowthBps",
3813
+ "docs": [
3814
+ "Price growth in basis points (e.g., 200 = 2%, max 10000)"
3815
+ ],
3816
+ "type": "u16"
3817
+ },
3818
+ {
3819
+ "name": "minPriceUsd",
3820
+ "docs": [
3821
+ "Minimum valid SOL/USD price for validation (8-dec)"
3822
+ ],
3823
+ "type": "i128"
3824
+ },
3825
+ {
3826
+ "name": "maxPriceUsd",
3827
+ "docs": [
3828
+ "Maximum valid SOL/USD price for validation (8-dec)"
3829
+ ],
3830
+ "type": "i128"
3831
+ },
3832
+ {
3833
+ "name": "maxStalenessSeconds",
3834
+ "docs": [
3835
+ "Maximum staleness in seconds for Chainlink data"
3836
+ ],
3837
+ "type": "i64"
3838
+ },
3839
+ {
3840
+ "name": "chainlinkProgram",
3841
+ "docs": [
3842
+ "Chainlink program address"
3843
+ ],
3844
+ "type": "pubkey"
3845
+ },
3846
+ {
3847
+ "name": "chainlinkFeed",
3848
+ "docs": [
3849
+ "Chainlink price feed PDA"
3850
+ ],
3851
+ "type": "pubkey"
3852
+ },
3853
+ {
3854
+ "name": "bump",
3855
+ "type": "u8"
3856
+ }
3857
+ ]
3858
+ }
3859
+ },
3860
+ {
3861
+ "name": "transientStakeEntry",
3862
+ "type": {
3863
+ "kind": "struct",
3864
+ "fields": [
3865
+ {
3866
+ "name": "voteAccount",
3867
+ "type": "pubkey"
3868
+ },
3869
+ {
3870
+ "name": "maxResolvedEpochDeactivations",
3871
+ "type": "u16"
3872
+ },
3873
+ {
3874
+ "name": "maxResolvedActivatingStake",
3875
+ "type": "u16"
3876
+ },
3877
+ {
3878
+ "name": "lastUpdatedEpochActivations",
3879
+ "type": "u16"
3880
+ },
3881
+ {
3882
+ "name": "lastUpdatedEpochDeactivationsRebalancing",
3883
+ "type": "u16"
3884
+ },
3885
+ {
3886
+ "name": "lastUpdatedEpochDeactivationsWithdrawals",
3887
+ "type": "u16"
3888
+ },
3889
+ {
3890
+ "name": "totalDeactivationAmountForEpoch",
3891
+ "type": "u64"
3892
+ }
3893
+ ]
3894
+ }
3895
+ },
3896
+ {
3897
+ "name": "transientUpdateParams",
3898
+ "type": {
3899
+ "kind": "struct",
3900
+ "fields": [
3901
+ {
3902
+ "name": "maxResolvedEpochDeactivations",
3903
+ "type": {
3904
+ "option": "u16"
3905
+ }
3906
+ },
3907
+ {
3908
+ "name": "maxResolvedActivatingStake",
3909
+ "type": {
3910
+ "option": "u16"
3911
+ }
3912
+ },
3913
+ {
3914
+ "name": "lastUpdatedEpochActivations",
3915
+ "type": {
3916
+ "option": "u16"
3917
+ }
3918
+ },
3919
+ {
3920
+ "name": "lastUpdatedEpochDeactivations",
3921
+ "type": {
3922
+ "option": "u16"
3923
+ }
3924
+ }
3925
+ ]
3926
+ }
3927
+ },
3928
+ {
3929
+ "name": "userRecord",
3930
+ "type": {
3931
+ "kind": "struct",
3932
+ "fields": [
3933
+ {
3934
+ "name": "userAta",
3935
+ "type": "pubkey"
3936
+ },
3937
+ {
3938
+ "name": "trackedBalance",
3939
+ "type": "u64"
3940
+ },
3941
+ {
3942
+ "name": "claimBalance",
3943
+ "type": "u64"
3944
+ },
3945
+ {
3946
+ "name": "lastClaimTimestamp",
3947
+ "type": "i64"
3948
+ },
3949
+ {
3950
+ "name": "bump",
3951
+ "type": "u8"
3952
+ }
3953
+ ]
3954
+ }
3955
+ },
3956
+ {
3957
+ "name": "userWarrantRecord",
3958
+ "type": {
3959
+ "kind": "struct",
3960
+ "fields": [
3961
+ {
3962
+ "name": "user",
3963
+ "type": "pubkey"
3964
+ },
3965
+ {
3966
+ "name": "totalSolDeposited",
3967
+ "type": "u64"
3968
+ },
3969
+ {
3970
+ "name": "totalWarrantsPurchased",
3971
+ "type": "i128"
3972
+ },
3973
+ {
3974
+ "name": "lastTrancheNumber",
3975
+ "type": "u64"
3976
+ },
3977
+ {
3978
+ "name": "lastTranchePriceUsd",
3979
+ "type": "i128"
3980
+ },
3981
+ {
3982
+ "name": "bump",
3983
+ "type": "u8"
3984
+ }
3985
+ ]
3986
+ }
3987
+ },
3988
+ {
3989
+ "name": "userWithdrawRecord",
3990
+ "type": {
3991
+ "kind": "struct",
3992
+ "fields": [
3993
+ {
3994
+ "name": "bump",
3995
+ "type": "u8"
3996
+ },
3997
+ {
3998
+ "name": "trackedBalance",
3999
+ "type": "u64"
4000
+ }
4001
+ ]
4002
+ }
4003
+ },
4004
+ {
4005
+ "name": "validatorInfo",
4006
+ "type": {
4007
+ "kind": "struct",
4008
+ "fields": [
4009
+ {
4010
+ "name": "voteAccount",
4011
+ "type": "pubkey"
4012
+ },
4013
+ {
4014
+ "name": "vpp",
4015
+ "type": "u8"
4016
+ },
4017
+ {
4018
+ "name": "currentActiveStake",
4019
+ "type": "u64"
4020
+ },
4021
+ {
4022
+ "name": "epochReward",
4023
+ "type": "u64"
4024
+ },
4025
+ {
4026
+ "name": "transientActiveStake",
4027
+ "type": "u64"
4028
+ },
4029
+ {
4030
+ "name": "lastChainSyncEpoch",
4031
+ "type": "u16"
4032
+ }
4033
+ ]
4034
+ }
4035
+ },
4036
+ {
4037
+ "name": "validatorMetrics",
4038
+ "type": {
4039
+ "kind": "struct",
4040
+ "fields": [
4041
+ {
4042
+ "name": "commission",
4043
+ "type": "u8"
4044
+ },
4045
+ {
4046
+ "name": "skipRateBps",
4047
+ "type": "u32"
4048
+ },
4049
+ {
4050
+ "name": "isDelinquent",
4051
+ "type": "bool"
4052
+ },
4053
+ {
4054
+ "name": "activatedStake",
4055
+ "type": "u64"
4056
+ }
4057
+ ]
4058
+ }
4059
+ },
4060
+ {
4061
+ "name": "validatorRegistry",
4062
+ "type": {
4063
+ "kind": "struct",
4064
+ "fields": [
4065
+ {
4066
+ "name": "authority",
4067
+ "type": "pubkey"
4068
+ },
4069
+ {
4070
+ "name": "validators",
4071
+ "type": {
4072
+ "vec": {
4073
+ "defined": {
4074
+ "name": "validatorInfo"
4075
+ }
4076
+ }
4077
+ }
4078
+ },
4079
+ {
4080
+ "name": "lastUpdateEpoch",
4081
+ "type": "u64"
4082
+ },
4083
+ {
4084
+ "name": "bump",
4085
+ "type": "u8"
4086
+ }
4087
+ ]
4088
+ }
4089
+ },
4090
+ {
4091
+ "name": "validatorTransientsTracking",
4092
+ "type": {
4093
+ "kind": "struct",
4094
+ "fields": [
4095
+ {
4096
+ "name": "entries",
4097
+ "type": {
4098
+ "vec": {
4099
+ "defined": {
4100
+ "name": "transientStakeEntry"
4101
+ }
4102
+ }
4103
+ }
4104
+ },
4105
+ {
4106
+ "name": "count",
4107
+ "type": "u16"
4108
+ },
4109
+ {
4110
+ "name": "bump",
4111
+ "type": "u8"
4112
+ }
4113
+ ]
4114
+ }
4115
+ },
4116
+ {
4117
+ "name": "validatorsSyncedEvent",
4118
+ "type": {
4119
+ "kind": "struct",
4120
+ "fields": [
4121
+ {
4122
+ "name": "updatedCount",
4123
+ "type": "u32"
4124
+ },
4125
+ {
4126
+ "name": "notFoundCount",
4127
+ "type": "u32"
4128
+ },
4129
+ {
4130
+ "name": "epoch",
4131
+ "type": "u64"
4132
+ }
4133
+ ]
4134
+ }
4135
+ },
4136
+ {
4137
+ "name": "wireReceipt",
4138
+ "type": {
4139
+ "kind": "struct",
4140
+ "fields": [
4141
+ {
4142
+ "name": "user",
4143
+ "type": "pubkey"
4144
+ },
4145
+ {
4146
+ "name": "stakedLiqsol",
4147
+ "docs": [
4148
+ "STAKE deposits (withdrawable pre-D-Day)",
4149
+ "Principal amount staked (for display/tracking)"
4150
+ ],
4151
+ "type": "u64"
4152
+ },
4153
+ {
4154
+ "name": "stakedShares",
4155
+ "docs": [
4156
+ "Shares from staking (actual accounting for yield isolation)"
4157
+ ],
4158
+ "type": "u64"
4159
+ },
4160
+ {
4161
+ "name": "purchasedLiqsol",
4162
+ "docs": [
4163
+ "WARRANT_PURCHASE deposits with liqSOL (permanent)",
4164
+ "Principal amount spent on warrants (for display/tracking)"
4165
+ ],
4166
+ "type": "u64"
4167
+ },
4168
+ {
4169
+ "name": "purchasedShares",
4170
+ "docs": [
4171
+ "Shares from liqSOL warrant purchases (actual accounting for yield isolation)"
4172
+ ],
4173
+ "type": "u64"
4174
+ },
4175
+ {
4176
+ "name": "purchasedWithSol",
4177
+ "docs": [
4178
+ "WARRANT_PURCHASE deposits with raw SOL (permanent, separate settlement)",
4179
+ "Principal amount in lamports spent on warrants"
4180
+ ],
4181
+ "type": "u64"
4182
+ },
4183
+ {
4184
+ "name": "purchasedSolShares",
4185
+ "docs": [
4186
+ "Shares from SOL warrant purchases (actual accounting for yield isolation)"
4187
+ ],
4188
+ "type": "u64"
4189
+ },
4190
+ {
4191
+ "name": "locked",
4192
+ "docs": [
4193
+ "True when WireReceipt is locked by an active bond (prevents withdrawals)"
4194
+ ],
4195
+ "type": "bool"
4196
+ },
4197
+ {
4198
+ "name": "bump",
4199
+ "type": "u8"
4200
+ }
4201
+ ]
4202
+ }
4203
+ },
4204
+ {
4205
+ "name": "withdrawClaimed",
4206
+ "type": {
4207
+ "kind": "struct",
4208
+ "fields": [
4209
+ {
4210
+ "name": "epoch",
4211
+ "type": "u64"
4212
+ },
4213
+ {
4214
+ "name": "amount",
4215
+ "type": "u64"
4216
+ },
4217
+ {
4218
+ "name": "user",
4219
+ "type": "pubkey"
4220
+ }
4221
+ ]
4222
+ }
4223
+ },
4224
+ {
4225
+ "name": "withdrawRequested",
4226
+ "type": {
4227
+ "kind": "struct",
4228
+ "fields": [
4229
+ {
4230
+ "name": "epoch",
4231
+ "type": "u64"
4232
+ },
4233
+ {
4234
+ "name": "amount",
4235
+ "type": "u64"
4236
+ },
4237
+ {
4238
+ "name": "user",
4239
+ "type": "pubkey"
4240
+ }
4241
+ ]
4242
+ }
4243
+ }
4244
+ ]
4245
+ };