Skip to content

Commit ebebf5f

Browse files
committed
change action
1 parent 04602c5 commit ebebf5f

File tree

5 files changed

+30
-2
lines changed

5 files changed

+30
-2
lines changed

programs/drift/src/controller/insurance.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ pub fn add_insurance_fund_stake(
112112
user_stats: &mut UserStats,
113113
spot_market: &mut SpotMarket,
114114
now: i64,
115+
admin_deposit: bool,
115116
) -> DriftResult {
116117
validate!(
117118
!(insurance_vault_amount == 0 && spot_market.insurance_fund.total_shares != 0),
@@ -161,7 +162,7 @@ pub fn add_insurance_fund_stake(
161162
emit!(InsuranceFundStakeRecord {
162163
ts: now,
163164
user_authority: user_stats.authority,
164-
action: StakeAction::Stake,
165+
action: if admin_deposit { StakeAction::AdminDeposit } else { StakeAction::Stake },
165166
amount,
166167
market_index: spot_market.market_index,
167168
insurance_vault_amount_before: insurance_vault_amount,

programs/drift/src/controller/insurance/tests.rs

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ pub fn basic_stake_if_test() {
4141
&mut user_stats,
4242
&mut spot_market,
4343
0,
44+
false,
4445
)
4546
.unwrap();
4647
assert_eq!(if_stake.unchecked_if_shares(), amount as u128);
@@ -104,6 +105,7 @@ pub fn basic_stake_if_test() {
104105
&mut user_stats,
105106
&mut spot_market,
106107
0,
108+
false,
107109
)
108110
.unwrap();
109111
assert_eq!(if_stake.cost_basis, 1234);
@@ -141,6 +143,7 @@ pub fn basic_seeded_stake_if_test() {
141143
&mut user_stats,
142144
&mut spot_market,
143145
0,
146+
false,
144147
)
145148
.unwrap();
146149

@@ -202,6 +205,7 @@ pub fn basic_seeded_stake_if_test() {
202205
&mut user_stats,
203206
&mut spot_market,
204207
0,
208+
false,
205209
)
206210
.unwrap();
207211
assert_eq!(if_stake.cost_basis, 1234);
@@ -245,6 +249,7 @@ pub fn large_num_seeded_stake_if_test() {
245249
&mut user_stats,
246250
&mut spot_market,
247251
0,
252+
false,
248253
)
249254
.unwrap();
250255

@@ -334,6 +339,7 @@ pub fn large_num_seeded_stake_if_test() {
334339
&mut user_stats,
335340
&mut spot_market,
336341
20,
342+
false,
337343
)
338344
.unwrap();
339345
assert_eq!(if_stake.cost_basis, 199033744205760);
@@ -346,6 +352,7 @@ pub fn large_num_seeded_stake_if_test() {
346352
&mut user_stats,
347353
&mut spot_market,
348354
30,
355+
false,
349356
)
350357
.unwrap();
351358
assert_eq!(if_stake.cost_basis, 398067488411520);
@@ -378,6 +385,7 @@ pub fn gains_stake_if_test() {
378385
&mut user_stats,
379386
&mut spot_market,
380387
0,
388+
false,
381389
)
382390
.unwrap();
383391
assert_eq!(if_stake.unchecked_if_shares(), amount as u128);
@@ -502,6 +510,7 @@ pub fn losses_stake_if_test() {
502510
&mut user_stats,
503511
&mut spot_market,
504512
0,
513+
false,
505514
)
506515
.unwrap();
507516
assert_eq!(if_stake.unchecked_if_shares(), amount as u128);
@@ -631,6 +640,7 @@ pub fn escrow_losses_stake_if_test() {
631640
&mut user_stats,
632641
&mut spot_market,
633642
0,
643+
false,
634644
)
635645
.unwrap();
636646
assert_eq!(if_stake.unchecked_if_shares(), amount as u128);
@@ -729,7 +739,8 @@ pub fn escrow_gains_stake_if_test() {
729739
&mut if_stake,
730740
&mut user_stats,
731741
&mut spot_market,
732-
0
742+
0,
743+
false,
733744
)
734745
.is_err());
735746

@@ -741,6 +752,7 @@ pub fn escrow_gains_stake_if_test() {
741752
&mut user_stats,
742753
&mut spot_market,
743754
0,
755+
false,
744756
)
745757
.unwrap();
746758

@@ -858,6 +870,7 @@ pub fn drained_stake_if_test_rebase_on_new_add() {
858870
&mut user_stats,
859871
&mut spot_market,
860872
0,
873+
false,
861874
)
862875
.is_err());
863876

@@ -877,6 +890,7 @@ pub fn drained_stake_if_test_rebase_on_new_add() {
877890
&mut user_stats,
878891
&mut spot_market,
879892
0,
893+
false,
880894
)
881895
.unwrap();
882896
if_balance += amount;
@@ -912,6 +926,7 @@ pub fn drained_stake_if_test_rebase_on_new_add() {
912926
&mut orig_user_stats,
913927
&mut spot_market,
914928
0,
929+
false,
915930
)
916931
.unwrap();
917932

@@ -1010,6 +1025,7 @@ pub fn drained_stake_if_test_rebase_on_old_remove_all() {
10101025
&mut user_stats,
10111026
&mut spot_market,
10121027
0,
1028+
false,
10131029
)
10141030
.unwrap();
10151031

@@ -1210,6 +1226,7 @@ pub fn drained_stake_if_test_rebase_on_old_remove_all_2() {
12101226
&mut user_stats,
12111227
&mut spot_market,
12121228
0,
1229+
false,
12131230
)
12141231
.unwrap();
12151232
if_balance += 10_000_000_000_000;
@@ -1254,6 +1271,7 @@ pub fn multiple_if_stakes_and_rebase() {
12541271
&mut user_stats_1,
12551272
&mut spot_market,
12561273
0,
1274+
false,
12571275
)
12581276
.unwrap();
12591277

@@ -1266,6 +1284,7 @@ pub fn multiple_if_stakes_and_rebase() {
12661284
&mut user_stats_2,
12671285
&mut spot_market,
12681286
0,
1287+
false,
12691288
)
12701289
.unwrap();
12711290

@@ -1392,6 +1411,7 @@ pub fn multiple_if_stakes_and_rebase_and_admin_remove() {
13921411
&mut user_stats_1,
13931412
&mut spot_market,
13941413
0,
1414+
false,
13951415
)
13961416
.unwrap();
13971417

@@ -1404,6 +1424,7 @@ pub fn multiple_if_stakes_and_rebase_and_admin_remove() {
14041424
&mut user_stats_2,
14051425
&mut spot_market,
14061426
0,
1427+
false,
14071428
)
14081429
.unwrap();
14091430

programs/drift/src/instructions/if_staker.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ pub fn handle_add_insurance_fund_stake<'c: 'info, 'info>(
143143
user_stats,
144144
spot_market,
145145
clock.unix_timestamp,
146+
false,
146147
)?;
147148

148149
controller::token::receive(
@@ -909,6 +910,7 @@ pub fn handle_deposit_into_insurance_fund_stake<'c: 'info, 'info>(
909910
user_stats,
910911
spot_market,
911912
clock.unix_timestamp,
913+
true,
912914
)?;
913915

914916
controller::token::receive(

programs/drift/src/state/events.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -580,6 +580,7 @@ pub enum StakeAction {
580580
Unstake,
581581
UnstakeTransfer,
582582
StakeTransfer,
583+
AdminDeposit,
583584
}
584585

585586
#[event]

sdk/src/idl/drift.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12307,6 +12307,9 @@
1230712307
},
1230812308
{
1230912309
"name": "StakeTransfer"
12310+
},
12311+
{
12312+
"name": "AdminDeposit"
1231012313
}
1231112314
]
1231212315
}

0 commit comments

Comments
 (0)