From 4a29b1dab390245e807e2159ba9e2a2e406e5f99 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Tue, 10 Sep 2024 21:59:49 +0530 Subject: [PATCH 01/17] feat: update activity checker contract package --- .../contracts/staking_activity_checker/contract.py | 13 +++++++++++++ .../staking_activity_checker/contract.yaml | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/valory/contracts/staking_activity_checker/contract.py b/packages/valory/contracts/staking_activity_checker/contract.py index a20c644..9b251bf 100644 --- a/packages/valory/contracts/staking_activity_checker/contract.py +++ b/packages/valory/contracts/staking_activity_checker/contract.py @@ -42,3 +42,16 @@ def liveness_ratio( contract = cls.get_instance(ledger_api, contract_address) liveness_ratio = contract.functions.livenessRatio().call() return dict(data=liveness_ratio) + + @classmethod + def get_multisig_nonces( + cls, + ledger_api: LedgerApi, + contract_address: str, + multisig: str, + ) -> JSONLike: + """Retrieve the nonces for a given multisig address.""" + contract = cls.get_instance(ledger_api, contract_address) + nonces = contract.functions.getMultisigNonces(multisig).call() + return dict(data=nonces) + diff --git a/packages/valory/contracts/staking_activity_checker/contract.yaml b/packages/valory/contracts/staking_activity_checker/contract.yaml index 7fc6152..451fcbb 100644 --- a/packages/valory/contracts/staking_activity_checker/contract.yaml +++ b/packages/valory/contracts/staking_activity_checker/contract.yaml @@ -8,7 +8,7 @@ aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeigqm6q7kgfzgpcse7zer5uea3s7myolry2r3teovuzqgkn43j7bei build/StakingActivityChecker.json: bafybeiety3kkkmdz2gdzktg54wvmhavftaw4wjnrddztt64jpknagrc6xa - contract.py: bafybeihnil43tcs2jhii5gxhsffzknsvljnnhradi62pnxhs525orc2cw4 + contract.py: bafybeialo57soqxxxozi545hb3gqtf644qr2od4gskexdhhv6nmwpw6ktu fingerprint_ignore_patterns: [] contracts: [] class_name: StakingActivityCheckerContract From d9f0b309e0e8ef1984a52a9bd137221a7063a73e Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Tue, 10 Sep 2024 22:04:25 +0530 Subject: [PATCH 02/17] fix: update rounds --- .../liquidity_trader_abci/behaviours.py | 325 +++++++++++------- .../skills/liquidity_trader_abci/models.py | 2 - .../skills/liquidity_trader_abci/payloads.py | 3 +- .../skills/liquidity_trader_abci/rounds.py | 61 ++-- 4 files changed, 232 insertions(+), 159 deletions(-) diff --git a/packages/valory/skills/liquidity_trader_abci/behaviours.py b/packages/valory/skills/liquidity_trader_abci/behaviours.py index 8065027..761f5ff 100644 --- a/packages/valory/skills/liquidity_trader_abci/behaviours.py +++ b/packages/valory/skills/liquidity_trader_abci/behaviours.py @@ -90,6 +90,13 @@ SAFE_TX_GAS = 0 ETHER_VALUE = 0 +# Liveness ratio from the staking contract is expressed in calls per 10**18 seconds. +LIVENESS_RATIO_SCALE_FACTOR = 10**18 + +# A safety margin in case there is a delay between the moment the KPI condition is +# satisfied, and the moment where the checkpoint is called. +REQUIRED_REQUESTS_SAFETY_MARGIN = 1 + WaitableConditionType = Generator[None, None, Any] @@ -150,6 +157,7 @@ def __init__(self, **kwargs: Any) -> None: self.pools: Dict[str, Any] = {} self.pools[DexTypes.BALANCER.value] = BalancerPoolBehaviour self.pools[DexTypes.UNISWAP_V3.value] = UniswapPoolBehaviour + self.service_staking_state = None self.strategy = SimpleStrategyBehaviour # Read the assets and current pool self.read_current_pool() @@ -389,70 +397,6 @@ def read_current_pool(self) -> None: """Read the current pool as JSON.""" self._read_data("current_pool", self.current_pool_filepath) - -class CallCheckpointBehaviour( - LiquidityTraderBaseBehaviour -): # pylint-disable too-many-ancestors - matching_round = CallCheckpointRound - - def async_act(self) -> Generator: - """Do the action.""" - with self.context.benchmark_tool.measure(self.behaviour_id).local(): - service_staking_state = yield from self._get_service_staking_state( - chain="optimism" - ) - checkpoint_tx_hex = None - min_num_of_safe_tx_required = None - - if service_staking_state == StakingState.STAKED: - is_checkpoint_reached = yield from self._check_if_checkpoint_reached( - chain="optimism" - ) - if is_checkpoint_reached: - self.context.logger.info( - "Checkpoint reached! Preparing checkpoint tx.." - ) - checkpoint_tx_hex = yield from self._prepare_checkpoint_tx( - chain="optimism" - ) - - min_num_of_safe_tx_required = ( - yield from self._calculate_min_num_of_safe_tx_required( - chain="optimism" - ) - ) - self.context.logger.info( - f"The minimum number of safe tx required to unlock rewards are {min_num_of_safe_tx_required}" - ) - - self.shared_state.last_checkpoint_executed_period_number = ( - self.synchronized_data.period_count - ) - - elif service_staking_state == StakingState.EVICTED: - self.context.logger.error("Service has been evicted!") - - else: - self.context.logger.error("Service has not been staked") - - tx_submitter = self.matching_round.auto_round_id() - payload = CallCheckpointPayload( - self.context.agent_address, - tx_submitter, - service_staking_state.value, - min_num_of_safe_tx_required, - checkpoint_tx_hex, - safe_contract_address=self.params.safe_contract_addresses.get( - "optimism" - ), - chain_id="optimism", - ) - - with self.context.benchmark_tool.measure(self.behaviour_id).consensus(): - yield from self.send_a2a_transaction(payload) - yield from self.wait_until_round_end() - self.set_done() - def _calculate_min_num_of_safe_tx_required( self, chain: str ) -> Generator[None, None, Optional[int]]: @@ -463,13 +407,46 @@ def _calculate_min_num_of_safe_tx_required( if not liveness_ratio or not liveness_period: return None - # Calculate the minimum number of transactions - min_num_of_safe_tx_required = math.ceil( - liveness_ratio * liveness_period // 10**18 + current_timestamp = int( + self.round_sequence.last_round_transition_timestamp.timestamp() + ) + + last_ts_checkpoint = yield from self._get_ts_checkpoint(chain="optimism") + min_num_of_safe_tx_required = ( + math.ceil( + max(liveness_period, (current_timestamp - last_ts_checkpoint)) + * liveness_ratio + // LIVENESS_RATIO_SCALE_FACTOR + ) + + REQUIRED_REQUESTS_SAFETY_MARGIN ) return min_num_of_safe_tx_required - + + def _get_next_checkpoint(self, chain: str) -> Generator[None, None, Optional[int]]: + """Get the timestamp in which the next checkpoint is reached.""" + next_checkpoint = yield from self.contract_interact( + performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, + contract_address=self.params.staking_token_contract_address, + contract_public_id=StakingTokenContract.contract_id, + contract_callable="get_next_checkpoint_ts", + data_key="data", + chain_id=chain, + ) + return next_checkpoint + + def _get_ts_checkpoint(self, chain: str) -> Generator[None, None, Optional[int]]: + """Get the ts checkpoint""" + ts_checkpoint = yield from self.contract_interact( + performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, + contract_address=self.params.staking_token_contract_address, + contract_public_id=StakingTokenContract.contract_id, + contract_callable="ts_checkpoint", + data_key="data", + chain_id=chain, + ) + return ts_checkpoint + def _get_liveness_ratio(self, chain: str) -> Generator[None, None, Optional[int]]: liveness_ratio = yield from self.contract_interact( performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, @@ -503,17 +480,87 @@ def _get_liveness_period(self, chain: str) -> Generator[None, None, Optional[int ) return liveness_period + + def _is_staking_kpi_met(self) -> Generator[None, None, Optional[bool]]: + """Return whether the staking KPI has been met (only for staked services).""" + if self.service_staking_state is None: + yield from self._get_service_staking_state(chain="optimism") + + if self.service_staking_state != StakingState.STAKED: + return False + + if self.synchronized_data.min_num_of_safe_tx_required is None: + min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") + if min_num_of_safe_tx_required is None: + self.context.logger.error("Error calculating min number of safe tx required.") + return None + + multisig_nonces_since_last_cp = yield from self._get_multisig_nonces_since_last_cp(chain="optimism", multisig=self.params.safe_contract_addresses.get("optimism")) + if multisig_nonces_since_last_cp and multisig_nonces_since_last_cp >= min_num_of_safe_tx_required: + return True + + return False + + def _get_multisig_nonces(self, chain: str, multisig: str) -> Generator[None, None, Optional[int]]: + multisig_nonces = yield from self.contract_interact( + performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, + contract_address=self.params.staking_activity_checker_contract_address, + contract_public_id=StakingActivityCheckerContract.contract_id, + contract_callable="get_multisig_nonces", + data_key="data", + chain_id=chain, + multisig=multisig, + ) + return multisig_nonces[0] + + def _get_multisig_nonces_since_last_cp(self, chain: str, multisig: str) -> Generator[None, None, Optional[int]]: + multisig_nonces = yield from self._get_multisig_nonces(chain, multisig) + service_info = yield from self._get_service_info(chain) + if service_info is None or len(service_info[2]) == 0: + self.context.logger.error(f"Error fetching service info {service_info}") + return None + + multisig_nonces_on_last_checkpoint = service_info[2][1] + + multisig_nonces_since_last_cp = ( + multisig_nonces - multisig_nonces_on_last_checkpoint + ) + self.context.logger.info(f"Multisig nonces since last checkpoint: {multisig_nonces_since_last_cp}") + return multisig_nonces_since_last_cp + + def _get_service_info(self, chain: str) -> Generator[None, None, Optional[Tuple[Any, Any, Tuple[Any, Any]]]]: + """Get the service info.""" + service_id = self.params.on_chain_service_id + if service_id is None: + self.context.logger.warning( + "Cannot perform any staking-related operations without a configured on-chain service id. " + "Assuming service status 'UNSTAKED'." + ) + return None + + service_info = yield from self.contract_interact( + performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, + contract_address=self.params.staking_token_contract_address, + contract_public_id=StakingTokenContract.contract_id, + contract_callable="get_service_info", + data_key="data", + service_id=service_id, + chain_id=chain, + ) + return service_info + def _get_service_staking_state( self, chain: str - ) -> Generator[None, None, StakingState]: + ) -> Generator[None, None, None]: service_id = self.params.on_chain_service_id if service_id is None: self.context.logger.warning( "Cannot perform any staking-related operations without a configured on-chain service id. " "Assuming service status 'UNSTAKED'." ) - return StakingState.UNSTAKED + self.service_staking_state = StakingState.UNSTAKED + return service_staking_state = yield from self.contract_interact( performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, @@ -529,9 +576,74 @@ def _get_service_staking_state( "Error fetching staking state for service." "Assuming service status 'UNSTAKED'." ) - return StakingState.UNSTAKED + self.service_staking_state = StakingState.UNSTAKED + return + + self.service_staking_state = StakingState(service_staking_state) + return + +class CallCheckpointBehaviour( + LiquidityTraderBaseBehaviour +): # pylint-disable too-many-ancestors + matching_round = CallCheckpointRound + + def async_act(self) -> Generator: + """Do the action.""" + with self.context.benchmark_tool.measure(self.behaviour_id).local(): + yield from self._get_service_staking_state( + chain="optimism" + ) + checkpoint_tx_hex = None + min_num_of_safe_tx_required = None + is_staking_kpi_met = False + if self.service_staking_state == StakingState.STAKED: + is_checkpoint_reached = yield from self._check_if_checkpoint_reached( + chain="optimism" + ) + if is_checkpoint_reached: + self.context.logger.info( + "Checkpoint reached! Preparing checkpoint tx.." + ) + checkpoint_tx_hex = yield from self._prepare_checkpoint_tx( + chain="optimism" + ) + + min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") + + self.context.logger.info( + f"The minimum number of safe tx required to unlock rewards are {min_num_of_safe_tx_required}" + ) - return StakingState(service_staking_state) + is_staking_kpi_met = False + else: + is_staking_kpi_met = yield from self._is_staking_kpi_met() + if is_staking_kpi_met is None: + self.service_staking_state = StakingState.UNSTAKED + + elif self.service_staking_state == StakingState.EVICTED: + self.context.logger.error("Service has been evicted!") + + else: + self.context.logger.error("Service has not been staked") + + tx_submitter = self.matching_round.auto_round_id() + payload = CallCheckpointPayload( + self.context.agent_address, + tx_submitter, + self.service_staking_state.value, + min_num_of_safe_tx_required, + is_staking_kpi_met, + checkpoint_tx_hex, + safe_contract_address=self.params.safe_contract_addresses.get( + "optimism" + ), + chain_id="optimism", + ) + + with self.context.benchmark_tool.measure(self.behaviour_id).consensus(): + yield from self.send_a2a_transaction(payload) + yield from self.wait_until_round_end() + self.set_done() def _check_if_checkpoint_reached( self, chain: str @@ -548,18 +660,6 @@ def _check_if_checkpoint_reached( ) return next_checkpoint <= synced_timestamp - def _get_next_checkpoint(self, chain: str) -> Generator[None, None, Optional[int]]: - """Get the timestamp in which the next checkpoint is reached.""" - next_checkpoint = yield from self.contract_interact( - performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, - contract_address=self.params.staking_token_contract_address, - contract_public_id=StakingTokenContract.contract_id, - contract_callable="get_next_checkpoint_ts", - data_key="data", - chain_id=chain, - ) - return next_checkpoint - def _prepare_checkpoint_tx( self, chain: str ) -> Generator[None, None, Optional[str]]: @@ -615,9 +715,10 @@ def async_act(self) -> Generator: """Do the action.""" with self.context.benchmark_tool.measure(self.behaviour_id).local(): vanity_tx_hex = None - kpi_met_for_the_day = self.synchronized_data.kpi_met_for_the_day - - if not kpi_met_for_the_day: + is_staking_kpi_met = yield from self._is_staking_kpi_met() + if is_staking_kpi_met: + self.context.logger.info("KPI already met for the day!") + else: last_round_id = ( self.context.state.round_sequence._abci_app._previous_rounds[ -1 @@ -629,38 +730,39 @@ def async_act(self) -> Generator: and self.synchronized_data.tx_submitter != CallCheckpointRound.auto_round_id() ) - is_period_threshold_exceeded = self._check_period_threshold_exceeded() + is_period_threshold_exceeded = self.synchronized_data.period_count >= self.params.staking_threshold_period if is_post_tx_settlement_round or is_period_threshold_exceeded: min_num_of_safe_tx_required = ( self.synchronized_data.min_num_of_safe_tx_required ) - if min_num_of_safe_tx_required is None: + if not min_num_of_safe_tx_required: + min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") + + multisig_nonces_since_last_cp = yield from self._get_multisig_nonces_since_last_cp(chain="optimism", multisig=self.params.safe_contract_addresses.get("optimism")) + + num_of_tx_left_to_meet_kpi = ( + min_num_of_safe_tx_required + - multisig_nonces_since_last_cp + ) + if num_of_tx_left_to_meet_kpi > 0: + self.context.logger.info(f"Number of tx left to meet KPI: {num_of_tx_left_to_meet_kpi}") self.context.logger.info( - f"Invalid value for minimum number of safe tx: {min_num_of_safe_tx_required}" + f"Preparing vanity tx.." ) - else: - num_of_tx_left_to_meet_kpi = ( - min_num_of_safe_tx_required - - self.synchronized_data.curr_num_of_safe_tx + vanity_tx_hex = yield from self._prepare_vanity_tx( + chain="optimism" ) - if num_of_tx_left_to_meet_kpi > 0: - self.context.logger.info( - f"KPI not hit for the day, preparing vanity tx.." - ) - vanity_tx_hex = yield from self._prepare_vanity_tx( - chain="optimism" - ) - self.context.logger.info(f"tx hash: {vanity_tx_hex}") - else: - kpi_met_for_the_day = True - self.context.logger.info(f"KPI met for the day!") + self.context.logger.info(f"tx hash: {vanity_tx_hex}") + else: + is_staking_kpi_met = True + self.context.logger.info("KPI met for the day!") tx_submitter = self.matching_round.auto_round_id() payload = CheckStakingKPIMetPayload( self.context.agent_address, tx_submitter, - kpi_met_for_the_day, + is_staking_kpi_met, vanity_tx_hex, safe_contract_address=self.params.safe_contract_addresses.get( "optimism" @@ -672,16 +774,7 @@ def async_act(self) -> Generator: yield from self.send_a2a_transaction(payload) yield from self.wait_until_round_end() self.set_done() - - def _check_period_threshold_exceeded(self) -> Generator[None, None, bool]: - if not self.shared_state.last_checkpoint_executed_period_number: - return False - - elapsed_periods = ( - self.synchronized_data.period_count - - self.shared_state.last_checkpoint_executed_period_number - ) - return elapsed_periods >= self.params.staking_threshold_period + def _prepare_vanity_tx(self, chain: str) -> Generator[None, None, Optional[str]]: safe_address = self.params.safe_contract_addresses.get(chain) diff --git a/packages/valory/skills/liquidity_trader_abci/models.py b/packages/valory/skills/liquidity_trader_abci/models.py index 0504839..5dbfa79 100644 --- a/packages/valory/skills/liquidity_trader_abci/models.py +++ b/packages/valory/skills/liquidity_trader_abci/models.py @@ -45,8 +45,6 @@ class SharedState(BaseSharedState): def __init__(self, *args: Any, skill_context: SkillContext, **kwargs: Any) -> None: """Initialize the state.""" super().__init__(*args, skill_context=skill_context, **kwargs) - # represents the period number at which last checkpoint tx was executed - self.last_checkpoint_executed_period_number: Optional[int] = None Requests = BaseRequests diff --git a/packages/valory/skills/liquidity_trader_abci/payloads.py b/packages/valory/skills/liquidity_trader_abci/payloads.py index 1602efc..f6ae3db 100644 --- a/packages/valory/skills/liquidity_trader_abci/payloads.py +++ b/packages/valory/skills/liquidity_trader_abci/payloads.py @@ -32,6 +32,7 @@ class CallCheckpointPayload(BaseTxPayload): tx_submitter: str service_staking_state: int min_num_of_safe_tx_required: Optional[int] + is_staking_kpi_met: Optional[bool] tx_hash: Optional[str] safe_contract_address: Optional[str] chain_id: Optional[str] @@ -42,7 +43,7 @@ class CheckStakingKPIMetPayload(BaseTxPayload): """A transaction payload for the CheckStakingKPIMetRound.""" tx_submitter: str - kpi_met_for_the_day: Optional[bool] + is_staking_kpi_met: Optional[bool] tx_hash: Optional[str] safe_contract_address: Optional[str] chain_id: Optional[str] diff --git a/packages/valory/skills/liquidity_trader_abci/rounds.py b/packages/valory/skills/liquidity_trader_abci/rounds.py index f036eed..ce3a17e 100644 --- a/packages/valory/skills/liquidity_trader_abci/rounds.py +++ b/packages/valory/skills/liquidity_trader_abci/rounds.py @@ -69,8 +69,9 @@ class Event(Enum): UPDATE = "update" VANITY_TX_EXECUTED = "vanity_tx_executed" WAIT = "wait" - - + STAKING_KPI_NOT_MET = "staking_kpi_not_met" + STAKING_KPI_MET = "staking_kpi_met" + WAIT_FOR_PERIODS_TO_PASS = "wait_for_periods_to_pass" class SynchronizedData(BaseSynchronizedData): """ Class to represent the synchronized data. @@ -151,15 +152,6 @@ def min_num_of_safe_tx_required(self) -> Optional[int]: """Get the min number of safe tx required.""" return cast(int, self.db.get("min_num_of_safe_tx_required")) - @property - def curr_num_of_safe_tx(self) -> int: - """Get the current number of safe tx.""" - return cast(int, self.db.get("curr_num_of_safe_tx", 0)) - - @property - def total_num_of_safe_tx(self) -> int: - """Get the total number of safe tx.""" - return cast(int, self.db.get("total_num_of_safe_tx", 0)) @property def participant_to_checkpoint(self) -> DeserializedCollection: @@ -172,9 +164,9 @@ def participant_to_staking_kpi(self) -> DeserializedCollection: return self._get_deserialized("participant_to_staking_kpi") @property - def kpi_met_for_the_day(self) -> Optional[bool]: + def is_staking_kpi_met(self) -> Optional[bool]: """Get kpi met for the day.""" - return cast(int, self.db.get("kpi_met_for_the_day", False)) + return cast(int, self.db.get("is_staking_kpi_met", False)) class CallCheckpointRound(CollectSameUntilThresholdRound): @@ -187,6 +179,7 @@ class CallCheckpointRound(CollectSameUntilThresholdRound): get_name(SynchronizedData.tx_submitter), get_name(SynchronizedData.service_staking_state), get_name(SynchronizedData.min_num_of_safe_tx_required), + get_name(SynchronizedData.is_staking_kpi_met), get_name(SynchronizedData.most_voted_tx_hash), get_name(SynchronizedData.safe_contract_address), ) @@ -216,12 +209,14 @@ def end_block(self) -> Optional[Tuple[BaseSynchronizedData, Enum]]: if synced_data.service_staking_state == StakingState.EVICTED.value: return synced_data, Event.SERVICE_EVICTED - if synced_data.most_voted_tx_hash is None: - return synced_data, Event.NEXT_CHECKPOINT_NOT_REACHED_YET + if synced_data.most_voted_tx_hash is None and synced_data.is_staking_kpi_met == False: + return synced_data, Event.STAKING_KPI_NOT_MET + + if synced_data.most_voted_tx_hash is None and synced_data.is_staking_kpi_met == True: + return synced_data, Event.STAKING_KPI_MET return res - class CheckStakingKPIMetRound(CollectSameUntilThresholdRound): """CheckStakingKPIMetRound""" @@ -232,7 +227,7 @@ class CheckStakingKPIMetRound(CollectSameUntilThresholdRound): collection_key = get_name(SynchronizedData.participant_to_staking_kpi) selection_key = ( get_name(SynchronizedData.tx_submitter), - get_name(SynchronizedData.kpi_met_for_the_day), + get_name(SynchronizedData.is_staking_kpi_met), get_name(SynchronizedData.most_voted_tx_hash), get_name(SynchronizedData.safe_contract_address), ) @@ -248,14 +243,14 @@ def end_block(self) -> Optional[Tuple[BaseSynchronizedData, Enum]]: if event != Event.DONE: return res - if synced_data.kpi_met_for_the_day == True: - return synced_data, Event.DONE + if synced_data.is_staking_kpi_met == True: + return synced_data, Event.STAKING_KPI_MET else: if synced_data.most_voted_tx_hash is not None: return synced_data, Event.SETTLE else: - return synced_data, Event.DONE + return synced_data, Event.WAIT_FOR_PERIODS_TO_PASS class GetPositionsRound(CollectSameUntilThresholdRound): @@ -369,20 +364,6 @@ def end_block(self) -> Optional[Tuple[BaseSynchronizedData, Enum]]: synced_data = SynchronizedData(self.synchronized_data.db) event = submitter_to_event.get(synced_data.tx_submitter, Event.UNRECOGNIZED) - # if a checkpoint tx was just executed, we reset the current number of safe tx and kpi met to False - if event == Event.CHECKPOINT_TX_EXECUTED: - self.synchronized_data.update( - curr_num_of_safe_tx=0, kpi_met_for_the_day=False - ) - - # if any tx was executed we update the current safe tx count and total safe tx count - if event != Event.UNRECOGNIZED: - updated_curr_num_of_safe_tx = synced_data.curr_num_of_safe_tx + 1 - updated_total_num_of_safe_tx = synced_data.total_num_of_safe_tx + 1 - self.synchronized_data.update( - curr_num_of_safe_tx=updated_curr_num_of_safe_tx, - total_num_of_safe_tx=updated_total_num_of_safe_tx, - ) return synced_data, event @@ -428,15 +409,17 @@ class LiquidityTraderAbciApp(AbciApp[Event]): Event.SETTLE: FinishedCallCheckpointRound, Event.SERVICE_NOT_STAKED: GetPositionsRound, Event.SERVICE_EVICTED: GetPositionsRound, - Event.NEXT_CHECKPOINT_NOT_REACHED_YET: GetPositionsRound, Event.ROUND_TIMEOUT: CallCheckpointRound, Event.NO_MAJORITY: CallCheckpointRound, + Event.STAKING_KPI_NOT_MET: CheckStakingKPIMetRound, + Event.STAKING_KPI_MET: GetPositionsRound, }, CheckStakingKPIMetRound: { - Event.DONE: GetPositionsRound, + Event.STAKING_KPI_MET: GetPositionsRound, Event.SETTLE: FinishedCheckStakingKPIMetRound, Event.ROUND_TIMEOUT: CheckStakingKPIMetRound, Event.NO_MAJORITY: CheckStakingKPIMetRound, + Event.WAIT_FOR_PERIODS_TO_PASS: GetPositionsRound, }, GetPositionsRound: { Event.DONE: EvaluateStrategyRound, @@ -459,7 +442,7 @@ class LiquidityTraderAbciApp(AbciApp[Event]): }, PostTxSettlementRound: { Event.ACTION_EXECUTED: DecisionMakingRound, - Event.CHECKPOINT_TX_EXECUTED: CheckStakingKPIMetRound, + Event.CHECKPOINT_TX_EXECUTED: CallCheckpointRound, Event.VANITY_TX_EXECUTED: CheckStakingKPIMetRound, Event.ROUND_TIMEOUT: PostTxSettlementRound, Event.UNRECOGNIZED: FailedMultiplexerRound, @@ -486,9 +469,7 @@ class LiquidityTraderAbciApp(AbciApp[Event]): { get_name(SynchronizedData.last_reward_claimed_timestamp), get_name(SynchronizedData.min_num_of_safe_tx_required), - get_name(SynchronizedData.curr_num_of_safe_tx), - get_name(SynchronizedData.total_num_of_safe_tx), - get_name(SynchronizedData.kpi_met_for_the_day), + get_name(SynchronizedData.is_staking_kpi_met), } ) db_pre_conditions: Dict[AppState, Set[str]] = { From a34b2ae865046528055089bb666d64b8d1d2d558 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Tue, 10 Sep 2024 22:05:21 +0530 Subject: [PATCH 03/17] fix: formatters --- .../liquidity_trader_abci/behaviours.py | 101 ++++++++++++------ .../skills/liquidity_trader_abci/rounds.py | 16 ++- 2 files changed, 79 insertions(+), 38 deletions(-) diff --git a/packages/valory/skills/liquidity_trader_abci/behaviours.py b/packages/valory/skills/liquidity_trader_abci/behaviours.py index 761f5ff..596c470 100644 --- a/packages/valory/skills/liquidity_trader_abci/behaviours.py +++ b/packages/valory/skills/liquidity_trader_abci/behaviours.py @@ -422,7 +422,7 @@ def _calculate_min_num_of_safe_tx_required( ) return min_num_of_safe_tx_required - + def _get_next_checkpoint(self, chain: str) -> Generator[None, None, Optional[int]]: """Get the timestamp in which the next checkpoint is reached.""" next_checkpoint = yield from self.contract_interact( @@ -434,7 +434,7 @@ def _get_next_checkpoint(self, chain: str) -> Generator[None, None, Optional[int chain_id=chain, ) return next_checkpoint - + def _get_ts_checkpoint(self, chain: str) -> Generator[None, None, Optional[int]]: """Get the ts checkpoint""" ts_checkpoint = yield from self.contract_interact( @@ -446,7 +446,7 @@ def _get_ts_checkpoint(self, chain: str) -> Generator[None, None, Optional[int]] chain_id=chain, ) return ts_checkpoint - + def _get_liveness_ratio(self, chain: str) -> Generator[None, None, Optional[int]]: liveness_ratio = yield from self.contract_interact( performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, @@ -480,7 +480,7 @@ def _get_liveness_period(self, chain: str) -> Generator[None, None, Optional[int ) return liveness_period - + def _is_staking_kpi_met(self) -> Generator[None, None, Optional[bool]]: """Return whether the staking KPI has been met (only for staked services).""" if self.service_staking_state is None: @@ -490,19 +490,33 @@ def _is_staking_kpi_met(self) -> Generator[None, None, Optional[bool]]: return False if self.synchronized_data.min_num_of_safe_tx_required is None: - min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") + min_num_of_safe_tx_required = ( + yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") + ) if min_num_of_safe_tx_required is None: - self.context.logger.error("Error calculating min number of safe tx required.") + self.context.logger.error( + "Error calculating min number of safe tx required." + ) return None - - multisig_nonces_since_last_cp = yield from self._get_multisig_nonces_since_last_cp(chain="optimism", multisig=self.params.safe_contract_addresses.get("optimism")) - if multisig_nonces_since_last_cp and multisig_nonces_since_last_cp >= min_num_of_safe_tx_required: + + multisig_nonces_since_last_cp = ( + yield from self._get_multisig_nonces_since_last_cp( + chain="optimism", + multisig=self.params.safe_contract_addresses.get("optimism"), + ) + ) + if ( + multisig_nonces_since_last_cp + and multisig_nonces_since_last_cp >= min_num_of_safe_tx_required + ): return True - + return False - - def _get_multisig_nonces(self, chain: str, multisig: str) -> Generator[None, None, Optional[int]]: + + def _get_multisig_nonces( + self, chain: str, multisig: str + ) -> Generator[None, None, Optional[int]]: multisig_nonces = yield from self.contract_interact( performative=ContractApiMessage.Performative.GET_RAW_TRANSACTION, contract_address=self.params.staking_activity_checker_contract_address, @@ -513,8 +527,10 @@ def _get_multisig_nonces(self, chain: str, multisig: str) -> Generator[None, Non multisig=multisig, ) return multisig_nonces[0] - - def _get_multisig_nonces_since_last_cp(self, chain: str, multisig: str) -> Generator[None, None, Optional[int]]: + + def _get_multisig_nonces_since_last_cp( + self, chain: str, multisig: str + ) -> Generator[None, None, Optional[int]]: multisig_nonces = yield from self._get_multisig_nonces(chain, multisig) service_info = yield from self._get_service_info(chain) if service_info is None or len(service_info[2]) == 0: @@ -526,10 +542,14 @@ def _get_multisig_nonces_since_last_cp(self, chain: str, multisig: str) -> Gener multisig_nonces_since_last_cp = ( multisig_nonces - multisig_nonces_on_last_checkpoint ) - self.context.logger.info(f"Multisig nonces since last checkpoint: {multisig_nonces_since_last_cp}") + self.context.logger.info( + f"Multisig nonces since last checkpoint: {multisig_nonces_since_last_cp}" + ) return multisig_nonces_since_last_cp - - def _get_service_info(self, chain: str) -> Generator[None, None, Optional[Tuple[Any, Any, Tuple[Any, Any]]]]: + + def _get_service_info( + self, chain: str + ) -> Generator[None, None, Optional[Tuple[Any, Any, Tuple[Any, Any]]]]: """Get the service info.""" service_id = self.params.on_chain_service_id if service_id is None: @@ -549,10 +569,8 @@ def _get_service_info(self, chain: str) -> Generator[None, None, Optional[Tuple chain_id=chain, ) return service_info - - def _get_service_staking_state( - self, chain: str - ) -> Generator[None, None, None]: + + def _get_service_staking_state(self, chain: str) -> Generator[None, None, None]: service_id = self.params.on_chain_service_id if service_id is None: self.context.logger.warning( @@ -582,6 +600,7 @@ def _get_service_staking_state( self.service_staking_state = StakingState(service_staking_state) return + class CallCheckpointBehaviour( LiquidityTraderBaseBehaviour ): # pylint-disable too-many-ancestors @@ -590,9 +609,7 @@ class CallCheckpointBehaviour( def async_act(self) -> Generator: """Do the action.""" with self.context.benchmark_tool.measure(self.behaviour_id).local(): - yield from self._get_service_staking_state( - chain="optimism" - ) + yield from self._get_service_staking_state(chain="optimism") checkpoint_tx_hex = None min_num_of_safe_tx_required = None is_staking_kpi_met = False @@ -608,8 +625,12 @@ def async_act(self) -> Generator: chain="optimism" ) - min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") - + min_num_of_safe_tx_required = ( + yield from self._calculate_min_num_of_safe_tx_required( + chain="optimism" + ) + ) + self.context.logger.info( f"The minimum number of safe tx required to unlock rewards are {min_num_of_safe_tx_required}" ) @@ -730,26 +751,39 @@ def async_act(self) -> Generator: and self.synchronized_data.tx_submitter != CallCheckpointRound.auto_round_id() ) - is_period_threshold_exceeded = self.synchronized_data.period_count >= self.params.staking_threshold_period + is_period_threshold_exceeded = ( + self.synchronized_data.period_count + >= self.params.staking_threshold_period + ) if is_post_tx_settlement_round or is_period_threshold_exceeded: min_num_of_safe_tx_required = ( self.synchronized_data.min_num_of_safe_tx_required ) if not min_num_of_safe_tx_required: - min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") + min_num_of_safe_tx_required = ( + yield from self._calculate_min_num_of_safe_tx_required( + chain="optimism" + ) + ) - multisig_nonces_since_last_cp = yield from self._get_multisig_nonces_since_last_cp(chain="optimism", multisig=self.params.safe_contract_addresses.get("optimism")) + multisig_nonces_since_last_cp = ( + yield from self._get_multisig_nonces_since_last_cp( + chain="optimism", + multisig=self.params.safe_contract_addresses.get( + "optimism" + ), + ) + ) num_of_tx_left_to_meet_kpi = ( - min_num_of_safe_tx_required - - multisig_nonces_since_last_cp + min_num_of_safe_tx_required - multisig_nonces_since_last_cp ) if num_of_tx_left_to_meet_kpi > 0: - self.context.logger.info(f"Number of tx left to meet KPI: {num_of_tx_left_to_meet_kpi}") self.context.logger.info( - f"Preparing vanity tx.." + f"Number of tx left to meet KPI: {num_of_tx_left_to_meet_kpi}" ) + self.context.logger.info(f"Preparing vanity tx..") vanity_tx_hex = yield from self._prepare_vanity_tx( chain="optimism" ) @@ -774,7 +808,6 @@ def async_act(self) -> Generator: yield from self.send_a2a_transaction(payload) yield from self.wait_until_round_end() self.set_done() - def _prepare_vanity_tx(self, chain: str) -> Generator[None, None, Optional[str]]: safe_address = self.params.safe_contract_addresses.get(chain) diff --git a/packages/valory/skills/liquidity_trader_abci/rounds.py b/packages/valory/skills/liquidity_trader_abci/rounds.py index ce3a17e..f078e24 100644 --- a/packages/valory/skills/liquidity_trader_abci/rounds.py +++ b/packages/valory/skills/liquidity_trader_abci/rounds.py @@ -72,6 +72,8 @@ class Event(Enum): STAKING_KPI_NOT_MET = "staking_kpi_not_met" STAKING_KPI_MET = "staking_kpi_met" WAIT_FOR_PERIODS_TO_PASS = "wait_for_periods_to_pass" + + class SynchronizedData(BaseSynchronizedData): """ Class to represent the synchronized data. @@ -152,7 +154,6 @@ def min_num_of_safe_tx_required(self) -> Optional[int]: """Get the min number of safe tx required.""" return cast(int, self.db.get("min_num_of_safe_tx_required")) - @property def participant_to_checkpoint(self) -> DeserializedCollection: """Get the participants to the checkpoint round.""" @@ -209,14 +210,21 @@ def end_block(self) -> Optional[Tuple[BaseSynchronizedData, Enum]]: if synced_data.service_staking_state == StakingState.EVICTED.value: return synced_data, Event.SERVICE_EVICTED - if synced_data.most_voted_tx_hash is None and synced_data.is_staking_kpi_met == False: + if ( + synced_data.most_voted_tx_hash is None + and synced_data.is_staking_kpi_met == False + ): return synced_data, Event.STAKING_KPI_NOT_MET - - if synced_data.most_voted_tx_hash is None and synced_data.is_staking_kpi_met == True: + + if ( + synced_data.most_voted_tx_hash is None + and synced_data.is_staking_kpi_met == True + ): return synced_data, Event.STAKING_KPI_MET return res + class CheckStakingKPIMetRound(CollectSameUntilThresholdRound): """CheckStakingKPIMetRound""" From e73265889946ba05a1cbeaa5b0b601386d1bf293 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Tue, 10 Sep 2024 22:06:35 +0530 Subject: [PATCH 04/17] fix: update fsm --- .../liquidity_trader_abci/fsm_specification.yaml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/valory/skills/liquidity_trader_abci/fsm_specification.yaml b/packages/valory/skills/liquidity_trader_abci/fsm_specification.yaml index 2f0efbb..89d93d2 100644 --- a/packages/valory/skills/liquidity_trader_abci/fsm_specification.yaml +++ b/packages/valory/skills/liquidity_trader_abci/fsm_specification.yaml @@ -13,6 +13,9 @@ alphabet_in: - UNRECOGNIZED - UPDATE - WAIT +- STAKING_KPI_NOT_MET +- STAKING_KPI_MET +- WAIT_FOR_PERIODS_TO_PASS default_start_state: CallCheckpointRound final_states: - FailedMultiplexerRound @@ -49,10 +52,13 @@ transition_func: (CallCheckpointRound, SETTLE): FinishedCallCheckpointRound (CallCheckpointRound, SERVICE_EVICTED): GetPositionsRound (CallCheckpointRound, SERVICE_NOT_STAKED): GetPositionsRound - (CheckStakingKPIMetRound, DONE): GetPositionsRound + (CallCheckpointRound, STAKING_KPI_NOT_MET): CheckStakingKPIMetRound + (CallCheckpointRound, STAKING_KPI_MET): GetPositionsRound + (CheckStakingKPIMetRound, STAKING_KPI_MET): GetPositionsRound (CheckStakingKPIMetRound, NO_MAJORITY): CheckStakingKPIMetRound (CheckStakingKPIMetRound, ROUND_TIMEOUT): CheckStakingKPIMetRound (CheckStakingKPIMetRound, SETTLE): FinishedCheckStakingKPIMetRound + (CheckStakingKPIMetRound, WAIT_FOR_PERIODS_TO_PASS): GetPositionsRound (DecisionMakingRound, DONE): FinishedDecisionMakingRound (DecisionMakingRound, ERROR): FinishedDecisionMakingRound (DecisionMakingRound, NO_MAJORITY): DecisionMakingRound @@ -67,7 +73,7 @@ transition_func: (GetPositionsRound, NO_MAJORITY): GetPositionsRound (GetPositionsRound, ROUND_TIMEOUT): GetPositionsRound (PostTxSettlementRound, ACTION_EXECUTED): DecisionMakingRound - (PostTxSettlementRound, CALLPOINT_TX_EXECUTED): CheckStakingKPIMetRound + (PostTxSettlementRound, CALLPOINT_TX_EXECUTED): CallCheckpointRound (PostTxSettlementRound, VANITY_TX_EXECUTED): CheckStakingKPIMetRound (PostTxSettlementRound, ROUND_TIMEOUT): PostTxSettlementRound (PostTxSettlementRound, UNRECOGNIZED): FailedMultiplexerRound From 5a86f65ecd6cc9c4f3de0130079f9f53d896f933 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Tue, 10 Sep 2024 22:06:54 +0530 Subject: [PATCH 05/17] fix: generators --- packages/packages.json | 12 ++++++------ packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- .../valory/skills/liquidity_trader_abci/skill.yaml | 14 +++++++------- packages/valory/skills/optimus_abci/skill.yaml | 8 ++++---- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index b19b740..b458c5e 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -6,12 +6,12 @@ "contract/valory/uniswap_v3_non_fungible_position_manager/0.1.0": "bafybeieljamerttxyo7z2yokwripnnhzkn4zply5lz457vsixf5wfu5px4", "contract/valory/uniswap_v3_pool/0.1.0": "bafybeidglijnyueahpgivaykbhio2r3ovfeo23a256y3yb6g7be4hngx3a", "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", - "contract/valory/staking_token/0.1.0": "bafybeiakvgm2byyjfunb4npthioku2kwqpbcwm6dfov4akirqixtju6oai", - "contract/valory/staking_activity_checker/0.1.0": "bafybeigfiqmvzsf2etp6grtnfqg4y7nrlhwohbhfvggewhgvvolascs4fe", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeieoj2cuuwk32settpv44ailcyrd4lh7mj6exr5ufssnms3teyhxze", - "skill/valory/optimus_abci/0.1.0": "bafybeigfneogfptzhfovlqy5r57rlei7b6ixe2k37ke6xrv6lr76kcviai", - "agent/valory/optimus/0.1.0": "bafybeibubmgk63swmozdglm3hmu4n3bz2xesxggdxdtx6cuso7feh3a7xu", - "service/valory/optimus/0.1.0": "bafybeie4mwft76qkajsn3wypza5vcpvx5vdaosywqzzsnohr4my6o2xu3y" + "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", + "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeiejzjli6o4u7kh2qo53rwsgave4wnscdyf2bs7txizg32r5rzjjmu", + "skill/valory/optimus_abci/0.1.0": "bafybeihh67i5526pyrdj22cq4otseyaddsuzokytisduvj7rzqcytee6sq", + "agent/valory/optimus/0.1.0": "bafybeicmzbsnm47otbu6t3lrwwflyrk5xddnby5mfmvjsa5egq73qrayxe", + "service/valory/optimus/0.1.0": "bafybeifnwwfkjjz3cr7kycjnbnwmk4nryemgavamv6eruqfaegic5guc2u" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index 125e4de..fd704be 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeieoj2cuuwk32settpv44ailcyrd4lh7mj6exr5ufssnms3teyhxze -- valory/optimus_abci:0.1.0:bafybeigfneogfptzhfovlqy5r57rlei7b6ixe2k37ke6xrv6lr76kcviai +- valory/liquidity_trader_abci:0.1.0:bafybeiejzjli6o4u7kh2qo53rwsgave4wnscdyf2bs7txizg32r5rzjjmu +- valory/optimus_abci:0.1.0:bafybeihh67i5526pyrdj22cq4otseyaddsuzokytisduvj7rzqcytee6sq - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index fe159a1..db75ede 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeibubmgk63swmozdglm3hmu4n3bz2xesxggdxdtx6cuso7feh3a7xu +agent: valory/optimus:0.1.0:bafybeicmzbsnm47otbu6t3lrwwflyrk5xddnby5mfmvjsa5egq73qrayxe number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index 9210d18..bcee617 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,16 +7,16 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeig6rcjcpbr3hr2o4rx45ven3ok7zxn6bkq6acbb3uw6dfiwwzmvse + behaviours.py: bafybeie4ytrpgsp24pgkgi5373eu4afiu6gyfqepboqni5sip5dwpdq6ei dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm - fsm_specification.yaml: bafybeia7u62xbzkllitosyelsur3tmmet7k63lb6xzjdpqreb67siljbiu + fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 - models.py: bafybeibc4okx7cd5nsf7soq6vxt2prvp3y56gwqjufeng4pzwnfehvqiwa - payloads.py: bafybeif2n5mdjv2vo7vulfxwgzchqyvklok746davqwwbwlmfd5xoycaku + models.py: bafybeicu6nuwivewuhjvoq6p362rz5bvwtchqss5ce6b32km2brvybuzdi + payloads.py: bafybeigi7t4fe3gr4reuq2d2xz4qblbxlo6wwy2hwh7htaaihjoya7uqky pool_behaviour.py: bafybeiaheuesscgqzwjbpyrezgwpdbdfurlmfwbc462qv6rblwwxlx5dpm pools/balancer.py: bafybeieo53qtt557632vtp3x3huagdpqevptextbwd7euk6hpoz6ybtuci pools/uniswap.py: bafybeif2cjbtjh5altlgranmgrif4yaevnn344fn3askbjde5h4y4rh2mq - rounds.py: bafybeidqfjrqznv2e6jjvnb76exzksuef5nof4ebvz2rsv4rxgciqjf2pu + rounds.py: bafybeihjdqygj33kckeedunzygcjf4lcehnctm75zre35a2pwqbglttbw4 strategies/simple_strategy.py: bafybeig2iygxz5gewmiyeawubs5f4pr5e3st22lmdkxthlfq7t5kbluw4a strategy_behaviour.py: bafybeidk6sorg47kuuubamcccksi65x3txldyo7y2hm5opbye2ghmz2ljy fingerprint_ignore_patterns: [] @@ -30,8 +30,8 @@ contracts: - valory/uniswap_v3_non_fungible_position_manager:0.1.0:bafybeieljamerttxyo7z2yokwripnnhzkn4zply5lz457vsixf5wfu5px4 - valory/uniswap_v3_pool:0.1.0:bafybeidglijnyueahpgivaykbhio2r3ovfeo23a256y3yb6g7be4hngx3a - valory/merkl_distributor:0.1.0:bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4 -- valory/staking_token:0.1.0:bafybeiakvgm2byyjfunb4npthioku2kwqpbcwm6dfov4akirqixtju6oai -- valory/staking_activity_checker:0.1.0:bafybeigfiqmvzsf2etp6grtnfqg4y7nrlhwohbhfvggewhgvvolascs4fe +- valory/staking_token:0.1.0:bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu +- valory/staking_activity_checker:0.1.0:bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq protocols: - valory/contract_api:1.0.0:bafybeidgu7o5llh26xp3u3ebq3yluull5lupiyeu6iooi2xyymdrgnzq5i - valory/ledger_api:1.0.0:bafybeihdk6psr4guxmbcrc26jr2cbgzpd5aljkqvpwo64bvaz7tdti2oni diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index 6ec9ed4..ecea1b7 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -8,11 +8,11 @@ aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeiechr3zr5bc4xl3vvs2p2gti54ily7ao2gu4ff5lys6cixehzkdea behaviours.py: bafybeig3agtm256pl7rekx3i3kbz6h5hrnneu44f4pzkqp4mwtdxuob54e - composition.py: bafybeieentvbw64iagpiytcugj552klqpbw2bllemk6fqb6vjxuuvo3n24 + composition.py: bafybeigxpycqh7xnqwdj5eg2ln6kqchbwvwuvzjtpwhgylr6qb56ooo7wu dialogues.py: bafybeiafoomno5pn6qrx43jxf2opxkil5eg4nod6jhd5oqwwplfz4x6dke - fsm_specification.yaml: bafybeidf2q5f32qajgahjqkn4l7gjb2gawsner6k3ihaqc2nuevybaainm + fsm_specification.yaml: bafybeia5uzg27tczkp3gw6k73zrpnnesbdzhpjt6ylyxfpvbarlixmueme handlers.py: bafybeife4nrwqiwrx2ucza3vk6t5inpkncuewehtdnitax4lmqq2ptoona - models.py: bafybeicaoh25u5tacnjyexzxwl4ojqmcllqfhntz2ecr35uz7rjkaam3vu + models.py: bafybeihvuvhlmumkoqhhnw3bw4ixwvjkb3gwkgnu653ggj3zpqahyyasui fingerprint_ignore_patterns: [] connections: [] contracts: [] @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeieoj2cuuwk32settpv44ailcyrd4lh7mj6exr5ufssnms3teyhxze +- valory/liquidity_trader_abci:0.1.0:bafybeiejzjli6o4u7kh2qo53rwsgave4wnscdyf2bs7txizg32r5rzjjmu - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From 13e0ca30f710ba617529663d45cd6ce1e80afd4e Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Tue, 10 Sep 2024 22:15:49 +0530 Subject: [PATCH 06/17] fix: update git leaks ignore --- .gitleaksignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitleaksignore b/.gitleaksignore index 05a4d32..5be9bfa 100644 --- a/.gitleaksignore +++ b/.gitleaksignore @@ -251,3 +251,4 @@ bea8fa71765fab49fd7b0a7b99e27019b5df0d5e:scripts/api_data.json:generic-api-key:2 bea8fa71765fab49fd7b0a7b99e27019b5df0d5e:scripts/api_data.json:generic-api-key:21 5a9e025d6b0cd4115123d890ec90cd69a8fc682f:scripts/api_data.json:generic-api-key:20 5a9e025d6b0cd4115123d890ec90cd69a8fc682f:scripts/api_data.json:generic-api-key:21 +92a4c419cc5a67f25f5768cc985c73b80114314c:packages/valory/contracts/staking_token/contract.yaml:generic-api-key:10 From a28fb9e5f4d0d1d96b8053a427e19d343d3c8622 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Wed, 11 Sep 2024 10:36:14 +0530 Subject: [PATCH 07/17] fix: multisig nonces --- packages/packages.json | 8 ++++---- packages/valory/services/optimus/service.yaml | 2 +- .../valory/skills/liquidity_trader_abci/behaviours.py | 4 ++-- packages/valory/skills/liquidity_trader_abci/skill.yaml | 2 +- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index b458c5e..2ce5128 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeiejzjli6o4u7kh2qo53rwsgave4wnscdyf2bs7txizg32r5rzjjmu", - "skill/valory/optimus_abci/0.1.0": "bafybeihh67i5526pyrdj22cq4otseyaddsuzokytisduvj7rzqcytee6sq", - "agent/valory/optimus/0.1.0": "bafybeicmzbsnm47otbu6t3lrwwflyrk5xddnby5mfmvjsa5egq73qrayxe", - "service/valory/optimus/0.1.0": "bafybeifnwwfkjjz3cr7kycjnbnwmk4nryemgavamv6eruqfaegic5guc2u" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeicqipclelwkfgyfhhckauhphhcpqo5vrmgohnul6m2fltqhrolslq", + "skill/valory/optimus_abci/0.1.0": "bafybeibdxfbtaxfgqwlqmmo7nojuz5w7zulstglufu2x4sslzdmpwmmsqu", + "agent/valory/optimus/0.1.0": "bafybeicmojrodwucan7gfxkgdw2prqdusag6o2lk2jkmphjnehlvhirp3y", + "service/valory/optimus/0.1.0": "bafybeicrfmfbmhqnxlrw4g24zkiw367oyzddfqlj4yejtzay24utqzn534" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index db75ede..a259da2 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeicmzbsnm47otbu6t3lrwwflyrk5xddnby5mfmvjsa5egq73qrayxe +agent: valory/optimus:0.1.0:bafybeicmojrodwucan7gfxkgdw2prqdusag6o2lk2jkmphjnehlvhirp3y number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/behaviours.py b/packages/valory/skills/liquidity_trader_abci/behaviours.py index 596c470..d8e2a63 100644 --- a/packages/valory/skills/liquidity_trader_abci/behaviours.py +++ b/packages/valory/skills/liquidity_trader_abci/behaviours.py @@ -533,11 +533,11 @@ def _get_multisig_nonces_since_last_cp( ) -> Generator[None, None, Optional[int]]: multisig_nonces = yield from self._get_multisig_nonces(chain, multisig) service_info = yield from self._get_service_info(chain) - if service_info is None or len(service_info[2]) == 0: + if service_info is None or len(service_info) == 0 or len(service_info[2]) == 0: self.context.logger.error(f"Error fetching service info {service_info}") return None - multisig_nonces_on_last_checkpoint = service_info[2][1] + multisig_nonces_on_last_checkpoint = service_info[2][0] multisig_nonces_since_last_cp = ( multisig_nonces - multisig_nonces_on_last_checkpoint diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index bcee617..5ce364c 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,7 +7,7 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeie4ytrpgsp24pgkgi5373eu4afiu6gyfqepboqni5sip5dwpdq6ei + behaviours.py: bafybeidwzlvsycduu52iluh7s4mbpf3vgrbhnstiguys3bjnthgxjnpgoi dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index ecea1b7..9ff6cb1 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeiejzjli6o4u7kh2qo53rwsgave4wnscdyf2bs7txizg32r5rzjjmu +- valory/liquidity_trader_abci:0.1.0:bafybeicqipclelwkfgyfhhckauhphhcpqo5vrmgohnul6m2fltqhrolslq - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From fd97db98b447efdf7bc1ee6321d871902e3980eb Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Wed, 11 Sep 2024 11:01:23 +0530 Subject: [PATCH 08/17] fix: update staking token contract address --- packages/valory/services/optimus/service.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index a259da2..a2fe0e8 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -68,7 +68,7 @@ models: service_endpoint_base: ${SERVICE_ENDPOINT_BASE:str:https://optimism.autonolas.tech/} multisend_batch_size: ${MULTISEND_BATCH_SIZE:int:5} safe_contract_addresses: ${SAFE_CONTRACT_ADDRESSES:str:{"ethereum":"0x0000000000000000000000000000000000000000","base":"0x0000000000000000000000000000000000000000","optimism":"0x0000000000000000000000000000000000000000"}} - staking_token_contract_address: ${STAKING_TOKEN_CONTRACT_ADDRESS:str:0x63C2c53c09dE534Dd3bc0b7771bf976070936bAC} + staking_token_contract_address: ${STAKING_TOKEN_CONTRACT_ADDRESS:str:0x88996bbdE7f982D93214881756840cE2c77C4992} staking_activity_checker_contract_address: ${STAKING_ACTIVITY_CHECKER_CONTRACT_ADDRESS:str:0x7Fd1F4b764fA41d19fe3f63C85d12bf64d2bbf68} staking_threshold_period: ${STAKING_THRESHOLD_PERIOD:int:5} store_path: ${STORE_PATH:str:/data/} From 0d3eca41c68f6fffc5fba644ce90c6aaf23a186d Mon Sep 17 00:00:00 2001 From: Ardian Date: Wed, 11 Sep 2024 11:34:13 +0200 Subject: [PATCH 09/17] chore: lock packages --- packages/packages.json | 8 ++++---- packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- packages/valory/skills/liquidity_trader_abci/skill.yaml | 2 +- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index 2ce5128..258ea55 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeicqipclelwkfgyfhhckauhphhcpqo5vrmgohnul6m2fltqhrolslq", - "skill/valory/optimus_abci/0.1.0": "bafybeibdxfbtaxfgqwlqmmo7nojuz5w7zulstglufu2x4sslzdmpwmmsqu", - "agent/valory/optimus/0.1.0": "bafybeicmojrodwucan7gfxkgdw2prqdusag6o2lk2jkmphjnehlvhirp3y", - "service/valory/optimus/0.1.0": "bafybeicrfmfbmhqnxlrw4g24zkiw367oyzddfqlj4yejtzay24utqzn534" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeidilgt5weohwj7gognz4pndovgsjc4el5js4wcxpyue6ouuddn4oi", + "skill/valory/optimus_abci/0.1.0": "bafybeidufhk6tuieoujpikahq223gb6u25piusmceane73gqrozfj7gcue", + "agent/valory/optimus/0.1.0": "bafybeielglte6lw2oxx5ufkyyvihwramxjfsg6idx6viz4lo6nbrd3umiy", + "service/valory/optimus/0.1.0": "bafybeiadjaxghlfqqyjx2btzdzyw74dwufbr67amoi7xajg43zuvdwnjtq" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index fd704be..75244e3 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeiejzjli6o4u7kh2qo53rwsgave4wnscdyf2bs7txizg32r5rzjjmu -- valory/optimus_abci:0.1.0:bafybeihh67i5526pyrdj22cq4otseyaddsuzokytisduvj7rzqcytee6sq +- valory/liquidity_trader_abci:0.1.0:bafybeidilgt5weohwj7gognz4pndovgsjc4el5js4wcxpyue6ouuddn4oi +- valory/optimus_abci:0.1.0:bafybeidufhk6tuieoujpikahq223gb6u25piusmceane73gqrozfj7gcue - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index a2fe0e8..888e982 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeicmojrodwucan7gfxkgdw2prqdusag6o2lk2jkmphjnehlvhirp3y +agent: valory/optimus:0.1.0:bafybeielglte6lw2oxx5ufkyyvihwramxjfsg6idx6viz4lo6nbrd3umiy number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index 5ce364c..4667820 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,7 +7,7 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeidwzlvsycduu52iluh7s4mbpf3vgrbhnstiguys3bjnthgxjnpgoi + behaviours.py: bafybeidxrq3owijycekeq3gwemdkykdkjweiwqmysoycq4in2djnpykfpm dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index 9ff6cb1..b8e7889 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeicqipclelwkfgyfhhckauhphhcpqo5vrmgohnul6m2fltqhrolslq +- valory/liquidity_trader_abci:0.1.0:bafybeidilgt5weohwj7gognz4pndovgsjc4el5js4wcxpyue6ouuddn4oi - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From a978e30e3ccfce7144c7a677158791c32462d337 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Wed, 11 Sep 2024 16:22:06 +0530 Subject: [PATCH 10/17] fix: min num of safe tx --- .../valory/skills/liquidity_trader_abci/behaviours.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/packages/valory/skills/liquidity_trader_abci/behaviours.py b/packages/valory/skills/liquidity_trader_abci/behaviours.py index d8e2a63..ccc41db 100644 --- a/packages/valory/skills/liquidity_trader_abci/behaviours.py +++ b/packages/valory/skills/liquidity_trader_abci/behaviours.py @@ -489,10 +489,9 @@ def _is_staking_kpi_met(self) -> Generator[None, None, Optional[bool]]: if self.service_staking_state != StakingState.STAKED: return False - if self.synchronized_data.min_num_of_safe_tx_required is None: - min_num_of_safe_tx_required = ( - yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") - ) + min_num_of_safe_tx_required = self.synchronized_data.min_num_of_safe_tx_required + if min_num_of_safe_tx_required is None: + min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required(chain="optimism") if min_num_of_safe_tx_required is None: self.context.logger.error( @@ -500,11 +499,9 @@ def _is_staking_kpi_met(self) -> Generator[None, None, Optional[bool]]: ) return None - multisig_nonces_since_last_cp = ( - yield from self._get_multisig_nonces_since_last_cp( + multisig_nonces_since_last_cp = yield from self._get_multisig_nonces_since_last_cp( chain="optimism", multisig=self.params.safe_contract_addresses.get("optimism"), - ) ) if ( multisig_nonces_since_last_cp From 4406541d419d4ffdf70a315c88e8976ddb97d345 Mon Sep 17 00:00:00 2001 From: Ardian Date: Wed, 11 Sep 2024 12:56:30 +0200 Subject: [PATCH 11/17] chore: lock packages --- packages/packages.json | 8 ++++---- packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- packages/valory/skills/liquidity_trader_abci/skill.yaml | 2 +- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index 258ea55..b047ed4 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeidilgt5weohwj7gognz4pndovgsjc4el5js4wcxpyue6ouuddn4oi", - "skill/valory/optimus_abci/0.1.0": "bafybeidufhk6tuieoujpikahq223gb6u25piusmceane73gqrozfj7gcue", - "agent/valory/optimus/0.1.0": "bafybeielglte6lw2oxx5ufkyyvihwramxjfsg6idx6viz4lo6nbrd3umiy", - "service/valory/optimus/0.1.0": "bafybeiadjaxghlfqqyjx2btzdzyw74dwufbr67amoi7xajg43zuvdwnjtq" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeiewmylnwu7rn2lm5jzbxxfafd3xqrmesmymvtr3z47ar6m4zp3pom", + "skill/valory/optimus_abci/0.1.0": "bafybeia4xqkyjdzx7ug4sfouvqwgagkxpyztcubqimfkefngctpyotrlua", + "agent/valory/optimus/0.1.0": "bafybeihor7uuw4lwcwrkpvlufeh2i2zkfr27ewj5comuektwp3laiks5ye", + "service/valory/optimus/0.1.0": "bafybeih6tpj3cvudqgohobntmq6rrq3d46xflwebjj7jpmvm4xi5skgnly" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index 75244e3..f560aec 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeidilgt5weohwj7gognz4pndovgsjc4el5js4wcxpyue6ouuddn4oi -- valory/optimus_abci:0.1.0:bafybeidufhk6tuieoujpikahq223gb6u25piusmceane73gqrozfj7gcue +- valory/liquidity_trader_abci:0.1.0:bafybeiewmylnwu7rn2lm5jzbxxfafd3xqrmesmymvtr3z47ar6m4zp3pom +- valory/optimus_abci:0.1.0:bafybeia4xqkyjdzx7ug4sfouvqwgagkxpyztcubqimfkefngctpyotrlua - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index 888e982..8f17524 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeielglte6lw2oxx5ufkyyvihwramxjfsg6idx6viz4lo6nbrd3umiy +agent: valory/optimus:0.1.0:bafybeihor7uuw4lwcwrkpvlufeh2i2zkfr27ewj5comuektwp3laiks5ye number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index 4667820..9a4d3d7 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,7 +7,7 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeidxrq3owijycekeq3gwemdkykdkjweiwqmysoycq4in2djnpykfpm + behaviours.py: bafybeicc76aikyc7er4kttirrioelh2j5y3qs5ujv7jnncxss7wrk7ydoa dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index b8e7889..fead253 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeidilgt5weohwj7gognz4pndovgsjc4el5js4wcxpyue6ouuddn4oi +- valory/liquidity_trader_abci:0.1.0:bafybeiewmylnwu7rn2lm5jzbxxfafd3xqrmesmymvtr3z47ar6m4zp3pom - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From 026d33ef23c3ad16eb1a8e3dd64c953d7ceeee25 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Wed, 11 Sep 2024 17:23:48 +0530 Subject: [PATCH 12/17] fix: calculate required num of safe everytime if service is staked --- packages/packages.json | 8 ++++---- packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- .../skills/liquidity_trader_abci/behaviours.py | 17 ++++++----------- .../skills/liquidity_trader_abci/skill.yaml | 2 +- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 6 files changed, 15 insertions(+), 20 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index b047ed4..047cd5d 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeiewmylnwu7rn2lm5jzbxxfafd3xqrmesmymvtr3z47ar6m4zp3pom", - "skill/valory/optimus_abci/0.1.0": "bafybeia4xqkyjdzx7ug4sfouvqwgagkxpyztcubqimfkefngctpyotrlua", - "agent/valory/optimus/0.1.0": "bafybeihor7uuw4lwcwrkpvlufeh2i2zkfr27ewj5comuektwp3laiks5ye", - "service/valory/optimus/0.1.0": "bafybeih6tpj3cvudqgohobntmq6rrq3d46xflwebjj7jpmvm4xi5skgnly" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeihhbxi2arrh5zq5zmox3vyh2h5y2end5embsdx5yo7yoemcep5ora", + "skill/valory/optimus_abci/0.1.0": "bafybeie4lk4qgtoltl3ii2oroszxefeydpufevddgqpi6mzzip5werkzgq", + "agent/valory/optimus/0.1.0": "bafybeie5kcvuyhp4kru63rhpugbqrrulaasy6zblyzrgr3gjrchoantsq4", + "service/valory/optimus/0.1.0": "bafybeibt5uzzqbj6itxal7h7wcy2irhvv6upgfbobghk6y6pfq3xh46fra" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index f560aec..562a932 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeiewmylnwu7rn2lm5jzbxxfafd3xqrmesmymvtr3z47ar6m4zp3pom -- valory/optimus_abci:0.1.0:bafybeia4xqkyjdzx7ug4sfouvqwgagkxpyztcubqimfkefngctpyotrlua +- valory/liquidity_trader_abci:0.1.0:bafybeihhbxi2arrh5zq5zmox3vyh2h5y2end5embsdx5yo7yoemcep5ora +- valory/optimus_abci:0.1.0:bafybeie4lk4qgtoltl3ii2oroszxefeydpufevddgqpi6mzzip5werkzgq - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index 8f17524..77f84f5 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeihor7uuw4lwcwrkpvlufeh2i2zkfr27ewj5comuektwp3laiks5ye +agent: valory/optimus:0.1.0:bafybeie5kcvuyhp4kru63rhpugbqrrulaasy6zblyzrgr3gjrchoantsq4 number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/behaviours.py b/packages/valory/skills/liquidity_trader_abci/behaviours.py index ccc41db..951f446 100644 --- a/packages/valory/skills/liquidity_trader_abci/behaviours.py +++ b/packages/valory/skills/liquidity_trader_abci/behaviours.py @@ -611,6 +611,12 @@ def async_act(self) -> Generator: min_num_of_safe_tx_required = None is_staking_kpi_met = False if self.service_staking_state == StakingState.STAKED: + min_num_of_safe_tx_required = yield from self._calculate_min_num_of_safe_tx_required( + chain="optimism" + ) + self.context.logger.info( + f"The minimum number of safe tx required to unlock rewards are {min_num_of_safe_tx_required}" + ) is_checkpoint_reached = yield from self._check_if_checkpoint_reached( chain="optimism" ) @@ -621,17 +627,6 @@ def async_act(self) -> Generator: checkpoint_tx_hex = yield from self._prepare_checkpoint_tx( chain="optimism" ) - - min_num_of_safe_tx_required = ( - yield from self._calculate_min_num_of_safe_tx_required( - chain="optimism" - ) - ) - - self.context.logger.info( - f"The minimum number of safe tx required to unlock rewards are {min_num_of_safe_tx_required}" - ) - is_staking_kpi_met = False else: is_staking_kpi_met = yield from self._is_staking_kpi_met() diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index 9a4d3d7..96e6e5b 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,7 +7,7 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeicc76aikyc7er4kttirrioelh2j5y3qs5ujv7jnncxss7wrk7ydoa + behaviours.py: bafybeic5qe2whfz2cnc3agjd327sxhd35ecjcwwxb7743zhjhelb45ppmm dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index fead253..060e8fe 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeiewmylnwu7rn2lm5jzbxxfafd3xqrmesmymvtr3z47ar6m4zp3pom +- valory/liquidity_trader_abci:0.1.0:bafybeihhbxi2arrh5zq5zmox3vyh2h5y2end5embsdx5yo7yoemcep5ora - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From d83bbbd63c51b9f9b2819341d4069ad8979a4cb2 Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Wed, 11 Sep 2024 17:46:03 +0530 Subject: [PATCH 13/17] fix: chain id --- packages/packages.json | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- packages/valory/skills/liquidity_trader_abci/rounds.py | 2 ++ 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index 047cd5d..2fbe0bb 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -10,8 +10,8 @@ "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", "skill/valory/liquidity_trader_abci/0.1.0": "bafybeihhbxi2arrh5zq5zmox3vyh2h5y2end5embsdx5yo7yoemcep5ora", "skill/valory/optimus_abci/0.1.0": "bafybeie4lk4qgtoltl3ii2oroszxefeydpufevddgqpi6mzzip5werkzgq", - "agent/valory/optimus/0.1.0": "bafybeie5kcvuyhp4kru63rhpugbqrrulaasy6zblyzrgr3gjrchoantsq4", - "service/valory/optimus/0.1.0": "bafybeibt5uzzqbj6itxal7h7wcy2irhvv6upgfbobghk6y6pfq3xh46fra" + "agent/valory/optimus/0.1.0": "bafybeiber7vyqq6e5eoqmcddxcfemykal43ixnf25hi5oh43h6pajqi6se", + "service/valory/optimus/0.1.0": "bafybeigk4oexmpif3ljs6bxxiq4sgwrrzaq7wj7ogrimijavryetlksrze" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index 77f84f5..96e47b5 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeie5kcvuyhp4kru63rhpugbqrrulaasy6zblyzrgr3gjrchoantsq4 +agent: valory/optimus:0.1.0:bafybeiber7vyqq6e5eoqmcddxcfemykal43ixnf25hi5oh43h6pajqi6se number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/rounds.py b/packages/valory/skills/liquidity_trader_abci/rounds.py index f078e24..f4a8d9b 100644 --- a/packages/valory/skills/liquidity_trader_abci/rounds.py +++ b/packages/valory/skills/liquidity_trader_abci/rounds.py @@ -183,6 +183,7 @@ class CallCheckpointRound(CollectSameUntilThresholdRound): get_name(SynchronizedData.is_staking_kpi_met), get_name(SynchronizedData.most_voted_tx_hash), get_name(SynchronizedData.safe_contract_address), + get_name(SynchronizedData.chain_id), ) collection_key = get_name(SynchronizedData.participant_to_checkpoint) synchronized_data_class = SynchronizedData @@ -238,6 +239,7 @@ class CheckStakingKPIMetRound(CollectSameUntilThresholdRound): get_name(SynchronizedData.is_staking_kpi_met), get_name(SynchronizedData.most_voted_tx_hash), get_name(SynchronizedData.safe_contract_address), + get_name(SynchronizedData.chain_id), ) def end_block(self) -> Optional[Tuple[BaseSynchronizedData, Enum]]: From 59d9e6b9dca03491608fc2a563668815d8fa53f3 Mon Sep 17 00:00:00 2001 From: Ardian Date: Wed, 11 Sep 2024 14:17:54 +0200 Subject: [PATCH 14/17] chore: lock packages --- packages/packages.json | 8 ++++---- packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- packages/valory/skills/liquidity_trader_abci/skill.yaml | 4 ++-- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index 2fbe0bb..fe6e213 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeihhbxi2arrh5zq5zmox3vyh2h5y2end5embsdx5yo7yoemcep5ora", - "skill/valory/optimus_abci/0.1.0": "bafybeie4lk4qgtoltl3ii2oroszxefeydpufevddgqpi6mzzip5werkzgq", - "agent/valory/optimus/0.1.0": "bafybeiber7vyqq6e5eoqmcddxcfemykal43ixnf25hi5oh43h6pajqi6se", - "service/valory/optimus/0.1.0": "bafybeigk4oexmpif3ljs6bxxiq4sgwrrzaq7wj7ogrimijavryetlksrze" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeigyetz3pfcjpzoizoc5dzgmaovdcm5fbwuv7fr7tdapx2jdcjorfa", + "skill/valory/optimus_abci/0.1.0": "bafybeidyhrmdrmbxfr33fehs5avqq4co2rmjxll7cg4nkuhxipdjayv65y", + "agent/valory/optimus/0.1.0": "bafybeiaa5447pegbqfu2mv6llzo7eoeanzip32pzn2smwc7l4bbtao5tzy", + "service/valory/optimus/0.1.0": "bafybeicigdelzhapa6impksz63ourpnxwa22u573k2kfmnpf2rzj6opmqm" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index 562a932..1951cc1 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeihhbxi2arrh5zq5zmox3vyh2h5y2end5embsdx5yo7yoemcep5ora -- valory/optimus_abci:0.1.0:bafybeie4lk4qgtoltl3ii2oroszxefeydpufevddgqpi6mzzip5werkzgq +- valory/liquidity_trader_abci:0.1.0:bafybeigyetz3pfcjpzoizoc5dzgmaovdcm5fbwuv7fr7tdapx2jdcjorfa +- valory/optimus_abci:0.1.0:bafybeidyhrmdrmbxfr33fehs5avqq4co2rmjxll7cg4nkuhxipdjayv65y - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index 96e47b5..de6c97a 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeiber7vyqq6e5eoqmcddxcfemykal43ixnf25hi5oh43h6pajqi6se +agent: valory/optimus:0.1.0:bafybeiaa5447pegbqfu2mv6llzo7eoeanzip32pzn2smwc7l4bbtao5tzy number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index 96e6e5b..c08ed17 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,7 +7,7 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeic5qe2whfz2cnc3agjd327sxhd35ecjcwwxb7743zhjhelb45ppmm + behaviours.py: bafybeicm2544nuorncipsbt4estpihctu66jh5qbzsnmsiggxstx7obe2e dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 @@ -16,7 +16,7 @@ fingerprint: pool_behaviour.py: bafybeiaheuesscgqzwjbpyrezgwpdbdfurlmfwbc462qv6rblwwxlx5dpm pools/balancer.py: bafybeieo53qtt557632vtp3x3huagdpqevptextbwd7euk6hpoz6ybtuci pools/uniswap.py: bafybeif2cjbtjh5altlgranmgrif4yaevnn344fn3askbjde5h4y4rh2mq - rounds.py: bafybeihjdqygj33kckeedunzygcjf4lcehnctm75zre35a2pwqbglttbw4 + rounds.py: bafybeierkwiusomhjwz2df54eh2u2wgffv5h5incseq3gdkvggvg75unh4 strategies/simple_strategy.py: bafybeig2iygxz5gewmiyeawubs5f4pr5e3st22lmdkxthlfq7t5kbluw4a strategy_behaviour.py: bafybeidk6sorg47kuuubamcccksi65x3txldyo7y2hm5opbye2ghmz2ljy fingerprint_ignore_patterns: [] diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index 060e8fe..0f71d1f 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeihhbxi2arrh5zq5zmox3vyh2h5y2end5embsdx5yo7yoemcep5ora +- valory/liquidity_trader_abci:0.1.0:bafybeigyetz3pfcjpzoizoc5dzgmaovdcm5fbwuv7fr7tdapx2jdcjorfa - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From 3b6d169d50fcc572b62dcc619f9efef7f94c746c Mon Sep 17 00:00:00 2001 From: DIvyaNautiyal07 Date: Wed, 11 Sep 2024 18:52:15 +0530 Subject: [PATCH 15/17] fix: add chain id in sync data --- packages/packages.json | 8 ++++---- packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- packages/valory/skills/liquidity_trader_abci/rounds.py | 6 +++++- packages/valory/skills/liquidity_trader_abci/skill.yaml | 4 ++-- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 6 files changed, 15 insertions(+), 11 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index fe6e213..442a1e9 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeigyetz3pfcjpzoizoc5dzgmaovdcm5fbwuv7fr7tdapx2jdcjorfa", - "skill/valory/optimus_abci/0.1.0": "bafybeidyhrmdrmbxfr33fehs5avqq4co2rmjxll7cg4nkuhxipdjayv65y", - "agent/valory/optimus/0.1.0": "bafybeiaa5447pegbqfu2mv6llzo7eoeanzip32pzn2smwc7l4bbtao5tzy", - "service/valory/optimus/0.1.0": "bafybeicigdelzhapa6impksz63ourpnxwa22u573k2kfmnpf2rzj6opmqm" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeicm4z5tx2c35u55elgfoaaq57l5vq3fvy5xjoahu3ma6yyp4ydmv4", + "skill/valory/optimus_abci/0.1.0": "bafybeib7aztwggkybg2zruawebty3gb5gdrwggmwdkq4acm3j3prq5kbaq", + "agent/valory/optimus/0.1.0": "bafybeibnijw6x4zqrl4xfxalep3s2b5ycysoujuvp3yiocqy7tsyvqv2ai", + "service/valory/optimus/0.1.0": "bafybeih3ncl22jzarcldvzzofefeorh2n2foal34feplco7p3pzm7tcfre" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index 1951cc1..d4979b2 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeigyetz3pfcjpzoizoc5dzgmaovdcm5fbwuv7fr7tdapx2jdcjorfa -- valory/optimus_abci:0.1.0:bafybeidyhrmdrmbxfr33fehs5avqq4co2rmjxll7cg4nkuhxipdjayv65y +- valory/liquidity_trader_abci:0.1.0:bafybeicm4z5tx2c35u55elgfoaaq57l5vq3fvy5xjoahu3ma6yyp4ydmv4 +- valory/optimus_abci:0.1.0:bafybeib7aztwggkybg2zruawebty3gb5gdrwggmwdkq4acm3j3prq5kbaq - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index de6c97a..e4c5554 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeiaa5447pegbqfu2mv6llzo7eoeanzip32pzn2smwc7l4bbtao5tzy +agent: valory/optimus:0.1.0:bafybeibnijw6x4zqrl4xfxalep3s2b5ycysoujuvp3yiocqy7tsyvqv2ai number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/rounds.py b/packages/valory/skills/liquidity_trader_abci/rounds.py index f4a8d9b..10e2280 100644 --- a/packages/valory/skills/liquidity_trader_abci/rounds.py +++ b/packages/valory/skills/liquidity_trader_abci/rounds.py @@ -169,7 +169,11 @@ def is_staking_kpi_met(self) -> Optional[bool]: """Get kpi met for the day.""" return cast(int, self.db.get("is_staking_kpi_met", False)) - + @property + def chain_id(self) -> Optional[str]: + """Get the chain id.""" + return cast(str, self.db.get("chain_id", None)) + class CallCheckpointRound(CollectSameUntilThresholdRound): """A round for the checkpoint call preparation.""" diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index c08ed17..cd52f4a 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,7 +7,7 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeicm2544nuorncipsbt4estpihctu66jh5qbzsnmsiggxstx7obe2e + behaviours.py: bafybeic5qe2whfz2cnc3agjd327sxhd35ecjcwwxb7743zhjhelb45ppmm dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 @@ -16,7 +16,7 @@ fingerprint: pool_behaviour.py: bafybeiaheuesscgqzwjbpyrezgwpdbdfurlmfwbc462qv6rblwwxlx5dpm pools/balancer.py: bafybeieo53qtt557632vtp3x3huagdpqevptextbwd7euk6hpoz6ybtuci pools/uniswap.py: bafybeif2cjbtjh5altlgranmgrif4yaevnn344fn3askbjde5h4y4rh2mq - rounds.py: bafybeierkwiusomhjwz2df54eh2u2wgffv5h5incseq3gdkvggvg75unh4 + rounds.py: bafybeignklr5qfuen2uic2h7u43lt4wcpmksxxuq3rxxgoyi2zby3kuaii strategies/simple_strategy.py: bafybeig2iygxz5gewmiyeawubs5f4pr5e3st22lmdkxthlfq7t5kbluw4a strategy_behaviour.py: bafybeidk6sorg47kuuubamcccksi65x3txldyo7y2hm5opbye2ghmz2ljy fingerprint_ignore_patterns: [] diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index 0f71d1f..7d1c405 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeigyetz3pfcjpzoizoc5dzgmaovdcm5fbwuv7fr7tdapx2jdcjorfa +- valory/liquidity_trader_abci:0.1.0:bafybeicm4z5tx2c35u55elgfoaaq57l5vq3fvy5xjoahu3ma6yyp4ydmv4 - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From f4adfb0917bb58b384664705c546f67961d413c9 Mon Sep 17 00:00:00 2001 From: Ardian Date: Wed, 11 Sep 2024 15:25:18 +0200 Subject: [PATCH 16/17] chore: lock packages --- packages/packages.json | 8 ++++---- packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- packages/valory/skills/liquidity_trader_abci/skill.yaml | 4 ++-- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index 442a1e9..539fb84 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeicm4z5tx2c35u55elgfoaaq57l5vq3fvy5xjoahu3ma6yyp4ydmv4", - "skill/valory/optimus_abci/0.1.0": "bafybeib7aztwggkybg2zruawebty3gb5gdrwggmwdkq4acm3j3prq5kbaq", - "agent/valory/optimus/0.1.0": "bafybeibnijw6x4zqrl4xfxalep3s2b5ycysoujuvp3yiocqy7tsyvqv2ai", - "service/valory/optimus/0.1.0": "bafybeih3ncl22jzarcldvzzofefeorh2n2foal34feplco7p3pzm7tcfre" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeiczblvnhzttajingj7kzmwcsp2fsmgjkshahj2cn536afhn3yxg3e", + "skill/valory/optimus_abci/0.1.0": "bafybeib5ghk3zfbegivw3vfomg5urfzhorfislagqggl6veanjwbryxnhq", + "agent/valory/optimus/0.1.0": "bafybeibdjypqixdfwtgwyfeqyz4rh3no4quko22thuzijihbeinedtmpfe", + "service/valory/optimus/0.1.0": "bafybeigbir5tns5uaipncii6xoqwm2ba6iviskonqjb4ju4onq2uftbms4" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index d4979b2..045cb4c 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeicm4z5tx2c35u55elgfoaaq57l5vq3fvy5xjoahu3ma6yyp4ydmv4 -- valory/optimus_abci:0.1.0:bafybeib7aztwggkybg2zruawebty3gb5gdrwggmwdkq4acm3j3prq5kbaq +- valory/liquidity_trader_abci:0.1.0:bafybeiczblvnhzttajingj7kzmwcsp2fsmgjkshahj2cn536afhn3yxg3e +- valory/optimus_abci:0.1.0:bafybeib5ghk3zfbegivw3vfomg5urfzhorfislagqggl6veanjwbryxnhq - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index e4c5554..ee40b1a 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeibnijw6x4zqrl4xfxalep3s2b5ycysoujuvp3yiocqy7tsyvqv2ai +agent: valory/optimus:0.1.0:bafybeibdjypqixdfwtgwyfeqyz4rh3no4quko22thuzijihbeinedtmpfe number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index cd52f4a..ab74a5d 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -7,7 +7,7 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeia7bn2ahqqwkf63ptje6rfnftuwrsp33sswgpcbh5osbesxxr6g4m - behaviours.py: bafybeic5qe2whfz2cnc3agjd327sxhd35ecjcwwxb7743zhjhelb45ppmm + behaviours.py: bafybeicm2544nuorncipsbt4estpihctu66jh5qbzsnmsiggxstx7obe2e dialogues.py: bafybeiay23otskx2go5xhtgdwfw2kd6rxd62sxxdu3njv7hageorl5zxzm fsm_specification.yaml: bafybeif4v5cy62pcxtilwbxnxr3hbiwmwlmw2xucc6wl3paa6rsqxlndmm handlers.py: bafybeidxw2lvgiifmo4siobpwuwbxscuifrdo3gnkjyn6bgexotj5f7zf4 @@ -16,7 +16,7 @@ fingerprint: pool_behaviour.py: bafybeiaheuesscgqzwjbpyrezgwpdbdfurlmfwbc462qv6rblwwxlx5dpm pools/balancer.py: bafybeieo53qtt557632vtp3x3huagdpqevptextbwd7euk6hpoz6ybtuci pools/uniswap.py: bafybeif2cjbtjh5altlgranmgrif4yaevnn344fn3askbjde5h4y4rh2mq - rounds.py: bafybeignklr5qfuen2uic2h7u43lt4wcpmksxxuq3rxxgoyi2zby3kuaii + rounds.py: bafybeibgyd4aj4fddi6myiewtnqsck6olriq5ieafjq3poceafi4dk2hgq strategies/simple_strategy.py: bafybeig2iygxz5gewmiyeawubs5f4pr5e3st22lmdkxthlfq7t5kbluw4a strategy_behaviour.py: bafybeidk6sorg47kuuubamcccksi65x3txldyo7y2hm5opbye2ghmz2ljy fingerprint_ignore_patterns: [] diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index 7d1c405..4b94d59 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeicm4z5tx2c35u55elgfoaaq57l5vq3fvy5xjoahu3ma6yyp4ydmv4 +- valory/liquidity_trader_abci:0.1.0:bafybeiczblvnhzttajingj7kzmwcsp2fsmgjkshahj2cn536afhn3yxg3e - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: From ceedbb4424d9f57bdf0f1c1cf6d1a963bba3f3c6 Mon Sep 17 00:00:00 2001 From: Ardian Date: Wed, 11 Sep 2024 20:47:21 +0200 Subject: [PATCH 17/17] chore: lock packages --- packages/packages.json | 8 ++++---- packages/valory/agents/optimus/aea-config.yaml | 4 ++-- packages/valory/services/optimus/service.yaml | 2 +- .../valory/skills/liquidity_trader_abci/behaviours.py | 1 - packages/valory/skills/liquidity_trader_abci/rounds.py | 1 + packages/valory/skills/liquidity_trader_abci/skill.yaml | 2 +- packages/valory/skills/optimus_abci/skill.yaml | 2 +- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/packages.json b/packages/packages.json index 539fb84..e9e596e 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -8,10 +8,10 @@ "contract/valory/merkl_distributor/0.1.0": "bafybeifctofnyhdic2sxmkqujvf3j2wwydhtvzhi6kdeutykenymplf4e4", "contract/valory/staking_token/0.1.0": "bafybeihgp74ojttyzuriukd44biv2ehh4rcc3czm7mv2olw7amepxszbzu", "contract/valory/staking_activity_checker/0.1.0": "bafybeibfqnnqgrchsykidx3x3fgwjmjnml7jyl6e66prhxars3gzgosvxq", - "skill/valory/liquidity_trader_abci/0.1.0": "bafybeiczblvnhzttajingj7kzmwcsp2fsmgjkshahj2cn536afhn3yxg3e", - "skill/valory/optimus_abci/0.1.0": "bafybeib5ghk3zfbegivw3vfomg5urfzhorfislagqggl6veanjwbryxnhq", - "agent/valory/optimus/0.1.0": "bafybeibdjypqixdfwtgwyfeqyz4rh3no4quko22thuzijihbeinedtmpfe", - "service/valory/optimus/0.1.0": "bafybeigbir5tns5uaipncii6xoqwm2ba6iviskonqjb4ju4onq2uftbms4" + "skill/valory/liquidity_trader_abci/0.1.0": "bafybeihii4e64akqkelii37havxmet3qeg5vlv4vg2toekoaww6tk7zudi", + "skill/valory/optimus_abci/0.1.0": "bafybeiazrizmyz5rbqkodjo3jrregmeoyg2qrov4p5qyh5znggeg2kmtdi", + "agent/valory/optimus/0.1.0": "bafybeicjbstfud6oljhtbobgahpzujyigo2u3eit62srji2ik52irhdv7i", + "service/valory/optimus/0.1.0": "bafybeibjwknk7bchs24irn7ayogp72i2cbaioqcd5dzssqtdq4gihrocu4" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/optimus/aea-config.yaml b/packages/valory/agents/optimus/aea-config.yaml index 045cb4c..e85d67a 100644 --- a/packages/valory/agents/optimus/aea-config.yaml +++ b/packages/valory/agents/optimus/aea-config.yaml @@ -35,8 +35,8 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeihu2bcgjk2tqjiq2zhk3uogtfszqn4osvdt7ho3fubdpdj4jgdfjm - valory/abstract_round_abci:0.1.0:bafybeibovsktd3uxur45nrcomq5shcn46cgxd5idmhxbmjhg32c5abyqim -- valory/liquidity_trader_abci:0.1.0:bafybeiczblvnhzttajingj7kzmwcsp2fsmgjkshahj2cn536afhn3yxg3e -- valory/optimus_abci:0.1.0:bafybeib5ghk3zfbegivw3vfomg5urfzhorfislagqggl6veanjwbryxnhq +- valory/liquidity_trader_abci:0.1.0:bafybeihii4e64akqkelii37havxmet3qeg5vlv4vg2toekoaww6tk7zudi +- valory/optimus_abci:0.1.0:bafybeiazrizmyz5rbqkodjo3jrregmeoyg2qrov4p5qyh5znggeg2kmtdi - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om diff --git a/packages/valory/services/optimus/service.yaml b/packages/valory/services/optimus/service.yaml index ee40b1a..d223902 100644 --- a/packages/valory/services/optimus/service.yaml +++ b/packages/valory/services/optimus/service.yaml @@ -6,7 +6,7 @@ aea_version: '>=1.0.0, <2.0.0' license: Apache-2.0 fingerprint: {} fingerprint_ignore_patterns: [] -agent: valory/optimus:0.1.0:bafybeibdjypqixdfwtgwyfeqyz4rh3no4quko22thuzijihbeinedtmpfe +agent: valory/optimus:0.1.0:bafybeicjbstfud6oljhtbobgahpzujyigo2u3eit62srji2ik52irhdv7i number_of_agents: 1 deployment: {} --- diff --git a/packages/valory/skills/liquidity_trader_abci/behaviours.py b/packages/valory/skills/liquidity_trader_abci/behaviours.py index 951f446..ccdd5c3 100644 --- a/packages/valory/skills/liquidity_trader_abci/behaviours.py +++ b/packages/valory/skills/liquidity_trader_abci/behaviours.py @@ -714,7 +714,6 @@ def _prepare_safe_tx( safe_tx_hash=safe_tx_hash, ether_value=ETHER_VALUE, safe_tx_gas=SAFE_TX_GAS, - operation=SafeOperation.CALL.value, to_address=self.params.staking_token_contract_address, data=data, ) diff --git a/packages/valory/skills/liquidity_trader_abci/rounds.py b/packages/valory/skills/liquidity_trader_abci/rounds.py index 10e2280..4653ab5 100644 --- a/packages/valory/skills/liquidity_trader_abci/rounds.py +++ b/packages/valory/skills/liquidity_trader_abci/rounds.py @@ -174,6 +174,7 @@ def chain_id(self) -> Optional[str]: """Get the chain id.""" return cast(str, self.db.get("chain_id", None)) + class CallCheckpointRound(CollectSameUntilThresholdRound): """A round for the checkpoint call preparation.""" diff --git a/packages/valory/skills/liquidity_trader_abci/skill.yaml b/packages/valory/skills/liquidity_trader_abci/skill.yaml index ab74a5d..ee2d93f 100644 --- a/packages/valory/skills/liquidity_trader_abci/skill.yaml +++ b/packages/valory/skills/liquidity_trader_abci/skill.yaml @@ -16,7 +16,7 @@ fingerprint: pool_behaviour.py: bafybeiaheuesscgqzwjbpyrezgwpdbdfurlmfwbc462qv6rblwwxlx5dpm pools/balancer.py: bafybeieo53qtt557632vtp3x3huagdpqevptextbwd7euk6hpoz6ybtuci pools/uniswap.py: bafybeif2cjbtjh5altlgranmgrif4yaevnn344fn3askbjde5h4y4rh2mq - rounds.py: bafybeibgyd4aj4fddi6myiewtnqsck6olriq5ieafjq3poceafi4dk2hgq + rounds.py: bafybeid7jpwkznn5nmsqnspc6ykhfddwujmdxwkqmwjchmw6k7jjqgwg6e strategies/simple_strategy.py: bafybeig2iygxz5gewmiyeawubs5f4pr5e3st22lmdkxthlfq7t5kbluw4a strategy_behaviour.py: bafybeidk6sorg47kuuubamcccksi65x3txldyo7y2hm5opbye2ghmz2ljy fingerprint_ignore_patterns: [] diff --git a/packages/valory/skills/optimus_abci/skill.yaml b/packages/valory/skills/optimus_abci/skill.yaml index 4b94d59..5530918 100644 --- a/packages/valory/skills/optimus_abci/skill.yaml +++ b/packages/valory/skills/optimus_abci/skill.yaml @@ -22,7 +22,7 @@ skills: - valory/registration_abci:0.1.0:bafybeicnth5q4httefsusywx3zrrq4al47owvge72dqf2fziruicq6hqta - valory/reset_pause_abci:0.1.0:bafybeievjciqdvxhqxfjd4whqs27h6qbxqzrae7wwj7fpvxlvmtw3x35im - valory/termination_abci:0.1.0:bafybeid54buqxipiuduw7b6nnliiwsxajnltseuroad53wukfonpxca2om -- valory/liquidity_trader_abci:0.1.0:bafybeiczblvnhzttajingj7kzmwcsp2fsmgjkshahj2cn536afhn3yxg3e +- valory/liquidity_trader_abci:0.1.0:bafybeihii4e64akqkelii37havxmet3qeg5vlv4vg2toekoaww6tk7zudi - valory/transaction_settlement_abci:0.1.0:bafybeihq2yenstblmaadzcjousowj5kfn5l7ns5pxweq2gcrsczfyq5wzm behaviours: main: