@drift-labs/sdk 2.86.0-beta.9 → 2.87.0-beta.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.
- package/VERSION +1 -1
- package/lib/addresses/pda.d.ts +1 -0
- package/lib/addresses/pda.js +8 -1
- package/lib/adminClient.d.ts +8 -4
- package/lib/adminClient.js +51 -8
- package/lib/bankrun/bankrunConnection.d.ts +1 -0
- package/lib/bankrun/bankrunConnection.js +6 -0
- package/lib/constants/numericConstants.d.ts +2 -0
- package/lib/constants/numericConstants.js +3 -1
- package/lib/constants/perpMarkets.js +135 -122
- package/lib/constants/spotMarkets.js +50 -38
- package/lib/driftClient.d.ts +12 -14
- package/lib/driftClient.js +147 -9
- package/lib/idl/drift.json +344 -10
- package/lib/idl/pyth_solana_receiver.json +628 -0
- package/lib/math/fuel.d.ts +1 -0
- package/lib/math/fuel.js +12 -2
- package/lib/types.d.ts +25 -6
- package/lib/types.js +3 -2
- package/lib/user.d.ts +6 -5
- package/lib/user.js +36 -18
- package/package.json +1 -1
- package/src/addresses/pda.ts +15 -0
- package/src/adminClient.ts +119 -7
- package/src/bankrun/bankrunConnection.ts +13 -0
- package/src/constants/numericConstants.ts +2 -0
- package/src/constants/perpMarkets.ts +138 -122
- package/src/constants/spotMarkets.ts +52 -38
- package/src/driftClient.ts +203 -16
- package/src/idl/drift.json +344 -10
- package/src/idl/openbook.json +3854 -0
- package/src/idl/pyth_solana_receiver.json +628 -0
- package/src/math/fuel.ts +15 -1
- package/src/types.ts +28 -7
- package/src/user.ts +119 -55
- package/tests/ci/verifyConstants.ts +214 -0
- package/tests/dlob/helpers.ts +30 -0
- package/tests/user/helpers.ts +1 -0
- package/tests/user/test.ts +2 -0
package/lib/idl/drift.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "2.
|
|
2
|
+
"version": "2.86.0",
|
|
3
3
|
"name": "drift",
|
|
4
4
|
"instructions": [
|
|
5
5
|
{
|
|
@@ -2663,6 +2663,32 @@
|
|
|
2663
2663
|
}
|
|
2664
2664
|
]
|
|
2665
2665
|
},
|
|
2666
|
+
{
|
|
2667
|
+
"name": "postMultiPythPullOracleUpdatesAtomic",
|
|
2668
|
+
"accounts": [
|
|
2669
|
+
{
|
|
2670
|
+
"name": "keeper",
|
|
2671
|
+
"isMut": true,
|
|
2672
|
+
"isSigner": true
|
|
2673
|
+
},
|
|
2674
|
+
{
|
|
2675
|
+
"name": "pythSolanaReceiver",
|
|
2676
|
+
"isMut": false,
|
|
2677
|
+
"isSigner": false
|
|
2678
|
+
},
|
|
2679
|
+
{
|
|
2680
|
+
"name": "guardianSet",
|
|
2681
|
+
"isMut": false,
|
|
2682
|
+
"isSigner": false
|
|
2683
|
+
}
|
|
2684
|
+
],
|
|
2685
|
+
"args": [
|
|
2686
|
+
{
|
|
2687
|
+
"name": "params",
|
|
2688
|
+
"type": "bytes"
|
|
2689
|
+
}
|
|
2690
|
+
]
|
|
2691
|
+
},
|
|
2666
2692
|
{
|
|
2667
2693
|
"name": "initialize",
|
|
2668
2694
|
"accounts": [
|
|
@@ -2991,6 +3017,95 @@
|
|
|
2991
3017
|
}
|
|
2992
3018
|
]
|
|
2993
3019
|
},
|
|
3020
|
+
{
|
|
3021
|
+
"name": "initializeOpenbookV2FulfillmentConfig",
|
|
3022
|
+
"accounts": [
|
|
3023
|
+
{
|
|
3024
|
+
"name": "baseSpotMarket",
|
|
3025
|
+
"isMut": false,
|
|
3026
|
+
"isSigner": false
|
|
3027
|
+
},
|
|
3028
|
+
{
|
|
3029
|
+
"name": "quoteSpotMarket",
|
|
3030
|
+
"isMut": false,
|
|
3031
|
+
"isSigner": false
|
|
3032
|
+
},
|
|
3033
|
+
{
|
|
3034
|
+
"name": "state",
|
|
3035
|
+
"isMut": true,
|
|
3036
|
+
"isSigner": false
|
|
3037
|
+
},
|
|
3038
|
+
{
|
|
3039
|
+
"name": "openbookV2Program",
|
|
3040
|
+
"isMut": false,
|
|
3041
|
+
"isSigner": false
|
|
3042
|
+
},
|
|
3043
|
+
{
|
|
3044
|
+
"name": "openbookV2Market",
|
|
3045
|
+
"isMut": false,
|
|
3046
|
+
"isSigner": false
|
|
3047
|
+
},
|
|
3048
|
+
{
|
|
3049
|
+
"name": "driftSigner",
|
|
3050
|
+
"isMut": false,
|
|
3051
|
+
"isSigner": false
|
|
3052
|
+
},
|
|
3053
|
+
{
|
|
3054
|
+
"name": "openbookV2FulfillmentConfig",
|
|
3055
|
+
"isMut": true,
|
|
3056
|
+
"isSigner": false
|
|
3057
|
+
},
|
|
3058
|
+
{
|
|
3059
|
+
"name": "admin",
|
|
3060
|
+
"isMut": true,
|
|
3061
|
+
"isSigner": true
|
|
3062
|
+
},
|
|
3063
|
+
{
|
|
3064
|
+
"name": "rent",
|
|
3065
|
+
"isMut": false,
|
|
3066
|
+
"isSigner": false
|
|
3067
|
+
},
|
|
3068
|
+
{
|
|
3069
|
+
"name": "systemProgram",
|
|
3070
|
+
"isMut": false,
|
|
3071
|
+
"isSigner": false
|
|
3072
|
+
}
|
|
3073
|
+
],
|
|
3074
|
+
"args": [
|
|
3075
|
+
{
|
|
3076
|
+
"name": "marketIndex",
|
|
3077
|
+
"type": "u16"
|
|
3078
|
+
}
|
|
3079
|
+
]
|
|
3080
|
+
},
|
|
3081
|
+
{
|
|
3082
|
+
"name": "openbookV2FulfillmentConfigStatus",
|
|
3083
|
+
"accounts": [
|
|
3084
|
+
{
|
|
3085
|
+
"name": "state",
|
|
3086
|
+
"isMut": false,
|
|
3087
|
+
"isSigner": false
|
|
3088
|
+
},
|
|
3089
|
+
{
|
|
3090
|
+
"name": "openbookV2FulfillmentConfig",
|
|
3091
|
+
"isMut": true,
|
|
3092
|
+
"isSigner": false
|
|
3093
|
+
},
|
|
3094
|
+
{
|
|
3095
|
+
"name": "admin",
|
|
3096
|
+
"isMut": true,
|
|
3097
|
+
"isSigner": true
|
|
3098
|
+
}
|
|
3099
|
+
],
|
|
3100
|
+
"args": [
|
|
3101
|
+
{
|
|
3102
|
+
"name": "status",
|
|
3103
|
+
"type": {
|
|
3104
|
+
"defined": "SpotFulfillmentConfigStatus"
|
|
3105
|
+
}
|
|
3106
|
+
}
|
|
3107
|
+
]
|
|
3108
|
+
},
|
|
2994
3109
|
{
|
|
2995
3110
|
"name": "initializePhoenixFulfillmentConfig",
|
|
2996
3111
|
"accounts": [
|
|
@@ -4085,6 +4200,32 @@
|
|
|
4085
4200
|
}
|
|
4086
4201
|
]
|
|
4087
4202
|
},
|
|
4203
|
+
{
|
|
4204
|
+
"name": "updateSpotMarketMaxTokenBorrows",
|
|
4205
|
+
"accounts": [
|
|
4206
|
+
{
|
|
4207
|
+
"name": "admin",
|
|
4208
|
+
"isMut": false,
|
|
4209
|
+
"isSigner": true
|
|
4210
|
+
},
|
|
4211
|
+
{
|
|
4212
|
+
"name": "state",
|
|
4213
|
+
"isMut": false,
|
|
4214
|
+
"isSigner": false
|
|
4215
|
+
},
|
|
4216
|
+
{
|
|
4217
|
+
"name": "spotMarket",
|
|
4218
|
+
"isMut": true,
|
|
4219
|
+
"isSigner": false
|
|
4220
|
+
}
|
|
4221
|
+
],
|
|
4222
|
+
"args": [
|
|
4223
|
+
{
|
|
4224
|
+
"name": "maxTokenBorrowsFraction",
|
|
4225
|
+
"type": "u16"
|
|
4226
|
+
}
|
|
4227
|
+
]
|
|
4228
|
+
},
|
|
4088
4229
|
{
|
|
4089
4230
|
"name": "updateSpotMarketScaleInitialAssetWeightStart",
|
|
4090
4231
|
"accounts": [
|
|
@@ -5198,6 +5339,69 @@
|
|
|
5198
5339
|
"type": {
|
|
5199
5340
|
"option": "u8"
|
|
5200
5341
|
}
|
|
5342
|
+
},
|
|
5343
|
+
{
|
|
5344
|
+
"name": "fuelBoostInsurance",
|
|
5345
|
+
"type": {
|
|
5346
|
+
"option": "u8"
|
|
5347
|
+
}
|
|
5348
|
+
}
|
|
5349
|
+
]
|
|
5350
|
+
},
|
|
5351
|
+
{
|
|
5352
|
+
"name": "initUserFuel",
|
|
5353
|
+
"accounts": [
|
|
5354
|
+
{
|
|
5355
|
+
"name": "admin",
|
|
5356
|
+
"isMut": false,
|
|
5357
|
+
"isSigner": true
|
|
5358
|
+
},
|
|
5359
|
+
{
|
|
5360
|
+
"name": "state",
|
|
5361
|
+
"isMut": false,
|
|
5362
|
+
"isSigner": false
|
|
5363
|
+
},
|
|
5364
|
+
{
|
|
5365
|
+
"name": "user",
|
|
5366
|
+
"isMut": true,
|
|
5367
|
+
"isSigner": false
|
|
5368
|
+
},
|
|
5369
|
+
{
|
|
5370
|
+
"name": "userStats",
|
|
5371
|
+
"isMut": true,
|
|
5372
|
+
"isSigner": false
|
|
5373
|
+
}
|
|
5374
|
+
],
|
|
5375
|
+
"args": [
|
|
5376
|
+
{
|
|
5377
|
+
"name": "fuelBoostDeposits",
|
|
5378
|
+
"type": {
|
|
5379
|
+
"option": "u32"
|
|
5380
|
+
}
|
|
5381
|
+
},
|
|
5382
|
+
{
|
|
5383
|
+
"name": "fuelBoostBorrows",
|
|
5384
|
+
"type": {
|
|
5385
|
+
"option": "u32"
|
|
5386
|
+
}
|
|
5387
|
+
},
|
|
5388
|
+
{
|
|
5389
|
+
"name": "fuelBoostTaker",
|
|
5390
|
+
"type": {
|
|
5391
|
+
"option": "u32"
|
|
5392
|
+
}
|
|
5393
|
+
},
|
|
5394
|
+
{
|
|
5395
|
+
"name": "fuelBoostMaker",
|
|
5396
|
+
"type": {
|
|
5397
|
+
"option": "u32"
|
|
5398
|
+
}
|
|
5399
|
+
},
|
|
5400
|
+
{
|
|
5401
|
+
"name": "fuelBoostInsurance",
|
|
5402
|
+
"type": {
|
|
5403
|
+
"option": "u32"
|
|
5404
|
+
}
|
|
5201
5405
|
}
|
|
5202
5406
|
]
|
|
5203
5407
|
},
|
|
@@ -5542,6 +5746,75 @@
|
|
|
5542
5746
|
}
|
|
5543
5747
|
],
|
|
5544
5748
|
"accounts": [
|
|
5749
|
+
{
|
|
5750
|
+
"name": "OpenbookV2FulfillmentConfig",
|
|
5751
|
+
"type": {
|
|
5752
|
+
"kind": "struct",
|
|
5753
|
+
"fields": [
|
|
5754
|
+
{
|
|
5755
|
+
"name": "pubkey",
|
|
5756
|
+
"type": "publicKey"
|
|
5757
|
+
},
|
|
5758
|
+
{
|
|
5759
|
+
"name": "openbookV2ProgramId",
|
|
5760
|
+
"type": "publicKey"
|
|
5761
|
+
},
|
|
5762
|
+
{
|
|
5763
|
+
"name": "openbookV2Market",
|
|
5764
|
+
"type": "publicKey"
|
|
5765
|
+
},
|
|
5766
|
+
{
|
|
5767
|
+
"name": "openbookV2MarketAuthority",
|
|
5768
|
+
"type": "publicKey"
|
|
5769
|
+
},
|
|
5770
|
+
{
|
|
5771
|
+
"name": "openbookV2EventHeap",
|
|
5772
|
+
"type": "publicKey"
|
|
5773
|
+
},
|
|
5774
|
+
{
|
|
5775
|
+
"name": "openbookV2Bids",
|
|
5776
|
+
"type": "publicKey"
|
|
5777
|
+
},
|
|
5778
|
+
{
|
|
5779
|
+
"name": "openbookV2Asks",
|
|
5780
|
+
"type": "publicKey"
|
|
5781
|
+
},
|
|
5782
|
+
{
|
|
5783
|
+
"name": "openbookV2BaseVault",
|
|
5784
|
+
"type": "publicKey"
|
|
5785
|
+
},
|
|
5786
|
+
{
|
|
5787
|
+
"name": "openbookV2QuoteVault",
|
|
5788
|
+
"type": "publicKey"
|
|
5789
|
+
},
|
|
5790
|
+
{
|
|
5791
|
+
"name": "marketIndex",
|
|
5792
|
+
"type": "u16"
|
|
5793
|
+
},
|
|
5794
|
+
{
|
|
5795
|
+
"name": "fulfillmentType",
|
|
5796
|
+
"type": {
|
|
5797
|
+
"defined": "SpotFulfillmentType"
|
|
5798
|
+
}
|
|
5799
|
+
},
|
|
5800
|
+
{
|
|
5801
|
+
"name": "status",
|
|
5802
|
+
"type": {
|
|
5803
|
+
"defined": "SpotFulfillmentConfigStatus"
|
|
5804
|
+
}
|
|
5805
|
+
},
|
|
5806
|
+
{
|
|
5807
|
+
"name": "padding",
|
|
5808
|
+
"type": {
|
|
5809
|
+
"array": [
|
|
5810
|
+
"u8",
|
|
5811
|
+
4
|
|
5812
|
+
]
|
|
5813
|
+
}
|
|
5814
|
+
}
|
|
5815
|
+
]
|
|
5816
|
+
}
|
|
5817
|
+
},
|
|
5545
5818
|
{
|
|
5546
5819
|
"name": "PhoenixV1FulfillmentConfig",
|
|
5547
5820
|
"type": {
|
|
@@ -6554,12 +6827,20 @@
|
|
|
6554
6827
|
],
|
|
6555
6828
|
"type": "u8"
|
|
6556
6829
|
},
|
|
6830
|
+
{
|
|
6831
|
+
"name": "fuelBoostInsurance",
|
|
6832
|
+
"docs": [
|
|
6833
|
+
"fuel multiplier for spot insurance stake",
|
|
6834
|
+
"precision: 10"
|
|
6835
|
+
],
|
|
6836
|
+
"type": "u8"
|
|
6837
|
+
},
|
|
6557
6838
|
{
|
|
6558
6839
|
"name": "padding",
|
|
6559
6840
|
"type": {
|
|
6560
6841
|
"array": [
|
|
6561
6842
|
"u8",
|
|
6562
|
-
|
|
6843
|
+
42
|
|
6563
6844
|
]
|
|
6564
6845
|
}
|
|
6565
6846
|
}
|
|
@@ -6918,14 +7199,14 @@
|
|
|
6918
7199
|
},
|
|
6919
7200
|
{
|
|
6920
7201
|
"name": "lastFuelBonusUpdateTs",
|
|
6921
|
-
"type": "
|
|
7202
|
+
"type": "u32"
|
|
6922
7203
|
},
|
|
6923
7204
|
{
|
|
6924
7205
|
"name": "padding",
|
|
6925
7206
|
"type": {
|
|
6926
7207
|
"array": [
|
|
6927
7208
|
"u8",
|
|
6928
|
-
|
|
7209
|
+
12
|
|
6929
7210
|
]
|
|
6930
7211
|
}
|
|
6931
7212
|
}
|
|
@@ -7051,21 +7332,28 @@
|
|
|
7051
7332
|
"type": {
|
|
7052
7333
|
"array": [
|
|
7053
7334
|
"u8",
|
|
7054
|
-
|
|
7335
|
+
2
|
|
7055
7336
|
]
|
|
7056
7337
|
}
|
|
7057
7338
|
},
|
|
7339
|
+
{
|
|
7340
|
+
"name": "fuelInsurance",
|
|
7341
|
+
"docs": [
|
|
7342
|
+
"accumulated fuel for token amounts of insurance"
|
|
7343
|
+
],
|
|
7344
|
+
"type": "u32"
|
|
7345
|
+
},
|
|
7058
7346
|
{
|
|
7059
7347
|
"name": "fuelDeposits",
|
|
7060
7348
|
"docs": [
|
|
7061
|
-
"
|
|
7349
|
+
"accumulated fuel for notional of deposits"
|
|
7062
7350
|
],
|
|
7063
7351
|
"type": "u32"
|
|
7064
7352
|
},
|
|
7065
7353
|
{
|
|
7066
7354
|
"name": "fuelBorrows",
|
|
7067
7355
|
"docs": [
|
|
7068
|
-
"accumulate fuel bonus for
|
|
7356
|
+
"accumulate fuel bonus for notional of borrows"
|
|
7069
7357
|
],
|
|
7070
7358
|
"type": "u32"
|
|
7071
7359
|
},
|
|
@@ -7079,14 +7367,14 @@
|
|
|
7079
7367
|
{
|
|
7080
7368
|
"name": "fuelTaker",
|
|
7081
7369
|
"docs": [
|
|
7082
|
-
"accumulate fuel bonus for
|
|
7370
|
+
"accumulate fuel bonus for taker volume"
|
|
7083
7371
|
],
|
|
7084
7372
|
"type": "u32"
|
|
7085
7373
|
},
|
|
7086
7374
|
{
|
|
7087
7375
|
"name": "fuelMaker",
|
|
7088
7376
|
"docs": [
|
|
7089
|
-
"accumulate fuel bonus for
|
|
7377
|
+
"accumulate fuel bonus for maker volume"
|
|
7090
7378
|
],
|
|
7091
7379
|
"type": "u32"
|
|
7092
7380
|
},
|
|
@@ -7097,12 +7385,19 @@
|
|
|
7097
7385
|
],
|
|
7098
7386
|
"type": "u64"
|
|
7099
7387
|
},
|
|
7388
|
+
{
|
|
7389
|
+
"name": "lastFuelIfBonusUpdateTs",
|
|
7390
|
+
"docs": [
|
|
7391
|
+
"last unix ts user stats data was used to update if fuel (u32 to save space)"
|
|
7392
|
+
],
|
|
7393
|
+
"type": "u32"
|
|
7394
|
+
},
|
|
7100
7395
|
{
|
|
7101
7396
|
"name": "padding",
|
|
7102
7397
|
"type": {
|
|
7103
7398
|
"array": [
|
|
7104
7399
|
"u8",
|
|
7105
|
-
|
|
7400
|
+
12
|
|
7106
7401
|
]
|
|
7107
7402
|
}
|
|
7108
7403
|
}
|
|
@@ -9158,6 +9453,9 @@
|
|
|
9158
9453
|
},
|
|
9159
9454
|
{
|
|
9160
9455
|
"name": "PhoenixV1"
|
|
9456
|
+
},
|
|
9457
|
+
{
|
|
9458
|
+
"name": "OpenbookV2"
|
|
9161
9459
|
}
|
|
9162
9460
|
]
|
|
9163
9461
|
}
|
|
@@ -9429,6 +9727,9 @@
|
|
|
9429
9727
|
},
|
|
9430
9728
|
{
|
|
9431
9729
|
"name": "DeriskLp"
|
|
9730
|
+
},
|
|
9731
|
+
{
|
|
9732
|
+
"name": "OrderFilledWithOpenbookV2"
|
|
9432
9733
|
}
|
|
9433
9734
|
]
|
|
9434
9735
|
}
|
|
@@ -9719,6 +10020,9 @@
|
|
|
9719
10020
|
{
|
|
9720
10021
|
"name": "Fill"
|
|
9721
10022
|
},
|
|
10023
|
+
{
|
|
10024
|
+
"name": "Deposit"
|
|
10025
|
+
},
|
|
9722
10026
|
{
|
|
9723
10027
|
"name": "Withdraw"
|
|
9724
10028
|
},
|
|
@@ -12427,6 +12731,36 @@
|
|
|
12427
12731
|
"code": 6275,
|
|
12428
12732
|
"name": "OracleWrongVaaOwner",
|
|
12429
12733
|
"msg": "Oracle vaa owner must be wormhole program"
|
|
12734
|
+
},
|
|
12735
|
+
{
|
|
12736
|
+
"code": 6276,
|
|
12737
|
+
"name": "OracleTooManyPriceAccountUpdates",
|
|
12738
|
+
"msg": "Multi updates must have 2 or fewer accounts passed in remaining accounts"
|
|
12739
|
+
},
|
|
12740
|
+
{
|
|
12741
|
+
"code": 6277,
|
|
12742
|
+
"name": "OracleMismatchedVaaAndPriceUpdates",
|
|
12743
|
+
"msg": "Don't have the same remaining accounts number and merkle price updates left"
|
|
12744
|
+
},
|
|
12745
|
+
{
|
|
12746
|
+
"code": 6278,
|
|
12747
|
+
"name": "OracleBadRemainingAccountPublicKey",
|
|
12748
|
+
"msg": "Remaining account passed is not a valid pda"
|
|
12749
|
+
},
|
|
12750
|
+
{
|
|
12751
|
+
"code": 6279,
|
|
12752
|
+
"name": "FailedOpenbookV2CPI",
|
|
12753
|
+
"msg": "FailedOpenbookV2CPI"
|
|
12754
|
+
},
|
|
12755
|
+
{
|
|
12756
|
+
"code": 6280,
|
|
12757
|
+
"name": "InvalidOpenbookV2Program",
|
|
12758
|
+
"msg": "InvalidOpenbookV2Program"
|
|
12759
|
+
},
|
|
12760
|
+
{
|
|
12761
|
+
"code": 6281,
|
|
12762
|
+
"name": "InvalidOpenbookV2Market",
|
|
12763
|
+
"msg": "InvalidOpenbookV2Market"
|
|
12430
12764
|
}
|
|
12431
12765
|
],
|
|
12432
12766
|
"metadata": {
|