diff --git a/contracts/src/lib.rs b/contracts/src/lib.rs index 309918e47..2d51737c0 100644 --- a/contracts/src/lib.rs +++ b/contracts/src/lib.rs @@ -875,6 +875,47 @@ impl NesteraContract { rewards::redemption::redeem_points(&env, user, amount) } + /// Sets the token contract address used for distributing native token rewards (admin only). + pub fn set_reward_token(env: Env, admin: Address, token: Address) -> Result<(), SavingsError> { + let stored_admin: Address = env + .storage() + .instance() + .get(&DataKey::Admin) + .ok_or(SavingsError::Unauthorized)?; + stored_admin.require_auth(); + if admin != stored_admin { + return Err(SavingsError::Unauthorized); + } + env.storage() + .instance() + .set(&rewards::storage_types::RewardsDataKey::RewardToken, &token); + Ok(()) + } + + /// Converts a user's accumulated points into claimable token rewards. + /// Must be called before claim_rewards. + pub fn convert_points_to_tokens( + env: Env, + user: Address, + points_to_convert: u128, + tokens_per_point: i128, + ) -> Result { + user.require_auth(); + rewards::storage::convert_points_to_tokens(&env, user, points_to_convert, tokens_per_point) + } + + /// Claims all unclaimed token rewards, transferring native tokens to the user. + /// Prevents double-claiming and emits RewardsClaimed event. + pub fn claim_rewards(env: Env, user: Address) -> Result { + user.require_auth(); + ensure_not_paused(&env)?; + crate::security::acquire_reentrancy_guard(&env)?; + let contract_address = env.current_contract_address(); + let res = rewards::storage::claim_rewards(&env, user, contract_address); + crate::security::release_reentrancy_guard(&env); + res + } + // ========== AutoSave Functions ========== /// Creates a new AutoSave schedule for recurring Flexi deposits diff --git a/contracts/src/rewards/events.rs b/contracts/src/rewards/events.rs index b80b37173..533f4a143 100644 --- a/contracts/src/rewards/events.rs +++ b/contracts/src/rewards/events.rs @@ -67,6 +67,25 @@ pub fn emit_points_redeemed(env: &Env, user: Address, amount: u128) { ); } +#[contracttype] +#[derive(Clone, Debug, Eq, PartialEq)] +pub struct RewardsClaimed { + pub user: Address, + pub amount: i128, +} + +/// Emits a RewardsClaimed event. +pub fn emit_rewards_claimed(env: &Env, user: Address, amount: i128) { + let event = RewardsClaimed { + user: user.clone(), + amount, + }; + env.events().publish( + (symbol_short!("rewards"), symbol_short!("claimed"), user), + event, + ); +} + /// Emits a StreakUpdated event. pub fn emit_streak_updated(env: &Env, user: Address, streak: u32) { let event = StreakUpdated { diff --git a/contracts/src/rewards/storage.rs b/contracts/src/rewards/storage.rs index fe95f2312..c07fea33f 100644 --- a/contracts/src/rewards/storage.rs +++ b/contracts/src/rewards/storage.rs @@ -1,8 +1,8 @@ use super::storage_types::{RewardsDataKey, UserRewards}; use crate::errors::SavingsError; use crate::rewards::config::get_rewards_config; -use crate::rewards::events::{emit_bonus_awarded, emit_points_awarded, emit_streak_updated}; -use soroban_sdk::{Address, Env, Symbol}; +use crate::rewards::events::{emit_bonus_awarded, emit_points_awarded, emit_rewards_claimed, emit_streak_updated}; +use soroban_sdk::{Address, Env, Symbol, token}; /// Duration threshold for long-lock bonus eligibility (in seconds). pub const LONG_LOCK_BONUS_THRESHOLD_SECS: u64 = 180 * 24 * 60 * 60; @@ -31,6 +31,8 @@ pub fn get_user_rewards(env: &Env, user: Address) -> UserRewards { last_action_timestamp: 0, daily_points_earned: 0, last_reward_day: 0, + claimed_tokens: 0, + unclaimed_tokens: 0, } } } @@ -56,6 +58,8 @@ pub fn initialize_user_rewards(env: &Env, user: Address) -> Result<(), SavingsEr last_action_timestamp: env.ledger().timestamp(), daily_points_earned: 0, last_reward_day: env.ledger().timestamp() / 86400, + claimed_tokens: 0, + unclaimed_tokens: 0, }; // Now this function can find save_user_rewards because they are in the same file @@ -224,6 +228,97 @@ pub fn award_deposit_points(env: &Env, user: Address, amount: i128) -> Result<() Ok(()) } +/// Claims all unclaimed token rewards for a user, transferring native tokens from the contract. +/// +/// # Arguments +/// * `env` - Contract environment +/// * `user` - User address claiming rewards +/// * `contract_address` - This contract's own address (for token transfer) +/// +/// # Returns +/// * `Ok(i128)` - Amount of tokens claimed +/// * `Err(SavingsError)` if no rewards, token not configured, or arithmetic error +/// +/// # Safety +/// * Prevents double-claiming by zeroing unclaimed_tokens before transfer +/// * Uses checked arithmetic +/// * Emits RewardsClaimed event on success +pub fn claim_rewards( + env: &Env, + user: Address, + contract_address: Address, +) -> Result { + let mut rewards = get_user_rewards(env, user.clone()); + + if rewards.unclaimed_tokens == 0 { + return Err(SavingsError::InsufficientBalance); + } + + let amount = rewards.unclaimed_tokens; + + // Get the reward token address + let token_address: Address = env + .storage() + .instance() + .get(&RewardsDataKey::RewardToken) + .ok_or(SavingsError::InternalError)?; + + // Zero out unclaimed before transfer (prevent double-claim) + rewards.unclaimed_tokens = 0; + rewards.claimed_tokens = rewards + .claimed_tokens + .checked_add(amount) + .ok_or(SavingsError::Overflow)?; + save_user_rewards(env, user.clone(), &rewards); + + // Transfer tokens from contract to user + let token_client = token::Client::new(env, &token_address); + token_client.transfer(&contract_address, &user, &amount); + + emit_rewards_claimed(env, user, amount); + Ok(amount) +} + +/// Converts accumulated points to claimable token rewards at a given rate. +/// +/// # Arguments +/// * `env` - Contract environment +/// * `user` - User address +/// * `points_to_convert` - Number of points to convert +/// * `tokens_per_point` - Token amount per point (in token's smallest unit) +pub fn convert_points_to_tokens( + env: &Env, + user: Address, + points_to_convert: u128, + tokens_per_point: i128, +) -> Result { + if points_to_convert == 0 || tokens_per_point <= 0 { + return Err(SavingsError::InvalidAmount); + } + + let mut rewards = get_user_rewards(env, user.clone()); + + if rewards.total_points < points_to_convert { + return Err(SavingsError::InsufficientBalance); + } + + let token_amount = (points_to_convert as i128) + .checked_mul(tokens_per_point) + .ok_or(SavingsError::Overflow)?; + + rewards.total_points = rewards + .total_points + .checked_sub(points_to_convert) + .ok_or(SavingsError::Overflow)?; + rewards.unclaimed_tokens = rewards + .unclaimed_tokens + .checked_add(token_amount) + .ok_or(SavingsError::Overflow)?; + + save_user_rewards(env, user, &rewards); + Ok(token_amount) +} + /// Awards bonus points for long lock plans when duration exceeds the configured threshold. pub fn award_long_lock_bonus( env: &Env, diff --git a/contracts/src/rewards/storage_types.rs b/contracts/src/rewards/storage_types.rs index 6fc5d8e06..dd9ff7618 100644 --- a/contracts/src/rewards/storage_types.rs +++ b/contracts/src/rewards/storage_types.rs @@ -27,11 +27,16 @@ pub struct UserRewards { // Anti-farming tracking pub daily_points_earned: u128, // Points earned today pub last_reward_day: u64, // Last day rewards were earned (ledger day) + + // Token rewards tracking + pub claimed_tokens: i128, // Cumulative tokens already claimed + pub unclaimed_tokens: i128, // Tokens available to claim } #[contracttype] pub enum RewardsDataKey { Config, UserLedger(Address), - AllUsers, // Tracks all users with rewards for ranking + AllUsers, // Tracks all users with rewards for ranking + RewardToken, // The token contract address used for distributing rewards } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_empty_list.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_empty_list.1.json index c20b1f6ba..204c02e7e 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_empty_list.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_empty_list.1.json @@ -136,6 +136,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -183,6 +191,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_flexi_balances_correct_multi_user.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_flexi_balances_correct_multi_user.1.json index 05bb5e2e8..882660c72 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_flexi_balances_correct_multi_user.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_flexi_balances_correct_multi_user.1.json @@ -739,6 +739,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -786,6 +794,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -833,6 +849,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -880,6 +904,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_inactive_schedules_skipped.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_inactive_schedules_skipped.1.json index 90ceadfd0..56a947bab 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_inactive_schedules_skipped.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_inactive_schedules_skipped.1.json @@ -564,6 +564,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -611,6 +619,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_invalid_ids_handled_safely.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_invalid_ids_handled_safely.1.json index c20b1f6ba..204c02e7e 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_invalid_ids_handled_safely.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_invalid_ids_handled_safely.1.json @@ -136,6 +136,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -183,6 +191,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_multiple_due_schedules.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_multiple_due_schedules.1.json index bb382fcc2..17902ce77 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_multiple_due_schedules.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_multiple_due_schedules.1.json @@ -724,6 +724,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -771,6 +779,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_not_due_schedules_skipped.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_not_due_schedules_skipped.1.json index 5d724a92a..19e054d56 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_not_due_schedules_skipped.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_not_due_schedules_skipped.1.json @@ -472,6 +472,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -519,6 +527,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_partial_success.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_partial_success.1.json index c60da2069..48c40c101 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_partial_success.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_partial_success.1.json @@ -856,6 +856,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -903,6 +911,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_batch_execute_updates_next_execution_time.1.json b/contracts/test_snapshots/autosave_tests/test_batch_execute_updates_next_execution_time.1.json index 7e4f65d22..c7addf454 100644 --- a/contracts/test_snapshots/autosave_tests/test_batch_execute_updates_next_execution_time.1.json +++ b/contracts/test_snapshots/autosave_tests/test_batch_execute_updates_next_execution_time.1.json @@ -414,6 +414,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -461,6 +469,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_cancel_autosave_success.1.json b/contracts/test_snapshots/autosave_tests/test_cancel_autosave_success.1.json index 44c5a02b0..bc4764d39 100644 --- a/contracts/test_snapshots/autosave_tests/test_cancel_autosave_success.1.json +++ b/contracts/test_snapshots/autosave_tests/test_cancel_autosave_success.1.json @@ -368,6 +368,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -415,6 +423,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_cancel_autosave_unauthorized.1.json b/contracts/test_snapshots/autosave_tests/test_cancel_autosave_unauthorized.1.json index 720d3beec..0c841e39b 100644 --- a/contracts/test_snapshots/autosave_tests/test_cancel_autosave_unauthorized.1.json +++ b/contracts/test_snapshots/autosave_tests/test_cancel_autosave_unauthorized.1.json @@ -427,6 +427,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -474,6 +482,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -521,6 +537,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -568,6 +592,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_create_autosave_success.1.json b/contracts/test_snapshots/autosave_tests/test_create_autosave_success.1.json index 3c1dd89a5..b36d7f03d 100644 --- a/contracts/test_snapshots/autosave_tests/test_create_autosave_success.1.json +++ b/contracts/test_snapshots/autosave_tests/test_create_autosave_success.1.json @@ -346,6 +346,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -393,6 +401,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_amount.1.json b/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_amount.1.json index c20b1f6ba..204c02e7e 100644 --- a/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_amount.1.json +++ b/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_amount.1.json @@ -136,6 +136,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -183,6 +191,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_interval.1.json b/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_interval.1.json index c20b1f6ba..204c02e7e 100644 --- a/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_interval.1.json +++ b/contracts/test_snapshots/autosave_tests/test_create_autosave_zero_interval.1.json @@ -136,6 +136,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -183,6 +191,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_execute_autosave_before_due_time.1.json b/contracts/test_snapshots/autosave_tests/test_execute_autosave_before_due_time.1.json index 2c5af93f5..230bd7884 100644 --- a/contracts/test_snapshots/autosave_tests/test_execute_autosave_before_due_time.1.json +++ b/contracts/test_snapshots/autosave_tests/test_execute_autosave_before_due_time.1.json @@ -346,6 +346,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -393,6 +401,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_execute_autosave_success.1.json b/contracts/test_snapshots/autosave_tests/test_execute_autosave_success.1.json index 79a40f404..39bb4aa3f 100644 --- a/contracts/test_snapshots/autosave_tests/test_execute_autosave_success.1.json +++ b/contracts/test_snapshots/autosave_tests/test_execute_autosave_success.1.json @@ -411,6 +411,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -458,6 +466,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_execute_cancelled_schedule.1.json b/contracts/test_snapshots/autosave_tests/test_execute_cancelled_schedule.1.json index 44c5a02b0..bc4764d39 100644 --- a/contracts/test_snapshots/autosave_tests/test_execute_cancelled_schedule.1.json +++ b/contracts/test_snapshots/autosave_tests/test_execute_cancelled_schedule.1.json @@ -368,6 +368,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -415,6 +423,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/autosave_tests/test_get_user_autosaves.1.json b/contracts/test_snapshots/autosave_tests/test_get_user_autosaves.1.json index 024de84f5..8236b0c54 100644 --- a/contracts/test_snapshots/autosave_tests/test_get_user_autosaves.1.json +++ b/contracts/test_snapshots/autosave_tests/test_get_user_autosaves.1.json @@ -471,6 +471,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -518,6 +526,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/config_tests/test_pause_blocks_create_autosave.1.json b/contracts/test_snapshots/config_tests/test_pause_blocks_create_autosave.1.json index 21c68c4cb..48b5e5850 100644 --- a/contracts/test_snapshots/config_tests/test_pause_blocks_create_autosave.1.json +++ b/contracts/test_snapshots/config_tests/test_pause_blocks_create_autosave.1.json @@ -216,6 +216,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -263,6 +271,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/config_tests/test_pause_blocks_deposit_flexi.1.json b/contracts/test_snapshots/config_tests/test_pause_blocks_deposit_flexi.1.json index 21c68c4cb..48b5e5850 100644 --- a/contracts/test_snapshots/config_tests/test_pause_blocks_deposit_flexi.1.json +++ b/contracts/test_snapshots/config_tests/test_pause_blocks_deposit_flexi.1.json @@ -216,6 +216,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -263,6 +271,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/config_tests/test_pause_blocks_execute_autosave.1.json b/contracts/test_snapshots/config_tests/test_pause_blocks_execute_autosave.1.json index 679b8bc55..be8266620 100644 --- a/contracts/test_snapshots/config_tests/test_pause_blocks_execute_autosave.1.json +++ b/contracts/test_snapshots/config_tests/test_pause_blocks_execute_autosave.1.json @@ -426,6 +426,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -473,6 +481,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/config_tests/test_pause_blocks_withdraw_flexi.1.json b/contracts/test_snapshots/config_tests/test_pause_blocks_withdraw_flexi.1.json index 03eba0988..eaa2d0c73 100644 --- a/contracts/test_snapshots/config_tests/test_pause_blocks_withdraw_flexi.1.json +++ b/contracts/test_snapshots/config_tests/test_pause_blocks_withdraw_flexi.1.json @@ -283,6 +283,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -330,6 +338,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/config_tests/test_unpause_restores_operations.1.json b/contracts/test_snapshots/config_tests/test_unpause_restores_operations.1.json index 1498b56a9..659a9ccbe 100644 --- a/contracts/test_snapshots/config_tests/test_unpause_restores_operations.1.json +++ b/contracts/test_snapshots/config_tests/test_unpause_restores_operations.1.json @@ -235,6 +235,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -282,6 +290,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/flexi/tests/test_flexi_deposit_with_protocol_fee.1.json b/contracts/test_snapshots/flexi/tests/test_flexi_deposit_with_protocol_fee.1.json index 9a89b38cd..341dde2ff 100644 --- a/contracts/test_snapshots/flexi/tests/test_flexi_deposit_with_protocol_fee.1.json +++ b/contracts/test_snapshots/flexi/tests/test_flexi_deposit_with_protocol_fee.1.json @@ -445,6 +445,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -492,6 +500,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/flexi/tests/test_flexi_deposit_zero_fee.1.json b/contracts/test_snapshots/flexi/tests/test_flexi_deposit_zero_fee.1.json index c71ad2669..c2d2aa776 100644 --- a/contracts/test_snapshots/flexi/tests/test_flexi_deposit_zero_fee.1.json +++ b/contracts/test_snapshots/flexi/tests/test_flexi_deposit_zero_fee.1.json @@ -264,6 +264,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -311,6 +319,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/flexi/tests/test_flexi_fee_rounds_down.1.json b/contracts/test_snapshots/flexi/tests/test_flexi_fee_rounds_down.1.json index ef32d64d2..232cbe34b 100644 --- a/contracts/test_snapshots/flexi/tests/test_flexi_fee_rounds_down.1.json +++ b/contracts/test_snapshots/flexi/tests/test_flexi_fee_rounds_down.1.json @@ -445,6 +445,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -492,6 +500,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/flexi/tests/test_flexi_small_amount_edge_case.1.json b/contracts/test_snapshots/flexi/tests/test_flexi_small_amount_edge_case.1.json index 86b52d263..615ec8b60 100644 --- a/contracts/test_snapshots/flexi/tests/test_flexi_small_amount_edge_case.1.json +++ b/contracts/test_snapshots/flexi/tests/test_flexi_small_amount_edge_case.1.json @@ -312,6 +312,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -359,6 +367,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_with_protocol_fee.1.json b/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_with_protocol_fee.1.json index fd058b8f8..c1814d300 100644 --- a/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_with_protocol_fee.1.json +++ b/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_with_protocol_fee.1.json @@ -468,6 +468,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -515,6 +523,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_zero_fee.1.json b/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_zero_fee.1.json index e8d046724..1be23724a 100644 --- a/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_zero_fee.1.json +++ b/contracts/test_snapshots/flexi/tests/test_flexi_withdraw_zero_fee.1.json @@ -286,6 +286,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -333,6 +341,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_break_completed_goal_fails.1.json b/contracts/test_snapshots/goal/tests/test_break_completed_goal_fails.1.json index b443c9c82..9140cfb9d 100644 --- a/contracts/test_snapshots/goal/tests/test_break_completed_goal_fails.1.json +++ b/contracts/test_snapshots/goal/tests/test_break_completed_goal_fails.1.json @@ -370,6 +370,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -417,6 +425,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_break_goal_save_applies_fee_and_routes.1.json b/contracts/test_snapshots/goal/tests/test_break_goal_save_applies_fee_and_routes.1.json index 4c2170233..9acc4be14 100644 --- a/contracts/test_snapshots/goal/tests/test_break_goal_save_applies_fee_and_routes.1.json +++ b/contracts/test_snapshots/goal/tests/test_break_goal_save_applies_fee_and_routes.1.json @@ -532,6 +532,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -579,6 +587,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_break_goal_save_fee_rounds_down.1.json b/contracts/test_snapshots/goal/tests/test_break_goal_save_fee_rounds_down.1.json index e88c97cb1..8f3f98c18 100644 --- a/contracts/test_snapshots/goal/tests/test_break_goal_save_fee_rounds_down.1.json +++ b/contracts/test_snapshots/goal/tests/test_break_goal_save_fee_rounds_down.1.json @@ -532,6 +532,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -579,6 +587,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_break_goal_save_success.1.json b/contracts/test_snapshots/goal/tests/test_break_goal_save_success.1.json index 6826160ef..7c95e0bf3 100644 --- a/contracts/test_snapshots/goal/tests/test_break_goal_save_success.1.json +++ b/contracts/test_snapshots/goal/tests/test_break_goal_save_success.1.json @@ -389,6 +389,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -436,6 +444,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_break_unauthorized_fails.1.json b/contracts/test_snapshots/goal/tests/test_break_unauthorized_fails.1.json index 0b8330417..180520489 100644 --- a/contracts/test_snapshots/goal/tests/test_break_unauthorized_fails.1.json +++ b/contracts/test_snapshots/goal/tests/test_break_unauthorized_fails.1.json @@ -512,6 +512,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -559,6 +567,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -606,6 +622,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -653,6 +677,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_create_goal_save_invalid_target_amount.1.json b/contracts/test_snapshots/goal/tests/test_create_goal_save_invalid_target_amount.1.json index c20b1f6ba..204c02e7e 100644 --- a/contracts/test_snapshots/goal/tests/test_create_goal_save_invalid_target_amount.1.json +++ b/contracts/test_snapshots/goal/tests/test_create_goal_save_invalid_target_amount.1.json @@ -136,6 +136,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -183,6 +191,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_create_goal_save_success.1.json b/contracts/test_snapshots/goal/tests/test_create_goal_save_success.1.json index 9be9e0cb2..0d3873137 100644 --- a/contracts/test_snapshots/goal/tests/test_create_goal_save_success.1.json +++ b/contracts/test_snapshots/goal/tests/test_create_goal_save_success.1.json @@ -370,6 +370,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -417,6 +425,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_deposit_to_goal_save.1.json b/contracts/test_snapshots/goal/tests/test_deposit_to_goal_save.1.json index 80efa7ca4..5bb86db29 100644 --- a/contracts/test_snapshots/goal/tests/test_deposit_to_goal_save.1.json +++ b/contracts/test_snapshots/goal/tests/test_deposit_to_goal_save.1.json @@ -395,6 +395,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -442,6 +450,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_break_does_not_award_completion_bonus.1.json b/contracts/test_snapshots/goal/tests/test_goal_break_does_not_award_completion_bonus.1.json index 922925e90..3018cd148 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_break_does_not_award_completion_bonus.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_break_does_not_award_completion_bonus.1.json @@ -584,6 +584,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -631,6 +639,14 @@ "val": { "u128": "20000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_on_create_if_target_reached.1.json b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_on_create_if_target_reached.1.json index 31c24d9f0..6840ca5bb 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_on_create_if_target_reached.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_on_create_if_target_reached.1.json @@ -567,6 +567,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -614,6 +622,14 @@ "val": { "u128": "50250" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_once_on_deposit_transition.1.json b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_once_on_deposit_transition.1.json index 666857a27..946b203ed 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_once_on_deposit_transition.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_awarded_once_on_deposit_transition.1.json @@ -614,6 +614,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -661,6 +669,14 @@ "val": { "u128": "50250" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_below_target_boundary.1.json b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_below_target_boundary.1.json index 44d465840..0b3d51430 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_below_target_boundary.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_below_target_boundary.1.json @@ -567,6 +567,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -614,6 +622,14 @@ "val": { "u128": "49990" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_when_rewards_disabled.1.json b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_when_rewards_disabled.1.json index 3e8f47710..a2ac3873e 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_when_rewards_disabled.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_completion_bonus_not_awarded_when_rewards_disabled.1.json @@ -523,6 +523,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -570,6 +578,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_completion_on_deposit.1.json b/contracts/test_snapshots/goal/tests/test_goal_completion_on_deposit.1.json index 89eefeee1..49b2d3558 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_completion_on_deposit.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_completion_on_deposit.1.json @@ -395,6 +395,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -442,6 +450,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_create_with_protocol_fee.1.json b/contracts/test_snapshots/goal/tests/test_goal_create_with_protocol_fee.1.json index f7ed4afc2..5ec231dca 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_create_with_protocol_fee.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_create_with_protocol_fee.1.json @@ -612,6 +612,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -659,6 +667,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_deposit_with_protocol_fee.1.json b/contracts/test_snapshots/goal/tests/test_goal_deposit_with_protocol_fee.1.json index fdae97fc2..336935d01 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_deposit_with_protocol_fee.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_deposit_with_protocol_fee.1.json @@ -638,6 +638,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -685,6 +693,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_fee_calculation_correctness.1.json b/contracts/test_snapshots/goal/tests/test_goal_fee_calculation_correctness.1.json index 75c48d1d1..c4e20b4c8 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_fee_calculation_correctness.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_fee_calculation_correctness.1.json @@ -612,6 +612,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -659,6 +667,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_small_amount_fee_edge_case.1.json b/contracts/test_snapshots/goal/tests/test_goal_small_amount_fee_edge_case.1.json index 2f57cdb52..8f90bf16e 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_small_amount_fee_edge_case.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_small_amount_fee_edge_case.1.json @@ -479,6 +479,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -526,6 +534,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_withdraw_with_protocol_fee.1.json b/contracts/test_snapshots/goal/tests/test_goal_withdraw_with_protocol_fee.1.json index a03b6d237..d6c4bffe0 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_withdraw_with_protocol_fee.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_withdraw_with_protocol_fee.1.json @@ -635,6 +635,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -682,6 +690,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_goal_zero_protocol_fee.1.json b/contracts/test_snapshots/goal/tests/test_goal_zero_protocol_fee.1.json index 285eea2be..9b1e2b663 100644 --- a/contracts/test_snapshots/goal/tests/test_goal_zero_protocol_fee.1.json +++ b/contracts/test_snapshots/goal/tests/test_goal_zero_protocol_fee.1.json @@ -392,6 +392,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -439,6 +447,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_withdraw_already_withdrawn_fails.1.json b/contracts/test_snapshots/goal/tests/test_withdraw_already_withdrawn_fails.1.json index 645dcde1a..9d8758107 100644 --- a/contracts/test_snapshots/goal/tests/test_withdraw_already_withdrawn_fails.1.json +++ b/contracts/test_snapshots/goal/tests/test_withdraw_already_withdrawn_fails.1.json @@ -392,6 +392,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -439,6 +447,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_withdraw_completed_goal_save_success.1.json b/contracts/test_snapshots/goal/tests/test_withdraw_completed_goal_save_success.1.json index 71f7be2f8..7cc8bd898 100644 --- a/contracts/test_snapshots/goal/tests/test_withdraw_completed_goal_save_success.1.json +++ b/contracts/test_snapshots/goal/tests/test_withdraw_completed_goal_save_success.1.json @@ -393,6 +393,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -440,6 +448,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_withdraw_incomplete_goal_fails.1.json b/contracts/test_snapshots/goal/tests/test_withdraw_incomplete_goal_fails.1.json index 6615cb34e..3c6df558e 100644 --- a/contracts/test_snapshots/goal/tests/test_withdraw_incomplete_goal_fails.1.json +++ b/contracts/test_snapshots/goal/tests/test_withdraw_incomplete_goal_fails.1.json @@ -370,6 +370,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -417,6 +425,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/goal/tests/test_withdraw_unauthorized_fails.1.json b/contracts/test_snapshots/goal/tests/test_withdraw_unauthorized_fails.1.json index 5c2d81a2b..d944f6cb1 100644 --- a/contracts/test_snapshots/goal/tests/test_withdraw_unauthorized_fails.1.json +++ b/contracts/test_snapshots/goal/tests/test_withdraw_unauthorized_fails.1.json @@ -451,6 +451,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -498,6 +506,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -545,6 +561,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -592,6 +616,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_applies_only_above_threshold.1.json b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_applies_only_above_threshold.1.json index 4840dc717..d613281ca 100644 --- a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_applies_only_above_threshold.1.json +++ b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_applies_only_above_threshold.1.json @@ -498,6 +498,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -545,6 +553,14 @@ "val": { "u128": "12000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_at_threshold_boundary.1.json b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_at_threshold_boundary.1.json index c8ca68406..689dc9940 100644 --- a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_at_threshold_boundary.1.json +++ b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_at_threshold_boundary.1.json @@ -498,6 +498,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -545,6 +553,14 @@ "val": { "u128": "10000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_below_threshold.1.json b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_below_threshold.1.json index 8f98b722b..a5cbe287f 100644 --- a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_below_threshold.1.json +++ b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_applied_below_threshold.1.json @@ -498,6 +498,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -545,6 +553,14 @@ "val": { "u128": "10000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_awarded_when_rewards_disabled.1.json b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_awarded_when_rewards_disabled.1.json index 7f83f6909..ae7c17077 100644 --- a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_awarded_when_rewards_disabled.1.json +++ b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_awarded_when_rewards_disabled.1.json @@ -455,6 +455,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -502,6 +510,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_duplicated_after_withdraw.1.json b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_duplicated_after_withdraw.1.json index 6aa43bee7..56e38591e 100644 --- a/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_duplicated_after_withdraw.1.json +++ b/contracts/test_snapshots/lock/tests/test_long_lock_bonus_not_duplicated_after_withdraw.1.json @@ -520,6 +520,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -567,6 +575,14 @@ "val": { "u128": "12000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_no_streak_bonus_before_threshold.1.json b/contracts/test_snapshots/rewards/storage/tests/test_no_streak_bonus_before_threshold.1.json index d3ffc37fb..ffa228edc 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_no_streak_bonus_before_threshold.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_no_streak_bonus_before_threshold.1.json @@ -590,6 +590,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -637,6 +645,14 @@ "val": { "u128": "2000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_applies_when_threshold_reached.1.json b/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_applies_when_threshold_reached.1.json index 91663b541..696fe1c8c 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_applies_when_threshold_reached.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_applies_when_threshold_reached.1.json @@ -719,6 +719,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -766,6 +774,14 @@ "val": { "u128": "3200" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_config_applied_when_enabled.1.json b/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_config_applied_when_enabled.1.json index fe53b0771..515a9fc4c 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_config_applied_when_enabled.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_streak_bonus_config_applied_when_enabled.1.json @@ -461,6 +461,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -508,6 +516,14 @@ "val": { "u128": "1000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_streak_increments_within_window.1.json b/contracts/test_snapshots/rewards/storage/tests/test_streak_increments_within_window.1.json index 3b8114abf..ac5063cd4 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_streak_increments_within_window.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_streak_increments_within_window.1.json @@ -591,6 +591,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -638,6 +646,14 @@ "val": { "u128": "2000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_streak_resets_after_missed_window.1.json b/contracts/test_snapshots/rewards/storage/tests/test_streak_resets_after_missed_window.1.json index 515fbdb38..ab26c0b38 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_streak_resets_after_missed_window.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_streak_resets_after_missed_window.1.json @@ -590,6 +590,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -637,6 +645,14 @@ "val": { "u128": "2000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_streak_starts_at_one_on_first_deposit.1.json b/contracts/test_snapshots/rewards/storage/tests/test_streak_starts_at_one_on_first_deposit.1.json index fe53b0771..515a9fc4c 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_streak_starts_at_one_on_first_deposit.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_streak_starts_at_one_on_first_deposit.1.json @@ -461,6 +461,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -508,6 +516,14 @@ "val": { "u128": "1000" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_increments_within_window.1.json b/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_increments_within_window.1.json index 9ed12a1e8..d6dbcc2ec 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_increments_within_window.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_increments_within_window.1.json @@ -326,6 +326,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -373,6 +381,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_reset_after_window.1.json b/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_reset_after_window.1.json index 1c50389e5..04db05e74 100644 --- a/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_reset_after_window.1.json +++ b/contracts/test_snapshots/rewards/storage/tests/test_update_streak_entrypoint_reset_after_window.1.json @@ -326,6 +326,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -373,6 +381,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_break_group_refunds_contribution.1.json b/contracts/test_snapshots/test/test_break_group_refunds_contribution.1.json index a502850b5..2ecc6e1cc 100644 --- a/contracts/test_snapshots/test/test_break_group_refunds_contribution.1.json +++ b/contracts/test_snapshots/test/test_break_group_refunds_contribution.1.json @@ -812,6 +812,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -859,6 +867,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -906,6 +922,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -953,6 +977,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_break_group_updates_member_count.1.json b/contracts/test_snapshots/test/test_break_group_updates_member_count.1.json index 6cad13d7d..c69078450 100644 --- a/contracts/test_snapshots/test/test_break_group_updates_member_count.1.json +++ b/contracts/test_snapshots/test/test_break_group_updates_member_count.1.json @@ -1136,6 +1136,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1183,6 +1191,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -1230,6 +1246,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1277,6 +1301,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -1324,6 +1356,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1371,6 +1411,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_break_group_updates_user_groups_list.1.json b/contracts/test_snapshots/test/test_break_group_updates_user_groups_list.1.json index 8715cbfb7..0c2c7ce3d 100644 --- a/contracts/test_snapshots/test/test_break_group_updates_user_groups_list.1.json +++ b/contracts/test_snapshots/test/test_break_group_updates_user_groups_list.1.json @@ -889,6 +889,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -936,6 +944,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_break_group_with_zero_contribution.1.json b/contracts/test_snapshots/test/test_break_group_with_zero_contribution.1.json index 0de22e1e9..a20f34492 100644 --- a/contracts/test_snapshots/test/test_break_group_with_zero_contribution.1.json +++ b/contracts/test_snapshots/test/test_break_group_with_zero_contribution.1.json @@ -811,6 +811,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -858,6 +866,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -905,6 +921,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -952,6 +976,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_error_group_completed.1.json b/contracts/test_snapshots/test/test_error_group_completed.1.json index b1df51745..5acc4f172 100644 --- a/contracts/test_snapshots/test/test_error_group_completed.1.json +++ b/contracts/test_snapshots/test/test_error_group_completed.1.json @@ -685,6 +685,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -732,6 +740,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_error_group_not_found.1.json b/contracts/test_snapshots/test/test_error_group_not_found.1.json index 585fa0e0a..72c20e762 100644 --- a/contracts/test_snapshots/test/test_error_group_not_found.1.json +++ b/contracts/test_snapshots/test/test_error_group_not_found.1.json @@ -197,6 +197,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -244,6 +252,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_error_user_not_found.1.json b/contracts/test_snapshots/test/test_error_user_not_found.1.json index 55ba7fa05..f4cfe36f5 100644 --- a/contracts/test_snapshots/test/test_error_user_not_found.1.json +++ b/contracts/test_snapshots/test/test_error_user_not_found.1.json @@ -684,6 +684,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -731,6 +739,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_error_user_not_member.1.json b/contracts/test_snapshots/test/test_error_user_not_member.1.json index 0382091e6..6e712e9e5 100644 --- a/contracts/test_snapshots/test/test_error_user_not_member.1.json +++ b/contracts/test_snapshots/test/test_error_user_not_member.1.json @@ -765,6 +765,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -812,6 +820,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -859,6 +875,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -906,6 +930,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test/test_successful_break_group_save.1.json b/contracts/test_snapshots/test/test_successful_break_group_save.1.json index c938af135..dc3edd999 100644 --- a/contracts/test_snapshots/test/test_successful_break_group_save.1.json +++ b/contracts/test_snapshots/test/test_successful_break_group_save.1.json @@ -1139,6 +1139,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1186,6 +1194,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -1233,6 +1249,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1280,6 +1304,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -1327,6 +1359,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1374,6 +1414,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_autosave_batch_execution.1.json b/contracts/test_snapshots/test_autosave_batch_execution.1.json index 765c28330..d1894fd51 100644 --- a/contracts/test_snapshots/test_autosave_batch_execution.1.json +++ b/contracts/test_snapshots/test_autosave_batch_execution.1.json @@ -762,6 +762,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -809,6 +817,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_autosave_cancel.1.json b/contracts/test_snapshots/test_autosave_cancel.1.json index dd58ea2ae..2b45382c4 100644 --- a/contracts/test_snapshots/test_autosave_cancel.1.json +++ b/contracts/test_snapshots/test_autosave_cancel.1.json @@ -496,6 +496,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -543,6 +551,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_autosave_early_execution_fails.1.json b/contracts/test_snapshots/test_autosave_early_execution_fails.1.json index 98116d881..315ea5119 100644 --- a/contracts/test_snapshots/test_autosave_early_execution_fails.1.json +++ b/contracts/test_snapshots/test_autosave_early_execution_fails.1.json @@ -474,6 +474,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -521,6 +529,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_autosave_full_flow.1.json b/contracts/test_snapshots/test_autosave_full_flow.1.json index 83441ea71..d2c25f2fc 100644 --- a/contracts/test_snapshots/test_autosave_full_flow.1.json +++ b/contracts/test_snapshots/test_autosave_full_flow.1.json @@ -494,6 +494,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -541,6 +549,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_autosave_invalid_interval.1.json b/contracts/test_snapshots/test_autosave_invalid_interval.1.json index e860cb813..0c887b10b 100644 --- a/contracts/test_snapshots/test_autosave_invalid_interval.1.json +++ b/contracts/test_snapshots/test_autosave_invalid_interval.1.json @@ -264,6 +264,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -311,6 +319,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_complete_user_journey.1.json b/contracts/test_snapshots/test_complete_user_journey.1.json index c1b62eb19..2ea76673f 100644 --- a/contracts/test_snapshots/test_complete_user_journey.1.json +++ b/contracts/test_snapshots/test_complete_user_journey.1.json @@ -972,6 +972,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1019,6 +1027,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_duplicate_user_initialization_fails.1.json b/contracts/test_snapshots/test_duplicate_user_initialization_fails.1.json index cde295df3..e56f4b109 100644 --- a/contracts/test_snapshots/test_duplicate_user_initialization_fails.1.json +++ b/contracts/test_snapshots/test_duplicate_user_initialization_fails.1.json @@ -197,6 +197,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -244,6 +252,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_flexi_invalid_negative_deposit.1.json b/contracts/test_snapshots/test_flexi_invalid_negative_deposit.1.json index cde295df3..e56f4b109 100644 --- a/contracts/test_snapshots/test_flexi_invalid_negative_deposit.1.json +++ b/contracts/test_snapshots/test_flexi_invalid_negative_deposit.1.json @@ -197,6 +197,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -244,6 +252,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_flexi_invalid_zero_deposit.1.json b/contracts/test_snapshots/test_flexi_invalid_zero_deposit.1.json index cde295df3..e56f4b109 100644 --- a/contracts/test_snapshots/test_flexi_invalid_zero_deposit.1.json +++ b/contracts/test_snapshots/test_flexi_invalid_zero_deposit.1.json @@ -197,6 +197,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -244,6 +252,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_flexi_plan_full_flow.1.json b/contracts/test_snapshots/test_flexi_plan_full_flow.1.json index 3ba7134ff..8c5a5f4a5 100644 --- a/contracts/test_snapshots/test_flexi_plan_full_flow.1.json +++ b/contracts/test_snapshots/test_flexi_plan_full_flow.1.json @@ -288,6 +288,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -335,6 +343,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_flexi_withdraw_insufficient_balance.1.json b/contracts/test_snapshots/test_flexi_withdraw_insufficient_balance.1.json index 174dd7794..e8c0efa4a 100644 --- a/contracts/test_snapshots/test_flexi_withdraw_insufficient_balance.1.json +++ b/contracts/test_snapshots/test_flexi_withdraw_insufficient_balance.1.json @@ -264,6 +264,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -311,6 +319,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_goal_early_withdrawal_with_penalty.1.json b/contracts/test_snapshots/test_goal_early_withdrawal_with_penalty.1.json index b758aaee7..b34ef3553 100644 --- a/contracts/test_snapshots/test_goal_early_withdrawal_with_penalty.1.json +++ b/contracts/test_snapshots/test_goal_early_withdrawal_with_penalty.1.json @@ -599,6 +599,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -646,6 +654,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_goal_plan_full_flow.1.json b/contracts/test_snapshots/test_goal_plan_full_flow.1.json index 65518476c..8e0e84712 100644 --- a/contracts/test_snapshots/test_goal_plan_full_flow.1.json +++ b/contracts/test_snapshots/test_goal_plan_full_flow.1.json @@ -573,6 +573,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -620,6 +628,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_group_save_full_flow.1.json b/contracts/test_snapshots/test_group_save_full_flow.1.json index d2378b12c..075b8004d 100644 --- a/contracts/test_snapshots/test_group_save_full_flow.1.json +++ b/contracts/test_snapshots/test_group_save_full_flow.1.json @@ -1341,6 +1341,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1388,6 +1396,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -1435,6 +1451,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1482,6 +1506,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -1529,6 +1561,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1576,6 +1616,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_group_save_non_member_cannot_contribute.1.json b/contracts/test_snapshots/test_group_save_non_member_cannot_contribute.1.json index 7dfef5936..e9d6c10e9 100644 --- a/contracts/test_snapshots/test_group_save_non_member_cannot_contribute.1.json +++ b/contracts/test_snapshots/test_group_save_non_member_cannot_contribute.1.json @@ -899,6 +899,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -946,6 +954,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -993,6 +1009,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1040,6 +1064,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_insufficient_balance_withdrawal.1.json b/contracts/test_snapshots/test_insufficient_balance_withdrawal.1.json index 3a65d0b1d..00e99e9f7 100644 --- a/contracts/test_snapshots/test_insufficient_balance_withdrawal.1.json +++ b/contracts/test_snapshots/test_insufficient_balance_withdrawal.1.json @@ -264,6 +264,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -311,6 +319,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_invalid_negative_amount.1.json b/contracts/test_snapshots/test_invalid_negative_amount.1.json index cde295df3..e56f4b109 100644 --- a/contracts/test_snapshots/test_invalid_negative_amount.1.json +++ b/contracts/test_snapshots/test_invalid_negative_amount.1.json @@ -197,6 +197,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -244,6 +252,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_invalid_zero_amount.1.json b/contracts/test_snapshots/test_invalid_zero_amount.1.json index cde295df3..e56f4b109 100644 --- a/contracts/test_snapshots/test_invalid_zero_amount.1.json +++ b/contracts/test_snapshots/test_invalid_zero_amount.1.json @@ -197,6 +197,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -244,6 +252,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_lock_save_early_withdrawal_fails.1.json b/contracts/test_snapshots/test_lock_save_early_withdrawal_fails.1.json index 1e84cb710..41b29cb64 100644 --- a/contracts/test_snapshots/test_lock_save_early_withdrawal_fails.1.json +++ b/contracts/test_snapshots/test_lock_save_early_withdrawal_fails.1.json @@ -430,6 +430,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -477,6 +485,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_lock_save_full_flow.1.json b/contracts/test_snapshots/test_lock_save_full_flow.1.json index 37c4506e0..8a93d1b63 100644 --- a/contracts/test_snapshots/test_lock_save_full_flow.1.json +++ b/contracts/test_snapshots/test_lock_save_full_flow.1.json @@ -453,6 +453,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -500,6 +508,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_multi_user_multi_plan_scenario.1.json b/contracts/test_snapshots/test_multi_user_multi_plan_scenario.1.json index 2b0d4d72a..7d7f2f8a8 100644 --- a/contracts/test_snapshots/test_multi_user_multi_plan_scenario.1.json +++ b/contracts/test_snapshots/test_multi_user_multi_plan_scenario.1.json @@ -2150,6 +2150,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -2197,6 +2205,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -2244,6 +2260,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -2291,6 +2315,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -2338,6 +2370,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -2385,6 +2425,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_multiple_lock_saves.1.json b/contracts/test_snapshots/test_multiple_lock_saves.1.json index c8eaad646..b9b812211 100644 --- a/contracts/test_snapshots/test_multiple_lock_saves.1.json +++ b/contracts/test_snapshots/test_multiple_lock_saves.1.json @@ -684,6 +684,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -731,6 +739,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_operations_paused.1.json b/contracts/test_snapshots/test_operations_paused.1.json index 25eed9fcf..f2ebaba5f 100644 --- a/contracts/test_snapshots/test_operations_paused.1.json +++ b/contracts/test_snapshots/test_operations_paused.1.json @@ -283,6 +283,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -330,6 +338,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_pause_and_unpause.1.json b/contracts/test_snapshots/test_pause_and_unpause.1.json index 0b6b50e6c..79356e652 100644 --- a/contracts/test_snapshots/test_pause_and_unpause.1.json +++ b/contracts/test_snapshots/test_pause_and_unpause.1.json @@ -325,6 +325,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -372,6 +380,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/test_user_lifecycle.1.json b/contracts/test_snapshots/test_user_lifecycle.1.json index 564a83c7e..78ad03a38 100644 --- a/contracts/test_snapshots/test_user_lifecycle.1.json +++ b/contracts/test_snapshots/test_user_lifecycle.1.json @@ -198,6 +198,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -245,6 +253,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_no_premature_expiry_during_active_usage.1.json b/contracts/test_snapshots/ttl_tests/tests/test_no_premature_expiry_during_active_usage.1.json index 095d47e3d..dd4ebe132 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_no_premature_expiry_during_active_usage.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_no_premature_expiry_during_active_usage.1.json @@ -322,6 +322,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -369,6 +377,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_autosave.1.json b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_autosave.1.json index 429d109b3..45f68edb3 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_autosave.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_autosave.1.json @@ -347,6 +347,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -394,6 +402,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_completed_goal.1.json b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_completed_goal.1.json index 189f5961f..07034db72 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_completed_goal.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_completed_goal.1.json @@ -393,6 +393,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -440,6 +448,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_flexi_operations.1.json b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_flexi_operations.1.json index a1dfb50f0..f9850d9d1 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_flexi_operations.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_flexi_operations.1.json @@ -226,6 +226,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -273,6 +281,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_goal_save.1.json b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_goal_save.1.json index 4e02ffe99..f598d6150 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_goal_save.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_goal_save.1.json @@ -396,6 +396,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -443,6 +451,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_group_operations.1.json b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_group_operations.1.json index 6dd038403..e9840775a 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_group_operations.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_group_operations.1.json @@ -948,6 +948,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -995,6 +1003,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } @@ -1042,6 +1058,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -1089,6 +1113,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_lock_save.1.json b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_lock_save.1.json index 005829652..4529dca9e 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_lock_save.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_lock_save.1.json @@ -303,6 +303,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -350,6 +358,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] } diff --git a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_user_creation.1.json b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_user_creation.1.json index f6556b58e..21fd14a03 100644 --- a/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_user_creation.1.json +++ b/contracts/test_snapshots/ttl_tests/tests/test_ttl_extension_on_user_creation.1.json @@ -137,6 +137,14 @@ "durability": "persistent", "val": { "map": [ + { + "key": { + "symbol": "claimed_tokens" + }, + "val": { + "i128": "0" + } + }, { "key": { "symbol": "current_streak" @@ -184,6 +192,14 @@ "val": { "u128": "0" } + }, + { + "key": { + "symbol": "unclaimed_tokens" + }, + "val": { + "i128": "0" + } } ] }