From 7a4283beddd295eb9d06fefcbdad5c550cfa64ab Mon Sep 17 00:00:00 2001 From: Nabarun Sarkar Date: Thu, 11 Apr 2024 14:23:06 +0530 Subject: [PATCH] fix(contract): Add changes for c value to redemption rate conversion (#10) --- Cargo.lock | 31 +- artifacts/checksums.txt | 4 +- artifacts/liquid_stake_rate.wasm | Bin 241801 -> 262666 bytes artifacts/osmosis_pool_ratesync.wasm | Bin 459798 -> 460815 bytes contracts/liquid-stake-rate/Cargo.toml | 5 +- contracts/liquid-stake-rate/src/contract.rs | 398 ++++++++++++++++++-- contracts/osmosis-pool-ratesync/Cargo.toml | 2 +- packages/ratesync/Cargo.toml | 2 +- packages/ratesync/src/lsr_error.rs | 21 +- packages/ratesync/src/lsr_helpers.rs | 18 +- packages/ratesync/src/lsr_msg.rs | 49 ++- packages/ratesync/src/lsr_state.rs | 10 +- scripts/testnet/exec_lsr.sh | 30 ++ scripts/testnet/instantiate_lsr_contract.sh | 32 ++ scripts/testnet/query_latest.sh | 5 +- 15 files changed, 542 insertions(+), 65 deletions(-) create mode 100644 scripts/testnet/exec_lsr.sh create mode 100644 scripts/testnet/instantiate_lsr_contract.sh diff --git a/Cargo.lock b/Cargo.lock index 5fb5884..ddbec28 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -112,6 +112,26 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "520fbf3c07483f94e3e3ca9d0cfd913d7718ef2483d2cfd91c0d9e91474ab913" +[[package]] +name = "const_format" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + [[package]] name = "cosmwasm-crypto" version = "1.5.0" @@ -593,8 +613,9 @@ checksum = "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b" [[package]] name = "liquid-stake-rate" -version = "1.0.0" +version = "1.1.0" dependencies = [ + "const_format", "cosmwasm-schema", "cosmwasm-std", "cosmwasm-storage", @@ -824,7 +845,7 @@ dependencies = [ [[package]] name = "ratesync" -version = "1.0.0" +version = "1.1.0" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -1139,6 +1160,12 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0" +[[package]] +name = "unicode-xid" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" + [[package]] name = "version_check" version = "0.9.4" diff --git a/artifacts/checksums.txt b/artifacts/checksums.txt index aebb321..a89b47d 100644 --- a/artifacts/checksums.txt +++ b/artifacts/checksums.txt @@ -1,2 +1,2 @@ -33d4183a9bc09e59274e83b9c9f3e8c2b58c0fdcda7e0974e375721597d6f337 liquid_stake_rate.wasm -6ca74ff9e4bce522e60cd0f60f3eb67dab3e2d27ed7f768ba8ba650afa35a385 osmosis_pool_ratesync.wasm +d236b94e91966ce710df5c0129b1352eb2d3404c30726fe936e255cb95fe1fe7 liquid_stake_rate.wasm +c2653b4a954fbadcdd00e6cf548d0fb2760006f3e03722b6f92a0f9102a74a02 osmosis_pool_ratesync.wasm diff --git a/artifacts/liquid_stake_rate.wasm b/artifacts/liquid_stake_rate.wasm index 9163c54bb8bbcbe2ea0ab1d623f92cb0558a1572..8b53843ad4d81f5bf5a5c0470093eee8ad6371de 100644 GIT binary patch delta 105717 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 wM6cuf@MI2W)6;B8d@7us2p;Q#;t delta 86092 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 am}FOf^`y94vi>Nd`W$ct7y>?o%>Mv0WeBnW delta 77096 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 !Y5A@;P75PQlaGS1XGRSP>u0) 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 M3B>b(_-L^J0JqoXJ^%m! diff --git a/contracts/liquid-stake-rate/Cargo.toml b/contracts/liquid-stake-rate/Cargo.toml index 8521207..ad865f1 100644 --- a/contracts/liquid-stake-rate/Cargo.toml +++ b/contracts/liquid-stake-rate/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "liquid-stake-rate" -version = "1.0.0" +version = "1.1.0" authors = ["Nabarun Sarkar "] edition = "2021" @@ -29,8 +29,9 @@ optimize = """docker run --rm -v "$(pwd)":/code \ """ [dependencies] -ratesync = { path = "../../packages/ratesync", version = "1.0.0" } +ratesync = { path = "../../packages/ratesync", version = "1.1.0" } +const_format = "0.2.30" cosmwasm-schema = "1.3.3" cosmwasm-std = "1.3.3" cosmwasm-storage = "1.3.3" diff --git a/contracts/liquid-stake-rate/src/contract.rs b/contracts/liquid-stake-rate/src/contract.rs index a638435..2b66867 100644 --- a/contracts/liquid-stake-rate/src/contract.rs +++ b/contracts/liquid-stake-rate/src/contract.rs @@ -1,18 +1,19 @@ +use const_format::concatcp; #[cfg(not(feature = "library"))] use cosmwasm_std::entry_point; use cosmwasm_std::{ - to_json_binary, Binary, Decimal, Deps, DepsMut, Env, MessageInfo, Response, StdResult, + to_json_binary, Binary, Decimal, Deps, DepsMut, Env, Event, MessageInfo, Response, StdResult, }; -use cw2::set_contract_version; +use cw2::{get_contract_version, set_contract_version}; use ratesync::{ lsr_helpers::validate_redemption_rate, lsr_msg::{ - ConfigResponse, ExecuteMsg, InstantiateMsg, QueryMsg, RedemptionRateResponse, - RedemptionRates, + ConfigResponse, ExecuteMsg, InstantiateMsg, LiquidStakeRateResponse, LiquidStakeRates, + MigrateMsg, QueryMsg, RedemptionRate, RedemptionRateResponse, RedemptionRates, }, lsr_state::{ - AnomalyConfig, Config, History, RedemptionRate, ANOMALY_CONFIG_BY_DENOM, CONFIG, + AnomalyConfig, Config, History, LiquidStakeRate, ANOMALY_CONFIG_BY_DENOM, CONFIG, LIQUID_STAKE_RATES, }, }; @@ -27,6 +28,7 @@ use ratesync::{ // version info for migration info const CONTRACT_NAME: &str = "crates.io:liquid-stake-rate"; const CONTRACT_VERSION: &str = env!("CARGO_PKG_VERSION"); +const CONTRACT_VERSION_V1: &str = "1.0.0"; const DEFAULT_DEVIAITON_COUNT_LIMIT: u64 = 10; const DEFAULT_DEVIAITON_THRESHOLD: Decimal = Decimal::percent(5); @@ -145,9 +147,9 @@ pub fn execute_add_liquid_stake_rate( ANOMALY_CONFIG_BY_DENOM.save(deps.storage, &stk_denom_ibc_hash.clone(), &anomaly_config)?; // Add liquid stake rate to historical state - let mut new_liquid_stake_rate = RedemptionRate { + let mut new_liquid_stake_rate = LiquidStakeRate { denom: stk_denom_ibc_hash.clone(), - redemption_rate: c_value, + liquid_stake_rate: c_value, update_time: controller_chain_time, anomaly_detected: false, }; @@ -160,7 +162,7 @@ pub fn execute_add_liquid_stake_rate( history } - None => History::::default(), + None => History::::default(), }; liquid_stake_rate_history.add(new_liquid_stake_rate.clone()); LIQUID_STAKE_RATES.save( @@ -262,7 +264,7 @@ pub fn query(deps: Deps, _env: Env, msg: QueryMsg) -> StdResult { QueryMsg::AnomalyConfig { denom } => to_json_binary(&query_anomaly_config(deps, denom)?), QueryMsg::RedemptionRate { denom, params } => { - to_json_binary(&get_latest_liquid_stake_rate(deps, denom, params)?) + to_json_binary(&get_redemption_rate(deps, denom, params)?) } QueryMsg::HistoricalRedemptionRates { @@ -270,6 +272,19 @@ pub fn query(deps: Deps, _env: Env, msg: QueryMsg) -> StdResult { params, limit, .. + } => to_json_binary(&get_historical_redemption_rates( + deps, denom, params, limit, + )?), + + QueryMsg::LiquidStakeRate { denom, params } => { + to_json_binary(&get_liquid_stake_rate(deps, denom, params)?) + } + + QueryMsg::HistoricalLiquidStakeRates { + denom, + params, + limit, + .. } => to_json_binary(&get_historical_liquid_stake_rates( deps, denom, params, limit, )?), @@ -292,7 +307,7 @@ fn query_anomaly_config(deps: Deps, denom: String) -> Result, @@ -303,20 +318,27 @@ pub fn get_latest_liquid_stake_rate( }); } - let liquid_stake_rates_history = LIQUID_STAKE_RATES.load(deps.storage, &ibc_denom)?; + let liquid_stake_rates_history = match LIQUID_STAKE_RATES.load(deps.storage, &ibc_denom) { + Ok(history) => history, + Err(_) => { + return Err(ContractError::InvalidQueryRequest { + reason: "liquid stake rate not found".to_string(), + }) + } + }; match liquid_stake_rates_history.get_latest() { - Some(response) => Ok(RedemptionRateResponse { - redemption_rate: response.redemption_rate, - update_time: response.update_time, + Some(r) => Ok(RedemptionRateResponse { + redemption_rate: Decimal::one().checked_div(r.liquid_stake_rate)?, + update_time: r.update_time, }), None => Err(ContractError::InvalidQueryRequest { - reason: "liquid stake rate not found".to_string(), + reason: "redemption rate not found".to_string(), }), } } -pub fn get_historical_liquid_stake_rates( +pub fn get_historical_redemption_rates( deps: Deps, ibc_denom: String, extra: Option, @@ -328,17 +350,125 @@ pub fn get_historical_liquid_stake_rates( }); } - let liquid_stake_rates_history = LIQUID_STAKE_RATES.load(deps.storage, &ibc_denom)?; + let liquid_stake_rates_history = match LIQUID_STAKE_RATES.load(deps.storage, &ibc_denom) { + Ok(history) => history, + Err(_) => { + return Err(ContractError::InvalidQueryRequest { + reason: "liquid stake rate not found".to_string(), + }) + } + }; - let c_value_rates = match limit { + let liquid_stake_rates = match limit { Some(limit) => liquid_stake_rates_history.get_latest_range(limit as usize), None => liquid_stake_rates_history.get_all(), }; + Ok(RedemptionRates { - redemption_rates: c_value_rates, + redemption_rates: liquid_stake_rates + .into_iter() + .map(|r| RedemptionRate { + denom: r.denom, + redemption_rate: Decimal::one().checked_div(r.liquid_stake_rate).unwrap(), + update_time: r.update_time, + }) + .collect(), }) } +pub fn get_liquid_stake_rate( + deps: Deps, + ibc_denom: String, + extra: Option, +) -> Result { + if extra.is_some() { + return Err(ContractError::InvalidQueryRequest { + reason: "params must be None".to_string(), + }); + } + + let liquid_stake_rates_history = match LIQUID_STAKE_RATES.load(deps.storage, &ibc_denom) { + Ok(history) => history, + Err(_) => { + return Err(ContractError::InvalidQueryRequest { + reason: "liquid stake rate not found".to_string(), + }) + } + }; + + match liquid_stake_rates_history.get_latest() { + Some(response) => Ok(LiquidStakeRateResponse { + liquid_stake_rate: response.liquid_stake_rate, + update_time: response.update_time, + }), + None => Err(ContractError::InvalidQueryRequest { + reason: "liquid stake rate not found".to_string(), + }), + } +} + +pub fn get_historical_liquid_stake_rates( + deps: Deps, + ibc_denom: String, + extra: Option, + limit: Option, +) -> Result { + if extra.is_some() { + return Err(ContractError::InvalidQueryRequest { + reason: "params must be None".to_string(), + }); + } + + let liquid_stake_rates_history = match LIQUID_STAKE_RATES.load(deps.storage, &ibc_denom) { + Ok(history) => history, + Err(_) => { + return Err(ContractError::InvalidQueryRequest { + reason: "liquid stake rate not found".to_string(), + }) + } + }; + + let liquid_stake_rates = match limit { + Some(limit) => liquid_stake_rates_history.get_latest_range(limit as usize), + None => liquid_stake_rates_history.get_all(), + }; + Ok(LiquidStakeRates { liquid_stake_rates }) +} + +// migrate handler +#[cfg_attr(not(feature = "library"), entry_point)] +pub fn migrate(deps: DepsMut, _env: Env, msg: MigrateMsg) -> Result { + match msg { + MigrateMsg::V1_1 {} => { + let contract_version = get_contract_version(deps.storage)?; + + // validate contract name + if contract_version.contract != CONTRACT_NAME { + return Err(ContractError::InvalidContractUpgrade { + expected_name: CONTRACT_NAME.to_string(), + actual_name: contract_version.contract, + }); + } + + if contract_version.version != CONTRACT_VERSION_V1 { + return Err(ContractError::InvalidContractVersionForUpgrade { + upgrade_version: CONTRACT_VERSION.to_string(), + expected: CONTRACT_VERSION_V1.to_string(), + actual: contract_version.version, + }); + } + + set_contract_version(deps.storage, CONTRACT_NAME, CONTRACT_VERSION)?; + + let event = Event::new(concatcp!(CONTRACT_NAME, "::migrate")) + .add_attribute("from", CONTRACT_VERSION_V1) + .add_attribute("to", CONTRACT_VERSION); + + Ok(Response::new().add_event(event)) + } + } +} + #[cfg(test)] mod tests { use std::str::FromStr; @@ -347,7 +477,7 @@ mod tests { use cosmwasm_std::testing::{ mock_dependencies, mock_env, mock_info, MockApi, MockQuerier, MockStorage, }; - use cosmwasm_std::{attr, coins, from_json, Empty, OwnedDeps}; + use cosmwasm_std::{attr, coins, from_json, Empty, OwnedDeps, StdError}; const OWNER_ADDRESS: &str = "creator"; @@ -505,8 +635,9 @@ mod tests { }, ) .unwrap(); + let value: RedemptionRateResponse = from_json(res).unwrap(); - assert_eq!(Decimal::percent(1), value.redemption_rate); + assert_eq!(Decimal::from_str("100").unwrap(), value.redemption_rate); } #[test] @@ -530,7 +661,7 @@ mod tests { } #[test] - fn test_historical_queries() { + fn test_historical_liquid_stake_rates_queries() { // Instantiate contract let (mut deps, env, info) = default_instantiate(); @@ -553,6 +684,61 @@ mod tests { execute(deps.as_mut(), env.clone(), info.clone(), msg3).unwrap(); execute(deps.as_mut(), env.clone(), info, msg4).unwrap(); + // Check the corresponding liquid stake rate query + let msg = QueryMsg::HistoricalLiquidStakeRates { + denom: ibc_hash_denom.clone(), + params: None, + limit: None, + }; + let resp = query(deps.as_ref(), env.clone(), msg).unwrap(); + let history_response: LiquidStakeRates = from_json(resp).unwrap(); + assert_eq!( + history_response, + LiquidStakeRates { + liquid_stake_rates: vec![rr3.clone(), rr2.clone(), rr1.clone()] + } + ); + + // Check the liquid stake rate query with a limit + let msg = QueryMsg::HistoricalLiquidStakeRates { + denom: ibc_hash_denom.clone(), + params: None, + limit: Some(2), + }; + let resp = query(deps.as_ref(), env, msg).unwrap(); + let history_response: LiquidStakeRates = from_json(resp).unwrap(); + assert_eq!( + history_response, + LiquidStakeRates { + liquid_stake_rates: vec![rr3, rr2] + } + ); + } + + #[test] + fn test_historical_redemption_rates_queries() { + // Instantiate contract + let (mut deps, env, info) = default_instantiate(); + + let default_bond_denom = "somecoin1".to_string(); + let stk_denom = "stk/somecoin1".to_string(); + let ibc_hash_denom = denom_trace_to_hash(&stk_denom, "transfer", "channel-0").unwrap(); + + let msg1 = get_execute_msg(default_bond_denom.clone(), stk_denom.clone(), "1.01", 1); + let msg2 = get_execute_msg(default_bond_denom.clone(), stk_denom.clone(), "1.02", 2); + let msg3 = get_execute_msg(default_bond_denom.clone(), stk_denom.clone(), "1.03", 2); + let msg4 = get_execute_msg(default_bond_denom.clone(), stk_denom.clone(), "1.04", 3); + + let rr1 = get_test_redemption_rate("1.01", 1); + let rr2 = get_test_redemption_rate("1.03", 2); + let rr3 = get_test_redemption_rate("1.04", 3); + + // Execute each message out of order, and with msg2 coming before msg3 + execute(deps.as_mut(), env.clone(), info.clone(), msg2).unwrap(); + execute(deps.as_mut(), env.clone(), info.clone(), msg1).unwrap(); + execute(deps.as_mut(), env.clone(), info.clone(), msg3).unwrap(); + execute(deps.as_mut(), env.clone(), info, msg4).unwrap(); + // Check the corresponding liquid stake rate query let msg = QueryMsg::HistoricalRedemptionRates { denom: ibc_hash_denom.clone(), @@ -652,14 +838,14 @@ mod tests { assert_eq!( msg_responses2, RedemptionRateResponse { - redemption_rate: Decimal::from_str("2").unwrap(), + redemption_rate: get_redemption_rate_from_c_value("2"), update_time: 2, } ); assert_eq!( msg_responses3, RedemptionRateResponse { - redemption_rate: Decimal::from_str("3").unwrap(), + redemption_rate: get_redemption_rate_from_c_value("3"), update_time: 3, } ) @@ -688,7 +874,7 @@ mod tests { let res = query( deps.as_ref(), mock_env(), - QueryMsg::HistoricalRedemptionRates { + QueryMsg::HistoricalLiquidStakeRates { denom: ibc_hash_denom.clone(), params: None, limit: None, @@ -696,14 +882,17 @@ mod tests { ) .unwrap(); - let history_response: RedemptionRates = from_json(res).unwrap(); - assert_eq!(1, history_response.redemption_rates.len()); + let history_response: LiquidStakeRates = from_json(res).unwrap(); + assert_eq!(1, history_response.liquid_stake_rates.len()); assert_eq!( Decimal::percent(1), - history_response.redemption_rates[0].redemption_rate + history_response.liquid_stake_rates[0].liquid_stake_rate + ); + assert_eq!(1, history_response.liquid_stake_rates[0].update_time); + assert_eq!( + false, + history_response.liquid_stake_rates[0].anomaly_detected ); - assert_eq!(1, history_response.redemption_rates[0].update_time); - assert_eq!(false, history_response.redemption_rates[0].anomaly_detected); // set anomaly config set_anomaly_config( @@ -729,7 +918,7 @@ mod tests { let res = query( deps.as_ref(), mock_env(), - QueryMsg::HistoricalRedemptionRates { + QueryMsg::HistoricalLiquidStakeRates { denom: ibc_hash_denom.clone(), params: None, limit: None, @@ -737,14 +926,129 @@ mod tests { ) .unwrap(); - let history_response: RedemptionRates = from_json(res).unwrap(); - assert_eq!(2, history_response.redemption_rates.len()); + let history_response: LiquidStakeRates = from_json(res).unwrap(); + assert_eq!(2, history_response.liquid_stake_rates.len()); assert_eq!( Decimal::from_str("1.1").unwrap(), - history_response.redemption_rates[0].redemption_rate + history_response.liquid_stake_rates[0].liquid_stake_rate + ); + assert_eq!(2, history_response.liquid_stake_rates[0].update_time); + assert_eq!( + true, + history_response.liquid_stake_rates[0].anomaly_detected + ); + } + + #[test] + fn test_invalid_query_request_with_params() { + let (deps, env, _info) = default_instantiate(); + + let ibc_hash_denom = denom_trace_to_hash("stk/somecoin1", "transfer", "channel-0").unwrap(); + + // Test invalid query request for redemption rate + let msg = QueryMsg::RedemptionRate { + denom: ibc_hash_denom.clone(), + params: Some(to_json_binary(&"params").unwrap()), + }; + + let err: StdError = query(deps.as_ref(), env.clone(), msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: params must be None".to_string()) + ); + + // Test invalid query request for historical redemption rates + let msg = QueryMsg::HistoricalRedemptionRates { + denom: ibc_hash_denom.clone(), + params: Some(to_json_binary(&"params").unwrap()), + limit: None, + }; + + let err: StdError = query(deps.as_ref(), env.clone(), msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: params must be None".to_string()) + ); + + // Test invalid query request for liquid stake rate + let msg = QueryMsg::LiquidStakeRate { + denom: ibc_hash_denom.clone(), + params: Some(to_json_binary(&"params").unwrap()), + }; + + let err: StdError = query(deps.as_ref(), env.clone(), msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: params must be None".to_string()) + ); + + // Test invalid query request for historical liquid stake rates + let msg = QueryMsg::HistoricalLiquidStakeRates { + denom: ibc_hash_denom.clone(), + params: Some(to_json_binary(&"params").unwrap()), + limit: None, + }; + + let err: StdError = query(deps.as_ref(), env, msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: params must be None".to_string()) + ); + } + + #[test] + fn test_invalid_query_request_with_denom() { + let (deps, env, _info) = default_instantiate(); + + // Test invalid query request for redemption rate + let msg = QueryMsg::RedemptionRate { + denom: "denom".to_string(), + params: None, + }; + + let err: StdError = query(deps.as_ref(), env.clone(), msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: liquid stake rate not found".to_string()) + ); + + // Test invalid query request for historical redemption rates + let msg = QueryMsg::HistoricalRedemptionRates { + denom: "denom".to_string(), + params: None, + limit: None, + }; + + let err: StdError = query(deps.as_ref(), env.clone(), msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: liquid stake rate not found".to_string()) + ); + + // Test invalid query request for liquid stake rate + let msg = QueryMsg::LiquidStakeRate { + denom: "denom".to_string(), + params: None, + }; + + let err: StdError = query(deps.as_ref(), env.clone(), msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: liquid stake rate not found".to_string()) + ); + + // Test invalid query request for historical liquid stake rates + let msg = QueryMsg::HistoricalLiquidStakeRates { + denom: "denom".to_string(), + params: None, + limit: None, + }; + + let err: StdError = query(deps.as_ref(), env, msg).unwrap_err(); + assert_eq!( + err, + StdError::generic_err("Invalid query request: liquid stake rate not found".to_string()) ); - assert_eq!(2, history_response.redemption_rates[0].update_time); - assert_eq!(true, history_response.redemption_rates[0].anomaly_detected); } // helper function to instantiate contract @@ -770,16 +1074,26 @@ mod tests { } // helper function to get a test liquid stake rate - fn get_test_liquid_stake_rate(value: &str, time: u64) -> RedemptionRate { + fn get_test_liquid_stake_rate(value: &str, time: u64) -> LiquidStakeRate { let ibc_hash_denom = denom_trace_to_hash("stk/somecoin1", "transfer", "channel-0").unwrap(); - RedemptionRate { + LiquidStakeRate { denom: ibc_hash_denom.clone(), - redemption_rate: Decimal::from_str(value).unwrap(), + liquid_stake_rate: Decimal::from_str(value).unwrap(), update_time: time, anomaly_detected: false, } } + // helper function to get a test liquid stake rate + fn get_test_redemption_rate(value: &str, time: u64) -> RedemptionRate { + let ibc_hash_denom = denom_trace_to_hash("stk/somecoin1", "transfer", "channel-0").unwrap(); + RedemptionRate { + denom: ibc_hash_denom.clone(), + redemption_rate: get_redemption_rate_from_c_value(value), + update_time: time, + } + } + // helper function to get a test execute message fn get_execute_msg( default_bond_denom: String, @@ -812,4 +1126,10 @@ mod tests { let _res = execute(deps.as_mut(), env, info, msg).unwrap(); } + + fn get_redemption_rate_from_c_value(c_value: &str) -> Decimal { + Decimal::one() + .checked_div(Decimal::from_str(c_value).unwrap()) + .unwrap() + } } diff --git a/contracts/osmosis-pool-ratesync/Cargo.toml b/contracts/osmosis-pool-ratesync/Cargo.toml index a142e84..950d0a4 100644 --- a/contracts/osmosis-pool-ratesync/Cargo.toml +++ b/contracts/osmosis-pool-ratesync/Cargo.toml @@ -29,7 +29,7 @@ optimize = """docker run --rm -v "$(pwd)":/code \ """ [dependencies] -ratesync = { path = "../../packages/ratesync", version = "1.0.0" } +ratesync = { path = "../../packages/ratesync", version = "1.1.0" } cosmwasm-schema = "1.3.3" cosmwasm-std = "1.3.3" diff --git a/packages/ratesync/Cargo.toml b/packages/ratesync/Cargo.toml index 9bb3a1e..90780f0 100644 --- a/packages/ratesync/Cargo.toml +++ b/packages/ratesync/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ratesync" -version = "1.0.0" +version = "1.1.0" authors = ["Nabarun Sarkar "] edition = "2021" diff --git a/packages/ratesync/src/lsr_error.rs b/packages/ratesync/src/lsr_error.rs index 253a7cc..d16db74 100644 --- a/packages/ratesync/src/lsr_error.rs +++ b/packages/ratesync/src/lsr_error.rs @@ -1,4 +1,4 @@ -use cosmwasm_std::{Decimal, StdError}; +use cosmwasm_std::{CheckedFromRatioError, Decimal, StdError}; use thiserror::Error; #[derive(Error, Debug, PartialEq)] @@ -6,6 +6,9 @@ pub enum ContractError { #[error("{0}")] Std(#[from] StdError), + #[error("{0}")] + CheckedFromRatioError(#[from] CheckedFromRatioError), + #[error("Unauthorized")] Unauthorized {}, @@ -26,6 +29,22 @@ pub enum ContractError { #[error("The denom for the redemption rate metric must not be an IBC denom, {denom} provided")] InvalidRedemptionRateDenom { denom: String }, + + #[error("Migration is not supported for v1 of the contract")] + MigrationNotSupported {}, + + #[error("Invalid contract version for upgrade {upgrade_version}. Expected: {expected}, Actual: {actual}")] + InvalidContractVersionForUpgrade { + upgrade_version: String, + expected: String, + actual: String, + }, + + #[error("This upgrade is meant for a contract named {expected_name} but the actual contract name is {actual_name}")] + InvalidContractUpgrade { + expected_name: String, + actual_name: String, + }, } impl From for StdError { diff --git a/packages/ratesync/src/lsr_helpers.rs b/packages/ratesync/src/lsr_helpers.rs index 4a25139..48ced87 100644 --- a/packages/ratesync/src/lsr_helpers.rs +++ b/packages/ratesync/src/lsr_helpers.rs @@ -5,7 +5,7 @@ use sha2::{Digest, Sha256}; use crate::{ lsr_error::ContractError, - lsr_state::{RedemptionRate, ANOMALY_CONFIG_BY_DENOM, LIQUID_STAKE_RATES}, + lsr_state::{LiquidStakeRate, ANOMALY_CONFIG_BY_DENOM, LIQUID_STAKE_RATES}, }; const CHANNEL_ID_PERFIX: &str = "channel"; @@ -61,7 +61,7 @@ pub fn validate_redemption_rate( .load(deps.storage, &denom)? .get_latest_range(anomaly_config.count_limit as usize); - let moving_average = calculate_average_redemption_rate(c_value_rates)?; + let moving_average = calculate_average_liquid_stake_rate(c_value_rates)?; let deviation = moving_average.abs_diff(redemption_rate); if moving_average != Decimal::zero() && deviation > anomaly_config.threshold { @@ -71,17 +71,19 @@ pub fn validate_redemption_rate( Ok(false) } -fn calculate_average_redemption_rate( - redemption_rates: Vec, +fn calculate_average_liquid_stake_rate( + liquid_stake_rates: Vec, ) -> Result { - let count = Decimal::from_str(&redemption_rates.len().to_string())?; + let count = Decimal::from_str(&liquid_stake_rates.len().to_string())?; if count.is_zero() { Ok(Decimal::zero()) } else { - let total_redemption_rate: Decimal = - redemption_rates.iter().map(|rr| rr.redemption_rate).sum(); - Ok(total_redemption_rate / count) + let total_liquid_stake_rate: Decimal = liquid_stake_rates + .iter() + .map(|rr| rr.liquid_stake_rate) + .sum(); + Ok(total_liquid_stake_rate / count) } } diff --git a/packages/ratesync/src/lsr_msg.rs b/packages/ratesync/src/lsr_msg.rs index 02a3f7c..83f3f36 100644 --- a/packages/ratesync/src/lsr_msg.rs +++ b/packages/ratesync/src/lsr_msg.rs @@ -3,7 +3,7 @@ use cosmwasm_std::{Addr, Binary, Decimal}; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; -use crate::lsr_state::RedemptionRate; +use crate::lsr_state::LiquidStakeRate; #[derive(Serialize, Deserialize, Clone, Debug, Eq, PartialEq, JsonSchema)] pub struct InstantiateMsg { @@ -89,6 +89,35 @@ pub enum QueryMsg { /// Optional limit on the number of entries to return limit: Option, }, + + /// Returns the liquid stake rate of an stkToken + #[returns(LiquidStakeRateResponse)] + LiquidStakeRate { + /// The denom should be the ibc hash of an stkToken as it lives on the oracle chain + /// (e.g. ibc/{hash(transfer/channel-0/stkuatom)} on Osmosis) + denom: String, + /// Params should always be None, but was included in this query + /// to align with other price oracles that take additional parameters such as TWAP + params: Option, + }, + + /// Returns a list of liquid stake rates over time for an stkToken + #[returns(LiquidStakeRates)] + HistoricalLiquidStakeRates { + /// The denom should be the ibc hash of an stkToken as it lives on the oracle chain + /// (e.g. ibc/{hash(transfer/channel-0/stkuatom)} on Osmosis) + denom: String, + /// Params should always be None, but was included in this query + /// to align with other price oracles that take additional parameters such as TWAP + params: Option, + /// Optional limit on the number of entries to return + limit: Option, + }, +} + +#[cw_serde] +pub enum MigrateMsg { + V1_1 {}, } #[derive(Serialize, Deserialize, Clone, Debug, Eq, PartialEq, JsonSchema)] @@ -119,3 +148,21 @@ pub struct RedemptionRateResponse { pub struct RedemptionRates { pub redemption_rates: Vec, } + +#[cw_serde] +pub struct RedemptionRate { + pub denom: String, + pub redemption_rate: Decimal, + pub update_time: u64, +} + +#[cw_serde] +pub struct LiquidStakeRateResponse { + pub liquid_stake_rate: Decimal, + pub update_time: u64, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)] +pub struct LiquidStakeRates { + pub liquid_stake_rates: Vec, +} diff --git a/packages/ratesync/src/lsr_state.rs b/packages/ratesync/src/lsr_state.rs index 751ae1d..adedee8 100644 --- a/packages/ratesync/src/lsr_state.rs +++ b/packages/ratesync/src/lsr_state.rs @@ -15,20 +15,20 @@ pub struct Config { pub transfer_port_i_d: String, } -/// The RedemptionRate struct represents the c-value of an stkToken +/// The LiquidStakeRate struct represents the c-value of an stkToken #[cw_serde] -pub struct RedemptionRate { +pub struct LiquidStakeRate { /// stkToken denom as an IBC hash, as it appears on the oracle chain pub denom: String, /// The c-value of the stkToken - pub redemption_rate: Decimal, + pub liquid_stake_rate: Decimal, /// The unix timestamp representing when the c-value was last updated pub update_time: u64, /// anomaly detected pub anomaly_detected: bool, } -impl HasTime for RedemptionRate { +impl HasTime for LiquidStakeRate { fn time(&self) -> u64 { self.update_time } @@ -109,6 +109,6 @@ impl Default for AnomalyConfig { pub const CONFIG: Item = Item::new("config"); -pub const LIQUID_STAKE_RATES: Map<&str, History> = Map::new("liquid_stake_rate"); +pub const LIQUID_STAKE_RATES: Map<&str, History> = Map::new("liquid_stake_rate"); pub const ANOMALY_CONFIG_BY_DENOM: Map<&str, AnomalyConfig> = Map::new("anomaly_config_by_denom"); diff --git a/scripts/testnet/exec_lsr.sh b/scripts/testnet/exec_lsr.sh new file mode 100644 index 0000000..f4c2716 --- /dev/null +++ b/scripts/testnet/exec_lsr.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +set -eu +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source ${SCRIPT_DIR}/vars.sh + +owner_address=$($OSMOSISD keys show test -a) +lsr_contract_address=$(cat $METADATA/contract_address_$CONTRACT1.txt) + +code_id=$(cat $METADATA/code_id_$CONTRACT1.txt) +msg=$(cat << EOF +{ + "liquid_stake_rate": { + "default_bond_denom": "uatom", + "stk_denom": "stk/uatom", + "c_value": "1.1", + "controller_chain_time": 1710918023 + } +} +EOF +) + +echo "Exec contract..." + +echo ">>> $OSMOSISD tx wasm execute $lsr_contract_address $msg" +tx=$($OSMOSISD tx wasm execute $lsr_contract_address "$msg" --from test $GAS -y -o json) +tx_hash=$(echo $tx | jq -r .txhash) + +echo "Tx Hash: $tx_hash" +printf 'exec lsr: %s\n' $tx_hash >> $METADATA/tx_logs_$CONTRACT1.txt diff --git a/scripts/testnet/instantiate_lsr_contract.sh b/scripts/testnet/instantiate_lsr_contract.sh new file mode 100644 index 0000000..5b66a3f --- /dev/null +++ b/scripts/testnet/instantiate_lsr_contract.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +set -eu +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source ${SCRIPT_DIR}/vars.sh + +owner_address=$($OSMOSISD keys show test -a) + +code_id=$(cat $METADATA/code_id_$CONTRACT1.txt) +init_msg=$(cat << EOF +{ + "transfer_channel_i_d": "channel-4198", + "transfer_port_i_d": "transfer" +} +EOF +) + +echo "Instantiating contract..." + +echo ">>> $OSMOSISD tx wasm instantiate $code_id $init_msg" +tx=$($OSMOSISD tx wasm instantiate $code_id "$init_msg" --from test --label "plsr" --admin $owner_address $GAS -y -o json) +echo $tx +tx_hash=$(echo $tx | jq -r .txhash) + +echo "Tx Hash: $tx_hash" +echo "instantiate $CONTRACT2: $tx_hash" >> $METADATA/tx_logs_$CONTRACT1.txt + +sleep 10 + +contract_address=$($OSMOSISD q wasm list-contract-by-code "$code_id" -o json | jq -r '.contracts[-1]') +echo "Contract Address: $contract_address" +printf '\n%s' "$contract_address" > $METADATA/contract_address_$CONTRACT1.txt diff --git a/scripts/testnet/query_latest.sh b/scripts/testnet/query_latest.sh index cfb5d4d..3d8aa0e 100644 --- a/scripts/testnet/query_latest.sh +++ b/scripts/testnet/query_latest.sh @@ -6,9 +6,8 @@ source ${SCRIPT_DIR}/vars.sh msg=$(cat << EOF { - "liquid_stake_rate": { - "default_bond_denom": "uatom", - "stk_denom": "stk/uatom" + "redemption_rate": { + "denom": "ibc/47847622DF5F34239E71986A819598F8F3727FE2DA021D99058DC31A2C5F364E" } } EOF