From 8b1555b1af8beffc39abd9bce0bb2b39881cd777 Mon Sep 17 00:00:00 2001 From: Ninjatosba Date: Sun, 14 Apr 2024 13:43:15 +0300 Subject: [PATCH] readme --- README.md | 4 +++- artifacts/checksums.txt | 2 +- artifacts/checksums_intermediate.txt | 2 +- artifacts/raffle_drop.wasm | Bin 168804 -> 171288 bytes src/contract.rs | 29 ++++++++++++++++++--------- src/msg.rs | 2 +- 6 files changed, 25 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index b31de60..3c52803 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,9 @@ The contract is deployed on the Juno Network and integrates with the Nois protoc - **Instantiation**: Sets up the contract with the Nois proxy address and participant count. - **Execution**: - **Request Randomness**: Initiates a randomness request to the Nois protocol, requiring a unique job ID and necessary funds. - - **Pick Winners (Nois Receive)**: Receives randomness from Nois, selects 100 winners, and handles different outcomes based on the job ID context ("test" or regular). + - **Nois Receive**: Receives randomness from Nois, then saves the randomness based on the job ID. If the job id constains the word "test", the contract will save the randomness as a test value. Otherwise, it will save the randomness as the final value. Test value can be reseted if another request is made. But the final value can only be set once. + - **Pick Test Winners**: Selects test winners based on the test randomness value. + - **Pick Winners**: Selects winners based on the final randomness value. - **Queries**: Provides smart queries for accessing participant count, list of winners, admin details, etc. # **Setup and Configuration** diff --git a/artifacts/checksums.txt b/artifacts/checksums.txt index 922c923..b19915e 100644 --- a/artifacts/checksums.txt +++ b/artifacts/checksums.txt @@ -1 +1 @@ -0e07d227b8272b94da7f5e020d401639fe23fd5ffaa1bcb62e365fb61712b8d8 raffle_drop.wasm +a9a6edecd2fc2c37a161d5a28a25c80cf2b577007d4350f92354b2920df476cf raffle_drop.wasm diff --git a/artifacts/checksums_intermediate.txt b/artifacts/checksums_intermediate.txt index 5bd811c..4d5235d 100644 --- a/artifacts/checksums_intermediate.txt +++ b/artifacts/checksums_intermediate.txt @@ -1 +1 @@ -2809aafd2d63401e1756729b144609a3692fda5be4ed3e020c7f1ae48d638152 /target/wasm32-unknown-unknown/release/raffle_drop.wasm +1fd30a662f8a48b58a6a9e6167085550b9fdfedbc06e338f81ec801f7f55c1d4 /target/wasm32-unknown-unknown/release/raffle_drop.wasm diff --git a/artifacts/raffle_drop.wasm b/artifacts/raffle_drop.wasm index 785949bcc1f5efca25fb14a4f280d44eb34f1926..4125ffc83187e3f1c2666cc380071e53f489673a 100644 GIT binary patch delta 60039 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 Z@82s+0~h5X3(fI-1tEGB&m%p9{{y#3wa)+m delta 57180 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 DYQ>N} diff --git a/src/contract.rs b/src/contract.rs index b9cc494..2bf191d 100644 --- a/src/contract.rs +++ b/src/contract.rs @@ -48,9 +48,10 @@ pub fn execute( msg: ExecuteMsg, ) -> Result { match msg { - ExecuteMsg::RequestRandomness { job_id } => { - execute_request_randomness(deps, env, info, job_id) - } + ExecuteMsg::RequestRandomness { + job_id, + delay_in_mins, + } => execute_request_randomness(deps, env, info, job_id, delay_in_mins), ExecuteMsg::NoisReceive { callback } => execute_set_randomness(deps, env, info, callback), ExecuteMsg::PickTestWinners {} => pick_test_winners(deps, env, info), ExecuteMsg::PickWinners {} => pick_winners(deps, env, info), @@ -59,21 +60,29 @@ pub fn execute( pub fn execute_request_randomness( deps: DepsMut, - _env: Env, + env: Env, info: MessageInfo, job_id: String, + delay_in_mins: u64, ) -> Result { let nois_proxy = NOIS_PROXY.load(deps.storage)?; if info.sender != ADMIN.load(deps.storage)? { return Err(ContractError::Unauthorized {}); } - - let res = Response::new().add_message(WasmMsg::Execute { - contract_addr: nois_proxy.into(), - msg: to_json_binary(&ProxyExecuteMsg::GetNextRandomness { job_id })?, - funds: info.funds.clone(), - }); + let now = env.block.time; + let res = Response::new() + .add_message(WasmMsg::Execute { + contract_addr: nois_proxy.into(), + msg: to_json_binary(&ProxyExecuteMsg::GetRandomnessAfter { + after: now.plus_minutes(delay_in_mins), + job_id: job_id.clone(), + })?, + funds: info.funds.clone(), + }) + .add_attribute("action", "request_randomness") + .add_attribute("job_id", job_id) + .add_attribute("after", now.plus_minutes(delay_in_mins).to_string()); Ok(res) } diff --git a/src/msg.rs b/src/msg.rs index caf78e2..e514c0a 100644 --- a/src/msg.rs +++ b/src/msg.rs @@ -9,7 +9,7 @@ pub struct InstantiateMsg { #[cw_serde] pub enum ExecuteMsg { - RequestRandomness { job_id: String }, + RequestRandomness { job_id: String, delay_in_mins: u64 }, NoisReceive { callback: NoisCallback }, PickTestWinners {}, PickWinners {},