From 34490cda7ecb9bd3ce5f79ac4f317071830f0895 Mon Sep 17 00:00:00 2001 From: 8ball030 <8baller@station.codes> Date: Sun, 26 Oct 2025 10:55:17 +0000 Subject: [PATCH 1/5] feat:adding-variable-for-block-number --- .gitignore | 1 + Makefile | 2 +- packages/lstolas/agents/lst_agent/aea-config.yaml | 2 +- .../lstolas/agents/lst_agent_prod/aea-config.yaml | 6 ++++-- .../behaviours_classes/checkpoint_round.py | 2 +- .../claim_bridged_tokens_round.py | 6 ++++-- .../behaviours_classes/claim_reward_tokens_round.py | 2 +- .../lst_skill/behaviours_classes/redeem_round.py | 4 +++- packages/lstolas/skills/lst_skill/models.py | 4 ++++ packages/lstolas/skills/lst_skill/skill.yaml | 13 +++++++------ packages/lstolas/skills/lst_skill/tests/__init__.py | 1 - packages/packages.json | 6 +++--- scripts/update_prod_agent.py | 1 - 13 files changed, 30 insertions(+), 20 deletions(-) delete mode 100644 packages/lstolas/skills/lst_skill/tests/__init__.py diff --git a/.gitignore b/.gitignore index 2a7e15a..c567961 100644 --- a/.gitignore +++ b/.gitignore @@ -24,6 +24,7 @@ packages/eightballer/connections/http_server packages/eightballer/connections/prometheus packages/eightballer/skills/prometheus /lst_agent/ +/lst_agent_prod/ packages/eightballer/protocols/user_interaction packages/eightballer/connections/apprise_wrapper diff --git a/Makefile b/Makefile index 20ee449..51e778b 100644 --- a/Makefile +++ b/Makefile @@ -58,7 +58,7 @@ fmt: test: clean poetry run autonomy packages lock - poetry run adev -v test + poetry run adev -n 1 -v test install: @echo "Setting up Git hooks..." diff --git a/packages/lstolas/agents/lst_agent/aea-config.yaml b/packages/lstolas/agents/lst_agent/aea-config.yaml index e7a6fa9..c5bfa15 100644 --- a/packages/lstolas/agents/lst_agent/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeib7w5i5unvxx7fvrb5ypao62kb2rhxvjeaqowx3b34udbwzuo453y +- lstolas/lst_skill:0.1.0:bafybeia23kiycb6jcuptpegunurfn7hifiq62shjp4v73pnehrsvydbfp4 customs: [] default_ledger: ethereum required_ledgers: diff --git a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml index 58392f6..5ffa565 100644 --- a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeib7w5i5unvxx7fvrb5ypao62kb2rhxvjeaqowx3b34udbwzuo453y +- lstolas/lst_skill:0.1.0:bafybeia23kiycb6jcuptpegunurfn7hifiq62shjp4v73pnehrsvydbfp4 customs: [] default_ledger: ethereum required_ledgers: @@ -97,10 +97,12 @@ type: skill models: lst_strategy: args: + l1_starting_block: 23648061 + l2_starting_block: 42790245 layer_1_rpc_endpoint: https://eth.drpc.org layer_1_amb_home: '0x4C36d2919e407f0Cc2Ee3c993ccF8ac26d9CE64e' layer_1_olas_address: '0x0001A500A6B18995B03f44bb040A5fFc28E45CB0' - layer_2_rpc_endpoint: https://gnosis.drpc.org + layer_2_rpc_endpoint: https://broken-distinguished-diagram.xdai.quiknode.pro/7fda352a668c6ac5c859e4324ce039135c0dd3bf layer_2_amb_home: '0x75Df5AF045d91108662D8080fD1FEFAd6aA0bb59' layer_2_amb_helper: '0x7d94ece17e81355326e3359115D4B02411825EdD' lst_collector_address: '0x64003846B67D66AfdFb03325fa4292b76FCF182F' diff --git a/packages/lstolas/skills/lst_skill/behaviours_classes/checkpoint_round.py b/packages/lstolas/skills/lst_skill/behaviours_classes/checkpoint_round.py index 64216f2..7a23e68 100644 --- a/packages/lstolas/skills/lst_skill/behaviours_classes/checkpoint_round.py +++ b/packages/lstolas/skills/lst_skill/behaviours_classes/checkpoint_round.py @@ -42,7 +42,7 @@ def is_triggered(self) -> bool: raw_events = self.strategy.lst_staking_manager_contract.get_staked_events( self.strategy.layer_2_api, self.strategy.lst_staking_manager_address, - from_block=17497117, + from_block=self.strategy.layer_2_starting_block, ) all_events = EventsPayload(dictionary=raw_events) diff --git a/packages/lstolas/skills/lst_skill/behaviours_classes/claim_bridged_tokens_round.py b/packages/lstolas/skills/lst_skill/behaviours_classes/claim_bridged_tokens_round.py index 54be00c..d110288 100644 --- a/packages/lstolas/skills/lst_skill/behaviours_classes/claim_bridged_tokens_round.py +++ b/packages/lstolas/skills/lst_skill/behaviours_classes/claim_bridged_tokens_round.py @@ -60,7 +60,9 @@ def is_triggered(self) -> bool: events = EventsPayload( dictionary=self.strategy.lst_collector_contract.get_tokens_relayed_events( - self.strategy.layer_2_api, self.strategy.lst_collector_address, from_block=17590111 + self.strategy.layer_2_api, + self.strategy.lst_collector_address, + from_block=self.strategy.layer_2_starting_block, ), ) l2_to_l1_events = {} @@ -79,7 +81,7 @@ def is_triggered(self) -> bool: dictionary=self.strategy.amb_mainnet_contract.get_relayed_message_events( self.strategy.layer_1_api, self.strategy.layer_1_amb_home, - from_block=9123229, + from_block=self.strategy.layer_1_starting_block, message_id=message_id, ), ) diff --git a/packages/lstolas/skills/lst_skill/behaviours_classes/claim_reward_tokens_round.py b/packages/lstolas/skills/lst_skill/behaviours_classes/claim_reward_tokens_round.py index 26e1122..a7cd0ef 100644 --- a/packages/lstolas/skills/lst_skill/behaviours_classes/claim_reward_tokens_round.py +++ b/packages/lstolas/skills/lst_skill/behaviours_classes/claim_reward_tokens_round.py @@ -41,7 +41,7 @@ def is_triggered(self) -> bool: raw_events = self.strategy.lst_staking_manager_contract.get_staked_events( self.strategy.layer_2_api, self.strategy.lst_staking_manager_address, - from_block=17497117, + from_block=self.strategy.layer_2_starting_block, ) all_events = EventsPayload(dictionary=raw_events) diff --git a/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py b/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py index 5dc758b..2921154 100644 --- a/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py +++ b/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py @@ -78,7 +78,9 @@ def is_triggered(self) -> bool: dictionary=self.strategy.lst_staking_processor_l2_contract.get_request_queued_events( self.strategy.layer_2_api, self.strategy.lst_staking_processor_l2_address, - from_block=17590111 if self.last_completed_block is None else self.last_completed_block, + from_block=self.strategy.layer_2_starting_block + if self.last_completed_block is None + else self.last_completed_block, ) ) self.last_scanned_block = queued_requests.to_block diff --git a/packages/lstolas/skills/lst_skill/models.py b/packages/lstolas/skills/lst_skill/models.py index eccf07d..21351ec 100644 --- a/packages/lstolas/skills/lst_skill/models.py +++ b/packages/lstolas/skills/lst_skill/models.py @@ -88,6 +88,8 @@ class LstStrategy(Model): layer_1_api: EthereumApi layer_2_api: EthereumApi + layer_1_starting_block: int + layer_2_starting_block: int # lst contract addresses lst_collector_address: Address @@ -106,6 +108,8 @@ def __init__(self, **kwargs): """Initialize the strategy of the lst agent.""" self.layer_1_api = EthereumApi(address=kwargs.pop("layer_1_rpc_endpoint")) self.layer_2_api = EthereumApi(address=kwargs.pop("layer_2_rpc_endpoint")) + self.layer_1_starting_block = kwargs.pop("l1_starting_block") + self.layer_2_starting_block = kwargs.pop("l2_starting_block") self.lst_collector_address = kwargs.pop("lst_collector_address") self.lst_unstake_relayer_address = kwargs.pop("lst_unstake_relayer_address") diff --git a/packages/lstolas/skills/lst_skill/skill.yaml b/packages/lstolas/skills/lst_skill/skill.yaml index cac3b30..a962509 100644 --- a/packages/lstolas/skills/lst_skill/skill.yaml +++ b/packages/lstolas/skills/lst_skill/skill.yaml @@ -13,20 +13,19 @@ fingerprint: behaviours_classes/__init__.py: bafybeigfxtbzqrsrmdkw4xiqtryjszmonoa7fe3dkw4c3dmqwj7m7ynt3y behaviours_classes/base_behaviour.py: bafybeibt7wqatpktq36n66krinjuewkskb2tu4efssgz433r4xrjzuk56m behaviours_classes/check_any_work_round.py: bafybeibiop4dwotqngxqd4vdw2x4iz4b44m6urx4flvok6tdkaytwkdwzu - behaviours_classes/checkpoint_round.py: bafybeidyppcubj6fbyzpnorzsh5jo6hlwvhogjzhrxylsyeouu5xd4aryq - behaviours_classes/claim_bridged_tokens_round.py: bafybeiac2wbgj55fw5c577jzmp4c5g3bbiq2ifnrdfcn6wgppib6a64mta - behaviours_classes/claim_reward_tokens_round.py: bafybeigzfqweoglatgr4fs6tdunrw2z2wekwgqxr3ls2z6xbqy2rx6xeye + behaviours_classes/checkpoint_round.py: bafybeidnsyylc7kax4qv2axzqg2d6tpcnhdx3tmrztngpfmwq7hz3d764i + behaviours_classes/claim_bridged_tokens_round.py: bafybeigrr3rquovoreaiq6pwz4m3arulqeb7oywvkwclox35q4ao4aavae + behaviours_classes/claim_reward_tokens_round.py: bafybeia7d26votggvlw36wtp623unczgdmlwojqhkj4t62aeqdxrij6h64 behaviours_classes/error_rounds.py: bafybeihtghxlbb5k6s4egdibglto7h43xk3fz7vclhrizncq5vkwzlsqu4 behaviours_classes/finalize_bridged_tokens_round.py: bafybeifnxckqnez2apllpwlxj6rvrfat732xhorhqle3aut6wl2dr7ekxu - behaviours_classes/redeem_round.py: bafybeigpy5vtblbydbkxuaw5e2v5tvuiutxwzabwbopwrkepxuc7yczvre + behaviours_classes/redeem_round.py: bafybeigcl5hk3mhgqzct7bg3c2bt6d2gwhoqaydpqp2whkxs262lytw7m4 behaviours_classes/starting_round.py: bafybeift5drjrtwcbssumcpfm2eczus6z6si4gppokvymhbqkfsajmhun4 behaviours_classes/trigger_l2_to_l1_bridge.py: bafybeiac6nikhnpyveenvtzdzwxqxe5ivtayxlz5enmpcfvtsmtnnpvbwm behaviours_classes/waiting_round.py: bafybeiekbnjih5txvpxi75itpjfv7nr65bf7kbgd2f4tdvanbjsewdp2ma dialogues.py: bafybeigbpewv7jsbyaybassv47sxk7bmvbl5pg25v2inr5gc6djch75rmi events_processing.py: bafybeihvdc6qwmzk6pizpuwhdjb7whtevt25uicjeghxzem2qtjko2biom handlers.py: bafybeigxyhzux4czjkaqntqmnjcfidchf2h6sitvxx6dknpwmoucbojqgq - models.py: bafybeiewjxrc3r2igtf2kfo2yg3afdos6xslffifzprvu45giorxtjk36q - tests/__init__.py: bafybeigb2ji4vkcap3hokcedggjwsrah7te2nxjhkorwf3ibwgyaa2glma + models.py: bafybeihisehbnpxoyhthl63x3yaud4ouvlletxuck5op6gyz5fylmj72me tests/test_check_work_behaviour.py: bafybeib45mbpf7ctr5aoyltwh34pljwpsh5zqentdqxerfkqx4tqhsg5h4 tests/test_conditional_behaviours.py: bafybeickfflcj6kw5k72w4a56xbzsiolv34vcfjkgr5o3wm4wluoztxqlm tests/test_fsm_behaviour.py: bafybeiellmhyw3fupa725t6yirtg3ct25vuttswvyfzwvr5k3l5x3zseby @@ -73,6 +72,8 @@ models: class_name: UserInteractionDialogues lst_strategy: args: + l1_starting_block: 9123229 + l2_starting_block: 17590111 layer_1_rpc_endpoint: https://eth-sepolia.api.onfinality.io/public layer_1_amb_home: '0xf2546D6648BD2af6a008A7e7C1542BB240329E11' layer_1_olas_address: '0xeb2725bD76f6b1569Cf1484fCa0f2D55714A085d' diff --git a/packages/lstolas/skills/lst_skill/tests/__init__.py b/packages/lstolas/skills/lst_skill/tests/__init__.py deleted file mode 100644 index b2c93e3..0000000 --- a/packages/lstolas/skills/lst_skill/tests/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Tests for the metrics package.""" diff --git a/packages/packages.json b/packages/packages.json index 68249e1..bd9312c 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -11,9 +11,9 @@ "contract/eightballer/amb_gnosis_helper/0.1.0": "bafybeig37p3q4se2it75kt4zvqvrvzk4fqc7eyspspt3txooxxljkurkey", "contract/eightballer/erc_20/0.1.0": "bafybeig622mhgil3uq34d4l3r6moxisgvxwxtrosds2x7glx3kg5z4yqzq", "contract/lstolas/lst_staking_token_locked/0.1.0": "bafybeiftbu2o4nx2jj6kbkr2u5zc5z46suivqiq4dzb23i6osbc3xcflya", - "skill/lstolas/lst_skill/0.1.0": "bafybeib7w5i5unvxx7fvrb5ypao62kb2rhxvjeaqowx3b34udbwzuo453y", - "agent/lstolas/lst_agent/0.1.0": "bafybeiepgezvdgyglwfsgu5x4ns7btsksolr3jii6y3efkewaxhy6rl63e", - "agent/lstolas/lst_agent_prod/0.1.0": "bafybeiab2sq7uw5tgw4rvjyhcbylrlzxc6g5jth4jgxt2vuw6vpkldc7ci" + "skill/lstolas/lst_skill/0.1.0": "bafybeia23kiycb6jcuptpegunurfn7hifiq62shjp4v73pnehrsvydbfp4", + "agent/lstolas/lst_agent/0.1.0": "bafybeie5xunjwbaelfnyysawgb6j4gqayj5wi2ldx77dta4wjzsebwe3lq", + "agent/lstolas/lst_agent_prod/0.1.0": "bafybeielpxrtavibci6d2fmro5otifidletmctfiaeaqrfjsxhnjatcncq" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm", diff --git a/scripts/update_prod_agent.py b/scripts/update_prod_agent.py index eec972e..b0d7d26 100644 --- a/scripts/update_prod_agent.py +++ b/scripts/update_prod_agent.py @@ -32,7 +32,6 @@ def do_update(): layer2_config = config_vars[1] for mapping, config in [(mainnet_mapping, mainnet_config), (gnosis_mapping, layer2_config)]: - for config_key, contract_key in mapping.items(): found = False for item in config["contracts"]: From 5ad038854ee0594610b69f743b92d326946a3582 Mon Sep 17 00:00:00 2001 From: 8ball030 <8baller@station.codes> Date: Sun, 26 Oct 2025 14:49:12 +0000 Subject: [PATCH 2/5] feat:-regenerated --- .../lstolas/agents/lst_agent/aea-config.yaml | 2 +- .../agents/lst_agent_prod/aea-config.yaml | 4 +- .../contracts/lst_activity_module/contract.py | 2 +- .../lst_activity_module/contract.yaml | 2 +- .../lst_collector/build/lst_collector.json | 2 +- .../contracts/lst_collector/contract.py | 108 +++++++++++++++++- .../contracts/lst_collector/contract.yaml | 4 +- .../build/lst_distributor.json | 2 +- .../contracts/lst_distributor/contract.py | 13 --- .../contracts/lst_distributor/contract.yaml | 4 +- .../contracts/lst_staking_manager/contract.py | 8 +- .../lst_staking_manager/contract.yaml | 2 +- .../build/lst_staking_processor_l2.json | 2 +- .../lst_staking_processor_l2/contract.py | 70 +++--------- .../lst_staking_processor_l2/contract.yaml | 4 +- .../lst_staking_token_locked/contract.py | 2 +- .../lst_staking_token_locked/contract.yaml | 4 +- .../tests/test_lst_staking_token_locked.py | 6 +- .../build/lst_unstake_relayer.json | 2 +- .../contracts/lst_unstake_relayer/contract.py | 11 -- .../lst_unstake_relayer/contract.yaml | 4 +- packages/lstolas/skills/lst_skill/skill.yaml | 14 +-- packages/packages.json | 20 ++-- scripts/generate_contracts.sh | 15 +-- 24 files changed, 179 insertions(+), 128 deletions(-) diff --git a/packages/lstolas/agents/lst_agent/aea-config.yaml b/packages/lstolas/agents/lst_agent/aea-config.yaml index c5bfa15..3f03d72 100644 --- a/packages/lstolas/agents/lst_agent/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeia23kiycb6jcuptpegunurfn7hifiq62shjp4v73pnehrsvydbfp4 +- lstolas/lst_skill:0.1.0:bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a customs: [] default_ledger: ethereum required_ledgers: diff --git a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml index 5ffa565..5cbc892 100644 --- a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeia23kiycb6jcuptpegunurfn7hifiq62shjp4v73pnehrsvydbfp4 +- lstolas/lst_skill:0.1.0:bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a customs: [] default_ledger: ethereum required_ledgers: @@ -102,7 +102,7 @@ models: layer_1_rpc_endpoint: https://eth.drpc.org layer_1_amb_home: '0x4C36d2919e407f0Cc2Ee3c993ccF8ac26d9CE64e' layer_1_olas_address: '0x0001A500A6B18995B03f44bb040A5fFc28E45CB0' - layer_2_rpc_endpoint: https://broken-distinguished-diagram.xdai.quiknode.pro/7fda352a668c6ac5c859e4324ce039135c0dd3bf + layer_2_rpc_endpoint: https://gnosis.oat.farm layer_2_amb_home: '0x75Df5AF045d91108662D8080fD1FEFAd6aA0bb59' layer_2_amb_helper: '0x7d94ece17e81355326e3359115D4B02411825EdD' lst_collector_address: '0x64003846B67D66AfdFb03325fa4292b76FCF182F' diff --git a/packages/lstolas/contracts/lst_activity_module/contract.py b/packages/lstolas/contracts/lst_activity_module/contract.py index a1abbda..5536808 100644 --- a/packages/lstolas/contracts/lst_activity_module/contract.py +++ b/packages/lstolas/contracts/lst_activity_module/contract.py @@ -169,7 +169,7 @@ def initialize( ) -> JSONLike: """Handler method for the 'initialize' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.initialize(_multisig=multisig, _stakingProxy=staking_proxy, _serviceId=service_id) + return instance.functions.initialize(_multisig=multisig, _serviceId=service_id, _stakingProxy=staking_proxy) @classmethod def get_activity_increased_events( diff --git a/packages/lstolas/contracts/lst_activity_module/contract.yaml b/packages/lstolas/contracts/lst_activity_module/contract.yaml index a43ed6c..c9ebf65 100644 --- a/packages/lstolas/contracts/lst_activity_module/contract.yaml +++ b/packages/lstolas/contracts/lst_activity_module/contract.yaml @@ -8,7 +8,7 @@ aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeihpqwcoooyfnamqteab54u3zrhspldtcdve73ircfvnpmvx3mxvyu build/lst_activity_module.json: bafybeiep5cfdeo4gjkw5fjsmrhwxrttcnhd6fpvvvyf56xa7h6kkbfcadu - contract.py: bafybeiemgoif5cwiiqh34iggyrpahpbgvnbdhhdtug54uk4wnzwbzwqj4a + contract.py: bafybeifibd3vfzufawgyw5knhhlxri77gisc5mhlkzlmpyk33dmib26yxm tests/test_lst_activity_module.py: bafybeibx6f65u7j3su72lu6lb4wsmuh5biltjlvryvsskfm2ajrhm64xr4 fingerprint_ignore_patterns: [] class_name: LstActivityModule diff --git a/packages/lstolas/contracts/lst_collector/build/lst_collector.json b/packages/lstolas/contracts/lst_collector/build/lst_collector.json index 2a4d0ca..0df5154 100644 --- a/packages/lstolas/contracts/lst_collector/build/lst_collector.json +++ b/packages/lstolas/contracts/lst_collector/build/lst_collector.json @@ -1 +1 @@ -{"abi": [{"type": "constructor","inputs": [{"name": "_olas","type": "address","internalType": "address"}],"stateMutability": "nonpayable"},{"type": "function","name": "MAX_PROTOCOL_FACTOR","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "MIN_OLAS_BALANCE","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "PROXY_SLOT","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "REWARD","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "changeImplementation","inputs": [{"name": "newImplementation","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeProtocolFactor","inputs": [{"name": "newProtocolFactor","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeStakingProcessorL2","inputs": [{"name": "newStakingProcessorL2","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "fundExternal","inputs": [{"name": "account","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "initialize","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "l2StakingProcessor","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "mapOperationReceiverBalances","inputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "balance","type": "uint256","internalType": "uint256"},{"name": "receiver","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "protocolBalance","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "protocolFactor","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "relayTokens","inputs": [{"name": "operation","type": "bytes32","internalType": "bytes32"},{"name": "bridgePayload","type": "bytes","internalType": "bytes"}],"outputs": [],"stateMutability": "payable"},{"type": "function","name": "setOperationReceivers","inputs": [{"name": "operations","type": "bytes32[]","internalType": "bytes32[]"},{"name": "receivers","type": "address[]","internalType": "address[]"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "topUpBalance","inputs": [{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "event","name": "ImplementationUpdated","inputs": [{"name": "implementation","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "OperationReceiverBalancesUpdated","inputs": [{"name": "operation","type": "bytes32","indexed": true,"internalType": "bytes32"},{"name": "receiver","type": "address","indexed": true,"internalType": "address"},{"name": "balance","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "OperationReceiversSet","inputs": [{"name": "operations","type": "bytes32[]","indexed": false,"internalType": "bytes32[]"},{"name": "receivers","type": "address[]","indexed": false,"internalType": "address[]"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "ProtocolBalanceUpdated","inputs": [{"name": "protocolBalance","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "ProtocolFactorUpdated","inputs": [{"name": "protocolFactor","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "StakingProcessorUpdated","inputs": [{"name": "stakingProcessorL2","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "TokensRelayed","inputs": [{"name": "l1Distributor","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "error","name": "AlreadyInitialized","inputs": []},{"type": "error","name": "Overflow","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "max","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "WrongArrayLength","inputs": []},{"type": "error","name": "ZeroAddress","inputs": []},{"type": "error","name": "ZeroValue","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file +{"abi": [{"type": "constructor","inputs": [{"name": "_olas","type": "address","internalType": "address"}],"stateMutability": "nonpayable"},{"type": "function","name": "MAX_PROTOCOL_FACTOR","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "MIN_OLAS_BALANCE","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "PROXY_SLOT","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "REWARD","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "changeImplementation","inputs": [{"name": "newImplementation","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeProtocolFactor","inputs": [{"name": "newProtocolFactor","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeStakingManager","inputs": [{"name": "newStakingManager","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeStakingProcessorL2","inputs": [{"name": "newStakingProcessorL2","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "fundExternal","inputs": [{"name": "account","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "initialize","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "l2StakingProcessor","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "mapOperationReceiverBalances","inputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "balance","type": "uint256","internalType": "uint256"},{"name": "receiver","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "mapStakingProxyUnstakeReserves","inputs": [{"name": "","type": "address","internalType": "address"}],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "protocolBalance","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "protocolFactor","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "rebalanceFromUnstakeReserve","inputs": [{"name": "stakingProxy","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "relayTokens","inputs": [{"name": "operation","type": "bytes32","internalType": "bytes32"},{"name": "bridgePayload","type": "bytes","internalType": "bytes"}],"outputs": [],"stateMutability": "payable"},{"type": "function","name": "setOperationReceivers","inputs": [{"name": "operations","type": "bytes32[]","internalType": "bytes32[]"},{"name": "receivers","type": "address[]","internalType": "address[]"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "stakingManager","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "topUpBalance","inputs": [{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "topUpUnstakeReserve","inputs": [{"name": "stakingProxy","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "event","name": "ImplementationUpdated","inputs": [{"name": "implementation","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "OperationReceiverBalancesUpdated","inputs": [{"name": "operation","type": "bytes32","indexed": true,"internalType": "bytes32"},{"name": "receiver","type": "address","indexed": true,"internalType": "address"},{"name": "balance","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "OperationReceiversSet","inputs": [{"name": "operations","type": "bytes32[]","indexed": false,"internalType": "bytes32[]"},{"name": "receivers","type": "address[]","indexed": false,"internalType": "address[]"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "ProtocolBalanceUpdated","inputs": [{"name": "protocolBalance","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "ProtocolFactorUpdated","inputs": [{"name": "protocolFactor","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "StakingManagerUpdated","inputs": [{"name": "stakingManager","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "StakingProcessorUpdated","inputs": [{"name": "stakingProcessorL2","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "StakingProxyUnstakeReserveUpdated","inputs": [{"name": "sender","type": "address","indexed": true,"internalType": "address"},{"name": "stakingProxy","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "TokensRelayed","inputs": [{"name": "l1Distributor","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "error","name": "AlreadyInitialized","inputs": []},{"type": "error","name": "Overflow","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "max","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "WrongAccount","inputs": [{"name": "sender","type": "address","internalType": "address"}]},{"type": "error","name": "WrongArrayLength","inputs": []},{"type": "error","name": "ZeroAddress","inputs": []},{"type": "error","name": "ZeroValue","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file diff --git a/packages/lstolas/contracts/lst_collector/contract.py b/packages/lstolas/contracts/lst_collector/contract.py index 3e01aee..69c8826 100644 --- a/packages/lstolas/contracts/lst_collector/contract.py +++ b/packages/lstolas/contracts/lst_collector/contract.py @@ -74,6 +74,15 @@ def map_operation_receiver_balances(cls, ledger_api: LedgerApi, contract_address result = instance.functions.mapOperationReceiverBalances(var_0).call() return {"balance": result[0], "receiver": result[1]} + @classmethod + def map_staking_proxy_unstake_reserves( + cls, ledger_api: LedgerApi, contract_address: str, var_0: Address + ) -> JSONLike: + """Handler method for the 'map_staking_proxy_unstake_reserves' requests.""" + instance = cls.get_instance(ledger_api, contract_address) + result = instance.functions.mapStakingProxyUnstakeReserves(var_0).call() + return {"int": result} + @classmethod def olas( cls, @@ -118,6 +127,17 @@ def protocol_factor( result = instance.functions.protocolFactor().call() return {"int": result} + @classmethod + def staking_manager( + cls, + ledger_api: LedgerApi, + contract_address: str, + ) -> JSONLike: + """Handler method for the 'staking_manager' requests.""" + instance = cls.get_instance(ledger_api, contract_address) + result = instance.functions.stakingManager().call() + return {"address": result} + @classmethod def change_implementation( cls, ledger_api: LedgerApi, contract_address: str, new_implementation: Address @@ -138,6 +158,14 @@ def change_protocol_factor(cls, ledger_api: LedgerApi, contract_address: str, ne instance = cls.get_instance(ledger_api, contract_address) return instance.functions.changeProtocolFactor(newProtocolFactor=new_protocol_factor) + @classmethod + def change_staking_manager( + cls, ledger_api: LedgerApi, contract_address: str, new_staking_manager: Address + ) -> JSONLike: + """Handler method for the 'change_staking_manager' requests.""" + instance = cls.get_instance(ledger_api, contract_address) + return instance.functions.changeStakingManager(newStakingManager=new_staking_manager) + @classmethod def change_staking_processor_l2( cls, ledger_api: LedgerApi, contract_address: str, new_staking_processor_l2: Address @@ -162,13 +190,23 @@ def initialize( instance = cls.get_instance(ledger_api, contract_address) return instance.functions.initialize() + @classmethod + def rebalance_from_unstake_reserve( + cls, ledger_api: LedgerApi, contract_address: str, staking_proxy: Address, amount: int, operation: str + ) -> JSONLike: + """Handler method for the 'rebalance_from_unstake_reserve' requests.""" + instance = cls.get_instance(ledger_api, contract_address) + return instance.functions.rebalanceFromUnstakeReserve( + amount=amount, operation=operation, stakingProxy=staking_proxy + ) + @classmethod def relay_tokens( cls, ledger_api: LedgerApi, contract_address: str, operation: str, bridge_payload: str ) -> JSONLike: """Handler method for the 'relay_tokens' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.relayTokens(operation=operation, bridgePayload=bridge_payload) + return instance.functions.relayTokens(bridgePayload=bridge_payload, operation=operation) @classmethod def set_operation_receivers( @@ -184,6 +222,14 @@ def top_up_balance(cls, ledger_api: LedgerApi, contract_address: str, amount: in instance = cls.get_instance(ledger_api, contract_address) return instance.functions.topUpBalance(amount=amount, operation=operation) + @classmethod + def top_up_unstake_reserve( + cls, ledger_api: LedgerApi, contract_address: str, staking_proxy: Address, amount: int + ) -> JSONLike: + """Handler method for the 'top_up_unstake_reserve' requests.""" + instance = cls.get_instance(ledger_api, contract_address) + return instance.functions.topUpUnstakeReserve(amount=amount, stakingProxy=staking_proxy) + @classmethod def get_implementation_updated_events( cls, @@ -355,6 +401,33 @@ def get_protocol_factor_updated_events( "to_block": to_block, } + @classmethod + def get_staking_manager_updated_events( + cls, + ledger_api: LedgerApi, + contract_address: str, + staking_manager: Address = None, + look_back: int = 1000, + to_block: str = "latest", + from_block: int | None = None, + ) -> JSONLike: + """Handler method for the 'StakingManagerUpdated' events .""" + + instance = cls.get_instance(ledger_api, contract_address) + arg_filters = {key: value for key, value in (("stakingManager", staking_manager)) if value is not None} + to_block = to_block or "latest" + if to_block == "latest": + to_block = ledger_api.api.eth.block_number + from_block = from_block or (to_block - look_back) + result = instance.events.StakingManagerUpdated().get_logs( + fromBlock=from_block, toBlock=to_block, argument_filters=arg_filters + ) + return { + "events": result, + "from_block": from_block, + "to_block": to_block, + } + @classmethod def get_staking_processor_updated_events( cls, @@ -382,6 +455,39 @@ def get_staking_processor_updated_events( "to_block": to_block, } + @classmethod + def get_staking_proxy_unstake_reserve_updated_events( + cls, + ledger_api: LedgerApi, + contract_address: str, + sender: Address = None, + staking_proxy: Address = None, + amount: int | None = None, + look_back: int = 1000, + to_block: str = "latest", + from_block: int | None = None, + ) -> JSONLike: + """Handler method for the 'StakingProxyUnstakeReserveUpdated' events .""" + + instance = cls.get_instance(ledger_api, contract_address) + arg_filters = { + key: value + for key, value in (("sender", sender), ("stakingProxy", staking_proxy), ("amount", amount)) + if value is not None + } + to_block = to_block or "latest" + if to_block == "latest": + to_block = ledger_api.api.eth.block_number + from_block = from_block or (to_block - look_back) + result = instance.events.StakingProxyUnstakeReserveUpdated().get_logs( + fromBlock=from_block, toBlock=to_block, argument_filters=arg_filters + ) + return { + "events": result, + "from_block": from_block, + "to_block": to_block, + } + @classmethod def get_tokens_relayed_events( cls, diff --git a/packages/lstolas/contracts/lst_collector/contract.yaml b/packages/lstolas/contracts/lst_collector/contract.yaml index f0a7c6e..38a6aad 100644 --- a/packages/lstolas/contracts/lst_collector/contract.yaml +++ b/packages/lstolas/contracts/lst_collector/contract.yaml @@ -7,8 +7,8 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeicprbtjucpjo4jmrouqcj5iij3lcuretgbobcrkd4wjjpywi5mz2e - build/lst_collector.json: bafybeieuyvvyswnp6l75hlnowwq34snt2absizksyunopxysmzzk7vsfna - contract.py: bafybeifbq3uwcai7bezftm6yf36j56kvtdpyyell6miaaotabuhnp5sqzq + build/lst_collector.json: bafybeihpgswed55ld63ctpzkjnjut7lyxqisieqqbwran23rvsesh3vbai + contract.py: bafybeicpkqq6kw2a32xclxuwoxbmwhvsn3ricio35hpsvk5rvpvoydib5q tests/test_lst_collector.py: bafybeidtapulxrp2dr36sye2xwyy2hllc2p73qtuh4nnndib5rk3ql5fpi fingerprint_ignore_patterns: [] class_name: LstCollector diff --git a/packages/lstolas/contracts/lst_distributor/build/lst_distributor.json b/packages/lstolas/contracts/lst_distributor/build/lst_distributor.json index 8098599..bf697d6 100644 --- a/packages/lstolas/contracts/lst_distributor/build/lst_distributor.json +++ b/packages/lstolas/contracts/lst_distributor/build/lst_distributor.json @@ -1 +1 @@ -{"abi": [{"type": "constructor","inputs": [{"name": "_olas","type": "address","internalType": "address"},{"name": "_st","type": "address","internalType": "address"},{"name": "_lock","type": "address","internalType": "address"}],"stateMutability": "nonpayable"},{"type": "function","name": "MAX_LOCK_FACTOR","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "PROXY_SLOT","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "VERSION","inputs": [],"outputs": [{"name": "","type": "string","internalType": "string"}],"stateMutability": "view"},{"type": "function","name": "changeImplementation","inputs": [{"name": "newImplementation","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeLockFactor","inputs": [{"name": "newLockFactor","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "distribute","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "initialize","inputs": [{"name": "_lockFactor","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "lock","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "lockFactor","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "st","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "totalDistributedAmount","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "event","name": "Distributed","inputs": [{"name": "account","type": "address","indexed": true,"internalType": "address"},{"name": "st","type": "address","indexed": true,"internalType": "address"},{"name": "olasAmount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "ImplementationUpdated","inputs": [{"name": "implementation","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "LockFactorUpdated","inputs": [{"name": "lockFactor","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "Locked","inputs": [{"name": "account","type": "address","indexed": true,"internalType": "address"},{"name": "olasAmount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "lockAmount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "vaultBalance","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "unlockTimeIncreased","type": "bool","indexed": false,"internalType": "bool"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "error","name": "AlreadyInitialized","inputs": []},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "ZeroAddress","inputs": []},{"type": "error","name": "ZeroValue","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file +{"abi": [{"type": "constructor","inputs": [{"name": "_olas","type": "address","internalType": "address"},{"name": "_st","type": "address","internalType": "address"},{"name": "_lock","type": "address","internalType": "address"}],"stateMutability": "nonpayable"},{"type": "function","name": "MAX_LOCK_FACTOR","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "PROXY_SLOT","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "VERSION","inputs": [],"outputs": [{"name": "","type": "string","internalType": "string"}],"stateMutability": "view"},{"type": "function","name": "changeImplementation","inputs": [{"name": "newImplementation","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeLockFactor","inputs": [{"name": "newLockFactor","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "distribute","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "initialize","inputs": [{"name": "_lockFactor","type": "uint256","internalType": "uint256"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "lock","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "lockFactor","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "st","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "event","name": "Distributed","inputs": [{"name": "account","type": "address","indexed": true,"internalType": "address"},{"name": "st","type": "address","indexed": true,"internalType": "address"},{"name": "olasAmount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "ImplementationUpdated","inputs": [{"name": "implementation","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "LockFactorUpdated","inputs": [{"name": "lockFactor","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "Locked","inputs": [{"name": "account","type": "address","indexed": true,"internalType": "address"},{"name": "olasAmount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "lockAmount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "vaultBalance","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "error","name": "AlreadyInitialized","inputs": []},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "ZeroAddress","inputs": []},{"type": "error","name": "ZeroValue","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file diff --git a/packages/lstolas/contracts/lst_distributor/contract.py b/packages/lstolas/contracts/lst_distributor/contract.py index 9c85f73..587f506 100644 --- a/packages/lstolas/contracts/lst_distributor/contract.py +++ b/packages/lstolas/contracts/lst_distributor/contract.py @@ -100,17 +100,6 @@ def st( result = instance.functions.st().call() return {"address": result} - @classmethod - def total_distributed_amount( - cls, - ledger_api: LedgerApi, - contract_address: str, - ) -> JSONLike: - """Handler method for the 'total_distributed_amount' requests.""" - instance = cls.get_instance(ledger_api, contract_address) - result = instance.functions.totalDistributedAmount().call() - return {"int": result} - @classmethod def change_implementation( cls, ledger_api: LedgerApi, contract_address: str, new_implementation: Address @@ -243,7 +232,6 @@ def get_locked_events( olas_amount: int | None = None, lock_amount: int | None = None, vault_balance: int | None = None, - unlock_time_increased: bool | None = None, look_back: int = 1000, to_block: str = "latest", from_block: int | None = None, @@ -258,7 +246,6 @@ def get_locked_events( ("olasAmount", olas_amount), ("lockAmount", lock_amount), ("vaultBalance", vault_balance), - ("unlockTimeIncreased", unlock_time_increased), ) if value is not None } diff --git a/packages/lstolas/contracts/lst_distributor/contract.yaml b/packages/lstolas/contracts/lst_distributor/contract.yaml index 558ae41..3d74a61 100644 --- a/packages/lstolas/contracts/lst_distributor/contract.yaml +++ b/packages/lstolas/contracts/lst_distributor/contract.yaml @@ -7,8 +7,8 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeihpnu7q76mqvdu5k2mtocg7ynhfpf5lp6tncexrzzcfleozaz6fna - build/lst_distributor.json: bafybeid6utdcft3pfohs7hetmhagixup2q5d67kd6p4uqw2xzjobzeuodq - contract.py: bafybeierwpu5qocpk5sv6kxtxfhfk5nfy2grr56glcekouufcrel3e3yxm + build/lst_distributor.json: bafybeicdcxtjcgwklqbdic2haptjq44wy2eqabpxuofimgvwjxiaozhdne + contract.py: bafybeiebftuorsr32sseox2ab3ip4wi6uecemai4n3ki52klfcyx73xlnu tests/test_lst_distributor.py: bafybeigvlwmg5vqxp3y3hmkztbbhpld7tu5n4h7onv5l73tl5uy2w2y6xu fingerprint_ignore_patterns: [] class_name: LstDistributor diff --git a/packages/lstolas/contracts/lst_staking_manager/contract.py b/packages/lstolas/contracts/lst_staking_manager/contract.py index 16728c1..dcdee99 100644 --- a/packages/lstolas/contracts/lst_staking_manager/contract.py +++ b/packages/lstolas/contracts/lst_staking_manager/contract.py @@ -295,7 +295,7 @@ def change_staking_processor_l2( def claim(cls, ledger_api: LedgerApi, contract_address: str, staking_proxy: Address, service_id: int) -> JSONLike: """Handler method for the 'claim' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.claim(stakingProxy=staking_proxy, serviceId=service_id) + return instance.functions.claim(serviceId=service_id, stakingProxy=staking_proxy) @classmethod def initialize( @@ -309,9 +309,9 @@ def initialize( """Handler method for the 'initialize' requests.""" instance = cls.get_instance(ledger_api, contract_address) return instance.functions.initialize( + _fallbackHandler=fallback_handler, _safeMultisig=safe_multisig, _safeSameAddressMultisig=safe_same_address_multisig, - _fallbackHandler=fallback_handler, ) @classmethod @@ -328,7 +328,7 @@ def stake( ) -> JSONLike: """Handler method for the 'stake' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.stake(stakingProxy=staking_proxy, amount=amount, operation=operation) + return instance.functions.stake(amount=amount, operation=operation, stakingProxy=staking_proxy) @classmethod def unstake( @@ -336,7 +336,7 @@ def unstake( ) -> JSONLike: """Handler method for the 'unstake' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.unstake(stakingProxy=staking_proxy, amount=amount, operation=operation) + return instance.functions.unstake(amount=amount, operation=operation, stakingProxy=staking_proxy) @classmethod def get_claimed_events( diff --git a/packages/lstolas/contracts/lst_staking_manager/contract.yaml b/packages/lstolas/contracts/lst_staking_manager/contract.yaml index 4801d9c..a38b400 100644 --- a/packages/lstolas/contracts/lst_staking_manager/contract.yaml +++ b/packages/lstolas/contracts/lst_staking_manager/contract.yaml @@ -8,7 +8,7 @@ aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeib637peb5pvswcr74utqhns4dw6wgiqcb6bk6q32e7kvjdtxozgdq build/lst_staking_manager.json: bafybeihj7czsmro42a7l6tftutxdvgguvvutfhwdatrc344dltfsyqzeue - contract.py: bafybeicgdtiq4mo4gdkdqjhfirsx2iwmq5q3telnu3l7rgkaa5vxt2ofui + contract.py: bafybeicnwph3qrn436wbqauv6wygsy2a55ppd6yioizqvs3objvvptczfu tests/test_lst_staking_manager.py: bafybeicfdxajzj4kkzeplnckvfwrrzibntixhmv5lxd2l3yp3fxvqcyndu fingerprint_ignore_patterns: [] class_name: LstStakingManager diff --git a/packages/lstolas/contracts/lst_staking_processor_l2/build/lst_staking_processor_l2.json b/packages/lstolas/contracts/lst_staking_processor_l2/build/lst_staking_processor_l2.json index 1b2ccae..ade96ee 100644 --- a/packages/lstolas/contracts/lst_staking_processor_l2/build/lst_staking_processor_l2.json +++ b/packages/lstolas/contracts/lst_staking_processor_l2/build/lst_staking_processor_l2.json @@ -1 +1 @@ -{"abi": [{"type": "receive","stateMutability": "payable"},{"type": "function","name": "MAX_CHAIN_ID","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "STAKE","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "UNSTAKE","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "UNSTAKE_RETIRED","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "drain","inputs": [],"outputs": [{"name": "amount","type": "uint256","internalType": "uint256"}],"stateMutability": "nonpayable"},{"type": "function","name": "getBridgingDecimals","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "pure"},{"type": "function","name": "getQueuedHash","inputs": [{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "target","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "l1DepositProcessor","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "l1SourceChainId","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "l2MessageRelayer","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "l2TokenRelayer","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "migrate","inputs": [{"name": "newL2TargetDispenser","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "pause","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "paused","inputs": [],"outputs": [{"name": "","type": "uint8","internalType": "uint8"}],"stateMutability": "view"},{"type": "function","name": "processDataMaintenance","inputs": [{"name": "data","type": "bytes","internalType": "bytes"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "processedHashes","inputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "","type": "bool","internalType": "bool"}],"stateMutability": "view"},{"type": "function","name": "queuedHashes","inputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "","type": "bool","internalType": "bool"}],"stateMutability": "view"},{"type": "function","name": "redeem","inputs": [{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "target","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "relayToL1","inputs": [{"name": "to","type": "address","internalType": "address"},{"name": "olasAmount","type": "uint256","internalType": "uint256"},{"name": "bridgePayload","type": "bytes","internalType": "bytes"}],"outputs": [],"stateMutability": "payable"},{"type": "function","name": "stakingManager","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "unpause","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "event","name": "Drain","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "FundsReceived","inputs": [{"name": "sender","type": "address","indexed": true,"internalType": "address"},{"name": "value","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "MessageReceived","inputs": [{"name": "sender","type": "address","indexed": true,"internalType": "address"},{"name": "chainId","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "data","type": "bytes","indexed": false,"internalType": "bytes"}],"anonymous": false},{"type": "event","name": "Migrated","inputs": [{"name": "sender","type": "address","indexed": true,"internalType": "address"},{"name": "newL2TargetDispenser","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "RequestExecuted","inputs": [{"name": "batchHash","type": "bytes32","indexed": true,"internalType": "bytes32"},{"name": "target","type": "address","indexed": false,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "operation","type": "bytes32","indexed": false,"internalType": "bytes32"}],"anonymous": false},{"type": "event","name": "RequestQueued","inputs": [{"name": "batchHash","type": "bytes32","indexed": true,"internalType": "bytes32"},{"name": "target","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "operation","type": "bytes32","indexed": false,"internalType": "bytes32"},{"name": "status","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "StakingProcessorPaused","inputs": [],"anonymous": false},{"type": "event","name": "StakingProcessorUnpaused","inputs": [],"anonymous": false},{"type": "error","name": "AlreadyDelivered","inputs": [{"name": "deliveryHash","type": "bytes32","internalType": "bytes32"}]},{"type": "error","name": "IncorrectDataLength","inputs": [{"name": "expected","type": "uint256","internalType": "uint256"},{"name": "provided","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "InsufficientBalance","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "LowerThan","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "ManagerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "manager","type": "address","internalType": "address"}]},{"type": "error","name": "OperationNotFound","inputs": [{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "operation","type": "bytes32","internalType": "bytes32"}]},{"type": "error","name": "Overflow","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "max","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "Paused","inputs": []},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "RequestNotQueued","inputs": [{"name": "target","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "operation","type": "bytes32","internalType": "bytes32"}]},{"type": "error","name": "TargetRelayerOnly","inputs": [{"name": "provided","type": "address","internalType": "address"},{"name": "expected","type": "address","internalType": "address"}]},{"type": "error","name": "TransferFailed","inputs": [{"name": "token","type": "address","internalType": "address"},{"name": "from","type": "address","internalType": "address"},{"name": "to","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "Unpaused","inputs": []},{"type": "error","name": "WrongAccount","inputs": [{"name": "account","type": "address","internalType": "address"}]},{"type": "error","name": "WrongAmount","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "WrongChainId","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "WrongMessageSender","inputs": [{"name": "provided","type": "address","internalType": "address"},{"name": "expected","type": "address","internalType": "address"}]},{"type": "error","name": "WrongTokenAddress","inputs": [{"name": "provided","type": "address","internalType": "address"},{"name": "expected","type": "address","internalType": "address"}]},{"type": "error","name": "ZeroAddress","inputs": []},{"type": "error","name": "ZeroValue","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file +{"abi": [{"type": "constructor","inputs": [{"name": "_olas","type": "address","internalType": "address"},{"name": "_stakingManager","type": "address","internalType": "address"},{"name": "_collector","type": "address","internalType": "address"},{"name": "_l2TokenRelayer","type": "address","internalType": "address"},{"name": "_l2MessageRelayer","type": "address","internalType": "address"},{"name": "_l1DepositProcessor","type": "address","internalType": "address"},{"name": "_l1SourceChainId","type": "uint256","internalType": "uint256"}],"stateMutability": "nonpayable"},{"type": "receive","stateMutability": "payable"},{"type": "function","name": "MAX_CHAIN_ID","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "STAKE","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "UNSTAKE","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "UNSTAKE_RETIRED","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "collector","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "drain","inputs": [],"outputs": [{"name": "nativeAmount","type": "uint256","internalType": "uint256"}],"stateMutability": "nonpayable"},{"type": "function","name": "getBridgingDecimals","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "pure"},{"type": "function","name": "getQueuedHash","inputs": [{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "target","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "l1DepositProcessor","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "l1SourceChainId","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "l2MessageRelayer","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "l2TokenRelayer","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "pause","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "paused","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "function","name": "processedHashes","inputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "","type": "bool","internalType": "bool"}],"stateMutability": "view"},{"type": "function","name": "queuedHashes","inputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"outputs": [{"name": "","type": "uint8","internalType": "enum DefaultStakingProcessorL2.RequestStatus"}],"stateMutability": "view"},{"type": "function","name": "receiveMessage","inputs": [{"name": "data","type": "bytes","internalType": "bytes"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "redeem","inputs": [{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "target","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "relayToL1","inputs": [{"name": "to","type": "address","internalType": "address"},{"name": "olasAmount","type": "uint256","internalType": "uint256"},{"name": "","type": "bytes","internalType": "bytes"}],"outputs": [],"stateMutability": "payable"},{"type": "function","name": "stakingManager","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "unpause","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "event","name": "Drain","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "FundsReceived","inputs": [{"name": "sender","type": "address","indexed": true,"internalType": "address"},{"name": "value","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "event","name": "MessageReceived","inputs": [{"name": "sender","type": "address","indexed": true,"internalType": "address"},{"name": "chainId","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "data","type": "bytes","indexed": false,"internalType": "bytes"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "RequestExecuted","inputs": [{"name": "batchHash","type": "bytes32","indexed": true,"internalType": "bytes32"},{"name": "target","type": "address","indexed": false,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "operation","type": "bytes32","indexed": false,"internalType": "bytes32"}],"anonymous": false},{"type": "event","name": "RequestQueued","inputs": [{"name": "batchHash","type": "bytes32","indexed": true,"internalType": "bytes32"},{"name": "target","type": "address","indexed": true,"internalType": "address"},{"name": "amount","type": "uint256","indexed": false,"internalType": "uint256"},{"name": "operation","type": "bytes32","indexed": false,"internalType": "bytes32"},{"name": "status","type": "uint8","indexed": false,"internalType": "enum DefaultStakingProcessorL2.RequestStatus"}],"anonymous": false},{"type": "event","name": "StakingProcessorPaused","inputs": [],"anonymous": false},{"type": "event","name": "StakingProcessorUnpaused","inputs": [],"anonymous": false},{"type": "error","name": "AlreadyDelivered","inputs": [{"name": "deliveryHash","type": "bytes32","internalType": "bytes32"}]},{"type": "error","name": "IncorrectDataLength","inputs": [{"name": "expected","type": "uint256","internalType": "uint256"},{"name": "provided","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "InsufficientBalance","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "LowerThan","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "ManagerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "manager","type": "address","internalType": "address"}]},{"type": "error","name": "OperationNotFound","inputs": [{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "operation","type": "bytes32","internalType": "bytes32"}]},{"type": "error","name": "Overflow","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "max","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "Paused","inputs": []},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "RequestFailed","inputs": [{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "target","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "operation","type": "bytes32","internalType": "bytes32"},{"name": "status","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "RequestNotQueued","inputs": [{"name": "target","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"},{"name": "batchHash","type": "bytes32","internalType": "bytes32"},{"name": "operation","type": "bytes32","internalType": "bytes32"}]},{"type": "error","name": "TargetRelayerOnly","inputs": [{"name": "provided","type": "address","internalType": "address"},{"name": "expected","type": "address","internalType": "address"}]},{"type": "error","name": "TransferFailed","inputs": [{"name": "token","type": "address","internalType": "address"},{"name": "from","type": "address","internalType": "address"},{"name": "to","type": "address","internalType": "address"},{"name": "amount","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "Unpaused","inputs": []},{"type": "error","name": "WrongAccount","inputs": [{"name": "account","type": "address","internalType": "address"}]},{"type": "error","name": "WrongAmount","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "WrongChainId","inputs": [{"name": "provided","type": "uint256","internalType": "uint256"},{"name": "expected","type": "uint256","internalType": "uint256"}]},{"type": "error","name": "WrongMessageSender","inputs": [{"name": "provided","type": "address","internalType": "address"},{"name": "expected","type": "address","internalType": "address"}]},{"type": "error","name": "WrongTokenAddress","inputs": [{"name": "provided","type": "address","internalType": "address"},{"name": "expected","type": "address","internalType": "address"}]},{"type": "error","name": "ZeroAddress","inputs": []},{"type": "error","name": "ZeroValue","inputs": []},{"type": "error","name": "ZeroValueOnly","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file diff --git a/packages/lstolas/contracts/lst_staking_processor_l2/contract.py b/packages/lstolas/contracts/lst_staking_processor_l2/contract.py index 2a97c40..7499faa 100644 --- a/packages/lstolas/contracts/lst_staking_processor_l2/contract.py +++ b/packages/lstolas/contracts/lst_staking_processor_l2/contract.py @@ -56,6 +56,17 @@ def unstake_retired( result = instance.functions.UNSTAKE_RETIRED().call() return {"str": result} + @classmethod + def collector( + cls, + ledger_api: LedgerApi, + contract_address: str, + ) -> JSONLike: + """Handler method for the 'collector' requests.""" + instance = cls.get_instance(ledger_api, contract_address) + result = instance.functions.collector().call() + return {"address": result} + @classmethod def get_bridging_decimals( cls, @@ -74,7 +85,7 @@ def get_queued_hash( """Handler method for the 'get_queued_hash' requests.""" instance = cls.get_instance(ledger_api, contract_address) result = instance.functions.getQueuedHash( - batchHash=batch_hash, target=target, amount=amount, operation=operation + amount=amount, batchHash=batch_hash, operation=operation, target=target ).call() return {"str": result} @@ -167,7 +178,7 @@ def queued_hashes(cls, ledger_api: LedgerApi, contract_address: str, var_0: str) """Handler method for the 'queued_hashes' requests.""" instance = cls.get_instance(ledger_api, contract_address) result = instance.functions.queuedHashes(var_0).call() - return {"bool": result} + return {"int": result} @classmethod def staking_manager( @@ -196,12 +207,6 @@ def drain( instance = cls.get_instance(ledger_api, contract_address) return instance.functions.drain() - @classmethod - def migrate(cls, ledger_api: LedgerApi, contract_address: str, new_l2_target_dispenser: Address) -> JSONLike: - """Handler method for the 'migrate' requests.""" - instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.migrate(newL2TargetDispenser=new_l2_target_dispenser) - @classmethod def pause( cls, @@ -213,10 +218,10 @@ def pause( return instance.functions.pause() @classmethod - def process_data_maintenance(cls, ledger_api: LedgerApi, contract_address: str, data: str) -> JSONLike: - """Handler method for the 'process_data_maintenance' requests.""" + def receive_message(cls, ledger_api: LedgerApi, contract_address: str, data: str) -> JSONLike: + """Handler method for the 'receive_message' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.processDataMaintenance(data=data) + return instance.functions.receiveMessage(data=data) @classmethod def redeem( @@ -224,15 +229,15 @@ def redeem( ) -> JSONLike: """Handler method for the 'redeem' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.redeem(batchHash=batch_hash, target=target, amount=amount, operation=operation) + return instance.functions.redeem(amount=amount, batchHash=batch_hash, operation=operation, target=target) @classmethod def relay_to_l1( - cls, ledger_api: LedgerApi, contract_address: str, to: Address, olas_amount: int, bridge_payload: str + cls, ledger_api: LedgerApi, contract_address: str, to: Address, olas_amount: int, var_2: str ) -> JSONLike: """Handler method for the 'relay_to_l1' requests.""" instance = cls.get_instance(ledger_api, contract_address) - return instance.functions.relayToL1(to=to, olasAmount=olas_amount, bridgePayload=bridge_payload) + return instance.functions.relayToL1(var_2, olasAmount=olas_amount, to=to) @classmethod def unpause( @@ -331,43 +336,6 @@ def get_message_received_events( "to_block": to_block, } - @classmethod - def get_migrated_events( - cls, - ledger_api: LedgerApi, - contract_address: str, - sender: Address = None, - new_l2_target_dispenser: Address = None, - amount: int | None = None, - look_back: int = 1000, - to_block: str = "latest", - from_block: int | None = None, - ) -> JSONLike: - """Handler method for the 'Migrated' events .""" - - instance = cls.get_instance(ledger_api, contract_address) - arg_filters = { - key: value - for key, value in ( - ("sender", sender), - ("newL2TargetDispenser", new_l2_target_dispenser), - ("amount", amount), - ) - if value is not None - } - to_block = to_block or "latest" - if to_block == "latest": - to_block = ledger_api.api.eth.block_number - from_block = from_block or (to_block - look_back) - result = instance.events.Migrated().get_logs( - fromBlock=from_block, toBlock=to_block, argument_filters=arg_filters - ) - return { - "events": result, - "from_block": from_block, - "to_block": to_block, - } - @classmethod def get_owner_updated_events( cls, diff --git a/packages/lstolas/contracts/lst_staking_processor_l2/contract.yaml b/packages/lstolas/contracts/lst_staking_processor_l2/contract.yaml index 819185e..7958c0b 100644 --- a/packages/lstolas/contracts/lst_staking_processor_l2/contract.yaml +++ b/packages/lstolas/contracts/lst_staking_processor_l2/contract.yaml @@ -7,8 +7,8 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeibgapbmjuxf26oygk4t3ixjg54sy22qsyq3vteockverfpug5xbpa - build/lst_staking_processor_l2.json: bafybeidcxnv7zq7h37z7thc7p2ahoadrzy34ex6lxywiz5hvgkjgubga7a - contract.py: bafybeie5zh2k7s5c5u4fcnxcw2srf6l44yvmxmraoeylckynycy3gmf5ay + build/lst_staking_processor_l2.json: bafybeiflf4gau27eigbutxlybbqiywqpfnhjqqm4c2gpl2y22p4dzvlt6m + contract.py: bafybeie6nbhpwzxjpucvirrarwiope23rc4hagu4y2ci7tfusxt6js7wv4 tests/test_lst_staking_processor_l2.py: bafybeig76yjwslj4gwzzrb5qinam5ajh5oh44mpigmwt5aoku5kygq65ni fingerprint_ignore_patterns: [] class_name: LstStakingProcessorL2 diff --git a/packages/lstolas/contracts/lst_staking_token_locked/contract.py b/packages/lstolas/contracts/lst_staking_token_locked/contract.py index 04decd3..b880e12 100644 --- a/packages/lstolas/contracts/lst_staking_token_locked/contract.py +++ b/packages/lstolas/contracts/lst_staking_token_locked/contract.py @@ -155,7 +155,7 @@ def map_service_info(cls, ledger_api: LedgerApi, contract_address: str, var_0: i """Handler method for the 'map_service_info' requests.""" instance = cls.get_instance(ledger_api, contract_address) result = instance.functions.mapServiceInfo(var_0).call() - return {"multisig": result, "owner": result, "tsStart": result, "reward": result} + return {"multisig": result[0], "owner": result[1], "tsStart": result[2], "reward": result[3]} @classmethod def max_num_services( diff --git a/packages/lstolas/contracts/lst_staking_token_locked/contract.yaml b/packages/lstolas/contracts/lst_staking_token_locked/contract.yaml index ebea64d..6e37fbf 100644 --- a/packages/lstolas/contracts/lst_staking_token_locked/contract.yaml +++ b/packages/lstolas/contracts/lst_staking_token_locked/contract.yaml @@ -8,8 +8,8 @@ aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeidcnq5w2q5vc32ghuu5seqv5wd52wvlp7kkck6sithhh7mkrixbnu build/lst_staking_token_locked.json: bafybeiafelcef3fxqb4im7bdyhii2lcjluddvynyp4sjr3k6dbgdbromk4 - contract.py: bafybeihxycuwxmflv64gx5lknx6fygxm2icsgwadf6j7risphu4dejh3vm - tests/test_lst_staking_token_locked.py: bafybeig76yjwslj4gwzzrb5qinam5ajh5oh44mpigmwt5aoku5kygq65ni + contract.py: bafybeida7xpgvohlm53jgu4trnfpkmba4l2nbxjzhbuwiyf5awj3tarqhu + tests/test_lst_staking_token_locked.py: bafybeifa7wctm37rhppwenjzfb6jxvpd764oguqks6xoznsuj2zm35ssiy fingerprint_ignore_patterns: [] class_name: LstStakingTokenLocked contract_interface_paths: diff --git a/packages/lstolas/contracts/lst_staking_token_locked/tests/test_lst_staking_token_locked.py b/packages/lstolas/contracts/lst_staking_token_locked/tests/test_lst_staking_token_locked.py index de4b9f0..924a327 100644 --- a/packages/lstolas/contracts/lst_staking_token_locked/tests/test_lst_staking_token_locked.py +++ b/packages/lstolas/contracts/lst_staking_token_locked/tests/test_lst_staking_token_locked.py @@ -16,9 +16,9 @@ # # ------------------------------------------------------------------------------ -"""This module contains the tests for the lst_staking_processor_l2 contract.""" +"""This module contains the tests for the lst_staking_token_locked contract.""" -def test_lst_staking_processor_l2_contract(): - """Test the lst_staking_processor_l2 contract.""" +def test_lst_staking_token_locked_contract(): + """Test the lst_staking_token_locked contract.""" assert True diff --git a/packages/lstolas/contracts/lst_unstake_relayer/build/lst_unstake_relayer.json b/packages/lstolas/contracts/lst_unstake_relayer/build/lst_unstake_relayer.json index 821344c..5792ede 100644 --- a/packages/lstolas/contracts/lst_unstake_relayer/build/lst_unstake_relayer.json +++ b/packages/lstolas/contracts/lst_unstake_relayer/build/lst_unstake_relayer.json @@ -1 +1 @@ -{"abi": [{"type": "constructor","inputs": [{"name": "_olas","type": "address","internalType": "address"},{"name": "_st","type": "address","internalType": "address"}],"stateMutability": "nonpayable"},{"type": "function","name": "PROXY_SLOT","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "VERSION","inputs": [],"outputs": [{"name": "","type": "string","internalType": "string"}],"stateMutability": "view"},{"type": "function","name": "changeImplementation","inputs": [{"name": "newImplementation","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "initialize","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "relay","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "st","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "totalRelayedAmount","inputs": [],"outputs": [{"name": "","type": "uint256","internalType": "uint256"}],"stateMutability": "view"},{"type": "event","name": "ImplementationUpdated","inputs": [{"name": "implementation","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "UnstakeRelayed","inputs": [{"name": "account","type": "address","indexed": true,"internalType": "address"},{"name": "st","type": "address","indexed": true,"internalType": "address"},{"name": "olasAmount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "error","name": "AlreadyInitialized","inputs": []},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "ZeroAddress","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file +{"abi": [{"type": "constructor","inputs": [{"name": "_olas","type": "address","internalType": "address"},{"name": "_st","type": "address","internalType": "address"}],"stateMutability": "nonpayable"},{"type": "function","name": "PROXY_SLOT","inputs": [],"outputs": [{"name": "","type": "bytes32","internalType": "bytes32"}],"stateMutability": "view"},{"type": "function","name": "VERSION","inputs": [],"outputs": [{"name": "","type": "string","internalType": "string"}],"stateMutability": "view"},{"type": "function","name": "changeImplementation","inputs": [{"name": "newImplementation","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "changeOwner","inputs": [{"name": "newOwner","type": "address","internalType": "address"}],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "initialize","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "olas","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "owner","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "function","name": "relay","inputs": [],"outputs": [],"stateMutability": "nonpayable"},{"type": "function","name": "st","inputs": [],"outputs": [{"name": "","type": "address","internalType": "address"}],"stateMutability": "view"},{"type": "event","name": "ImplementationUpdated","inputs": [{"name": "implementation","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "OwnerUpdated","inputs": [{"name": "owner","type": "address","indexed": true,"internalType": "address"}],"anonymous": false},{"type": "event","name": "UnstakeRelayed","inputs": [{"name": "account","type": "address","indexed": true,"internalType": "address"},{"name": "st","type": "address","indexed": true,"internalType": "address"},{"name": "olasAmount","type": "uint256","indexed": false,"internalType": "uint256"}],"anonymous": false},{"type": "error","name": "AlreadyInitialized","inputs": []},{"type": "error","name": "OwnerOnly","inputs": [{"name": "sender","type": "address","internalType": "address"},{"name": "owner","type": "address","internalType": "address"}]},{"type": "error","name": "ReentrancyGuard","inputs": []},{"type": "error","name": "ZeroAddress","inputs": []}],"_format": "","bytecode": "","sourceName": "","deployedBytecode": "","deployedLinkReferences": ""} \ No newline at end of file diff --git a/packages/lstolas/contracts/lst_unstake_relayer/contract.py b/packages/lstolas/contracts/lst_unstake_relayer/contract.py index f1b69ed..112d06e 100644 --- a/packages/lstolas/contracts/lst_unstake_relayer/contract.py +++ b/packages/lstolas/contracts/lst_unstake_relayer/contract.py @@ -67,17 +67,6 @@ def st( result = instance.functions.st().call() return {"address": result} - @classmethod - def total_relayed_amount( - cls, - ledger_api: LedgerApi, - contract_address: str, - ) -> JSONLike: - """Handler method for the 'total_relayed_amount' requests.""" - instance = cls.get_instance(ledger_api, contract_address) - result = instance.functions.totalRelayedAmount().call() - return {"int": result} - @classmethod def change_implementation( cls, ledger_api: LedgerApi, contract_address: str, new_implementation: Address diff --git a/packages/lstolas/contracts/lst_unstake_relayer/contract.yaml b/packages/lstolas/contracts/lst_unstake_relayer/contract.yaml index d283a73..4ca6a85 100644 --- a/packages/lstolas/contracts/lst_unstake_relayer/contract.yaml +++ b/packages/lstolas/contracts/lst_unstake_relayer/contract.yaml @@ -7,8 +7,8 @@ license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: __init__.py: bafybeict6cglw3bhl7tkgj472n23sxekryej7raa5kaplmfbsodszerkbu - build/lst_unstake_relayer.json: bafybeieo22jbfw67bcb2khawueiiyidjsa2wcidun5ab7vk66rlhdoo36m - contract.py: bafybeiex76ljvjfa7ltw5mrzbjslsubn3xka5n7zs2b2rcuvm7me7indwq + build/lst_unstake_relayer.json: bafybeifukj7ze5wrlmygwaszqr227dkjdswhqxc2fdhry7qhw7dfu2ne24 + contract.py: bafybeiebybhrrg7mmqyg3slhhcov7tvizs74hmcscmq3hxy3isfmfpfsde tests/test_lst_unstake_relayer.py: bafybeihg6m2u76jpvon3vyl7s2mhzql3vb57ljfhmscat23geg53dikm44 fingerprint_ignore_patterns: [] class_name: LstUnstakeRelayer diff --git a/packages/lstolas/skills/lst_skill/skill.yaml b/packages/lstolas/skills/lst_skill/skill.yaml index a962509..a5e3ed4 100644 --- a/packages/lstolas/skills/lst_skill/skill.yaml +++ b/packages/lstolas/skills/lst_skill/skill.yaml @@ -35,13 +35,13 @@ fingerprint_ignore_patterns: [] connections: - eightballer/apprise_wrapper:0.1.0:bafybeibekoqsadyztskr353x3usoxe4bmjlr45ecafmyfbxay6dc4jxcci contracts: -- lstolas/lst_collector:0.1.0:bafybeid4k36qpva3rbxialkoxoyikdderfidj7sl6zx6nidfakbbebvga4 -- lstolas/lst_unstake_relayer:0.1.0:bafybeicsh2zzjov3cgmuvhm6llhvqngi4vp6na5ixzfxsvq5mtygw5mc3a -- lstolas/lst_distributor:0.1.0:bafybeidjdpm5igddhydmjrpjsatcoshwajpfraxszegk4ujdg6sp2txcxm -- lstolas/lst_staking_manager:0.1.0:bafybeif7utuuw562bxj7miugvouno4pwq4naivnk52m4ueiili44772dbi -- lstolas/lst_activity_module:0.1.0:bafybeidvkc3nxfgywjhzp7oqyyighy2smstirs2eubg6tk6lhe334izcri -- lstolas/lst_staking_token_locked:0.1.0:bafybeiftbu2o4nx2jj6kbkr2u5zc5z46suivqiq4dzb23i6osbc3xcflya -- lstolas/lst_staking_processor_l2:0.1.0:bafybeicekkydfkbq3fcxihqzllchv636habhuunlvn7bukt33l3y36mtna +- lstolas/lst_collector:0.1.0:bafybeiacozfuo5d4banesijrla7bruijmu3n6se2xefjrgvbkxpafw2p5i +- lstolas/lst_unstake_relayer:0.1.0:bafybeicbbjvul6qww6tmzttifxtvjqfjsbqriaacslesm4y77slsa3ygsi +- lstolas/lst_distributor:0.1.0:bafybeidpvui4otijeu47zbvszfywi64u3rgv45ywrgxodmtglg3ix7giwu +- lstolas/lst_staking_manager:0.1.0:bafybeichvenuondlet4j2svxma66h3nbau24bo4umnyxkbdjejzmyy366y +- lstolas/lst_activity_module:0.1.0:bafybeiaq7rmkxu26yzejgvubnjdwlv7zaufhp7bylbsdeaz4t7hf2cmahq +- lstolas/lst_staking_token_locked:0.1.0:bafybeidw4povdmyzpszkzgnw6iv3w4gnbzboqq5dolxegjptcadv26lgyy +- lstolas/lst_staking_processor_l2:0.1.0:bafybeicm7m3vlravmbf7cyqk3x3lwjpjd3nuvhxi6srflxaei3kyxx2mza - eightballer/erc_20:0.1.0:bafybeig622mhgil3uq34d4l3r6moxisgvxwxtrosds2x7glx3kg5z4yqzq - eightballer/amb_mainnet:0.1.0:bafybeiecfrsrysggmmosj5bhboqkcyrixxtjkdj4fjcjmyu3puwtzu2zmy - eightballer/amb_gnosis:0.1.0:bafybeie5gqdocwsq27jt25aaqprz7mvauxrv3eczpbnbewffdjj6eotlmq diff --git a/packages/packages.json b/packages/packages.json index bd9312c..7fba43d 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -1,19 +1,19 @@ { "dev": { - "contract/lstolas/lst_collector/0.1.0": "bafybeid4k36qpva3rbxialkoxoyikdderfidj7sl6zx6nidfakbbebvga4", - "contract/lstolas/lst_activity_module/0.1.0": "bafybeidvkc3nxfgywjhzp7oqyyighy2smstirs2eubg6tk6lhe334izcri", - "contract/lstolas/lst_distributor/0.1.0": "bafybeidjdpm5igddhydmjrpjsatcoshwajpfraxszegk4ujdg6sp2txcxm", - "contract/lstolas/lst_unstake_relayer/0.1.0": "bafybeicsh2zzjov3cgmuvhm6llhvqngi4vp6na5ixzfxsvq5mtygw5mc3a", - "contract/lstolas/lst_staking_processor_l2/0.1.0": "bafybeicekkydfkbq3fcxihqzllchv636habhuunlvn7bukt33l3y36mtna", - "contract/lstolas/lst_staking_manager/0.1.0": "bafybeif7utuuw562bxj7miugvouno4pwq4naivnk52m4ueiili44772dbi", + "contract/lstolas/lst_collector/0.1.0": "bafybeiacozfuo5d4banesijrla7bruijmu3n6se2xefjrgvbkxpafw2p5i", + "contract/lstolas/lst_activity_module/0.1.0": "bafybeiaq7rmkxu26yzejgvubnjdwlv7zaufhp7bylbsdeaz4t7hf2cmahq", + "contract/lstolas/lst_distributor/0.1.0": "bafybeidpvui4otijeu47zbvszfywi64u3rgv45ywrgxodmtglg3ix7giwu", + "contract/lstolas/lst_unstake_relayer/0.1.0": "bafybeicbbjvul6qww6tmzttifxtvjqfjsbqriaacslesm4y77slsa3ygsi", + "contract/lstolas/lst_staking_processor_l2/0.1.0": "bafybeicm7m3vlravmbf7cyqk3x3lwjpjd3nuvhxi6srflxaei3kyxx2mza", + "contract/lstolas/lst_staking_manager/0.1.0": "bafybeichvenuondlet4j2svxma66h3nbau24bo4umnyxkbdjejzmyy366y", "contract/eightballer/amb_mainnet/0.1.0": "bafybeiecfrsrysggmmosj5bhboqkcyrixxtjkdj4fjcjmyu3puwtzu2zmy", "contract/eightballer/amb_gnosis/0.1.0": "bafybeie5gqdocwsq27jt25aaqprz7mvauxrv3eczpbnbewffdjj6eotlmq", "contract/eightballer/amb_gnosis_helper/0.1.0": "bafybeig37p3q4se2it75kt4zvqvrvzk4fqc7eyspspt3txooxxljkurkey", "contract/eightballer/erc_20/0.1.0": "bafybeig622mhgil3uq34d4l3r6moxisgvxwxtrosds2x7glx3kg5z4yqzq", - "contract/lstolas/lst_staking_token_locked/0.1.0": "bafybeiftbu2o4nx2jj6kbkr2u5zc5z46suivqiq4dzb23i6osbc3xcflya", - "skill/lstolas/lst_skill/0.1.0": "bafybeia23kiycb6jcuptpegunurfn7hifiq62shjp4v73pnehrsvydbfp4", - "agent/lstolas/lst_agent/0.1.0": "bafybeie5xunjwbaelfnyysawgb6j4gqayj5wi2ldx77dta4wjzsebwe3lq", - "agent/lstolas/lst_agent_prod/0.1.0": "bafybeielpxrtavibci6d2fmro5otifidletmctfiaeaqrfjsxhnjatcncq" + "contract/lstolas/lst_staking_token_locked/0.1.0": "bafybeidw4povdmyzpszkzgnw6iv3w4gnbzboqq5dolxegjptcadv26lgyy", + "skill/lstolas/lst_skill/0.1.0": "bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a", + "agent/lstolas/lst_agent/0.1.0": "bafybeiasu5mbpc6genaggcwzwekednfgut4cypu5kp6kje2utasgxrhfvu", + "agent/lstolas/lst_agent_prod/0.1.0": "bafybeifvc5iwrk4wgtagf4zgx2l54ydre2rg3i5tfywt2ltjohnicdpebu" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm", diff --git a/scripts/generate_contracts.sh b/scripts/generate_contracts.sh index 8de851d..194f456 100755 --- a/scripts/generate_contracts.sh +++ b/scripts/generate_contracts.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +set -eu function generate_contracts() { local abi_path=$1 @@ -10,10 +11,10 @@ function generate_contracts() { adev scaffold contract --from-abi "$abi_path" "${contract_author}/${contract_name}" } -generate_contracts ../olas-lst/out/StakingTokenLocked.sol/StakingTokenLocked.json lst_staking_token_locked -generate_contracts ../olas-lst/out/Collector.sol/Collector.json lst_collector -generate_contracts ../olas-lst/out/ActivityModule.sol/ActivityModule.json lst_activity_module -generate_contracts ../olas-lst/out/Distributor.sol/Distributor.json lst_distributor -generate_contracts ../olas-lst/out/UnstakeRelayer.sol/UnstakeRelayer.json lst_unstake_relayer -generate_contracts ../olas-lst/out/DefaultStakingProcessorL2.sol/DefaultStakingProcessorL2.json lst_staking_processor_l2 -generate_contracts ../olas-lst/out/StakingManager.sol/StakingManager.json lst_staking_manager +generate_contracts ../olas-lst/abis/0.8.30/StakingTokenLocked.json lst_staking_token_locked +generate_contracts ../olas-lst/abis/0.8.30/Collector.json lst_collector +generate_contracts ../olas-lst/abis/0.8.30/ActivityModule.json lst_activity_module +generate_contracts ../olas-lst/abis/0.8.30/Distributor.json lst_distributor +generate_contracts ../olas-lst/abis/0.8.30/UnstakeRelayer.json lst_unstake_relayer +generate_contracts ../olas-lst/abis/0.8.30/GnosisStakingProcessorL2.json lst_staking_processor_l2 +generate_contracts ../olas-lst/abis/0.8.30/StakingManager.json lst_staking_manager From c2f2aaebce1759a5a852dfd8d9c3549ef3e66769 Mon Sep 17 00:00:00 2001 From: 8ball030 <8baller@station.codes> Date: Sun, 26 Oct 2025 15:04:40 +0000 Subject: [PATCH 3/5] feat:-regenerated --- .gitignore | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index c567961..3398280 100644 --- a/.gitignore +++ b/.gitignore @@ -23,8 +23,8 @@ packages/eightballer/connections/http_client packages/eightballer/connections/http_server packages/eightballer/connections/prometheus packages/eightballer/skills/prometheus -/lst_agent/ -/lst_agent_prod/ +/lst_agent +/lst_agent_prod packages/eightballer/protocols/user_interaction packages/eightballer/connections/apprise_wrapper From 12a56e172aed6f6be1e0e4fde891ea2e3d57517b Mon Sep 17 00:00:00 2001 From: 8ball030 <8baller@station.codes> Date: Sun, 26 Oct 2025 22:13:17 +0000 Subject: [PATCH 4/5] feat:fixes-for-redeem --- .../lstolas/agents/lst_agent/aea-config.yaml | 2 +- .../agents/lst_agent_prod/aea-config.yaml | 4 +- .../behaviours_classes/redeem_round.py | 63 ++++++++++++------- packages/lstolas/skills/lst_skill/models.py | 21 ++++++- packages/lstolas/skills/lst_skill/skill.yaml | 4 +- packages/packages.json | 6 +- poetry.lock | 6 +- 7 files changed, 73 insertions(+), 33 deletions(-) diff --git a/packages/lstolas/agents/lst_agent/aea-config.yaml b/packages/lstolas/agents/lst_agent/aea-config.yaml index 3f03d72..e806957 100644 --- a/packages/lstolas/agents/lst_agent/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a +- lstolas/lst_skill:0.1.0:bafybeigpmounpcjgk2lppmtri56foqjwkr2xewnff6ssz3awqnecptgzdi customs: [] default_ledger: ethereum required_ledgers: diff --git a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml index 5cbc892..a69402f 100644 --- a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a +- lstolas/lst_skill:0.1.0:bafybeigpmounpcjgk2lppmtri56foqjwkr2xewnff6ssz3awqnecptgzdi customs: [] default_ledger: ethereum required_ledgers: @@ -99,7 +99,7 @@ models: args: l1_starting_block: 23648061 l2_starting_block: 42790245 - layer_1_rpc_endpoint: https://eth.drpc.org + layer_1_rpc_endpoint: https://0xrpc.io/eth layer_1_amb_home: '0x4C36d2919e407f0Cc2Ee3c993ccF8ac26d9CE64e' layer_1_olas_address: '0x0001A500A6B18995B03f44bb040A5fFc28E45CB0' layer_2_rpc_endpoint: https://gnosis.oat.farm diff --git a/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py b/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py index 2921154..9226d88 100644 --- a/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py +++ b/packages/lstolas/skills/lst_skill/behaviours_classes/redeem_round.py @@ -1,6 +1,7 @@ """Behaviour class for the state RedeemRound of the LstAbciApp.""" from enum import Enum +from textwrap import dedent from pydantic import BaseModel @@ -30,6 +31,7 @@ class PendingRequest(BaseModel): amount: int operation: str status: OperationStatus + block_number: int class RedeemRound(BaseState): @@ -79,11 +81,10 @@ def is_triggered(self) -> bool: self.strategy.layer_2_api, self.strategy.lst_staking_processor_l2_address, from_block=self.strategy.layer_2_starting_block - if self.last_completed_block is None - else self.last_completed_block, + if self.last_scanned_block is None + else self.last_scanned_block, ) ) - self.last_scanned_block = queued_requests.to_block if queued_requests.events: self.log.info(f"Found {len(queued_requests.events)} queued requests to be processed.") potential_events_to_process = [ @@ -93,19 +94,21 @@ def is_triggered(self) -> bool: amount=event.args.amount, operation="0x" + event.args.operation.hex(), status=OperationStatus(event.args.status), + block_number=event.blockNumber, ) for event in queued_requests.events ] + oldest_blocks: list[int] = [self.strategy.layer_2_api.api.eth.block_number] for event in potential_events_to_process: - if event.status is not OperationStatus.INSUFFICIENT_OLAS_BALANCE: - self.log.info( - f"Request with batch hash {event.batch_hash} has status {event.status} and will be skipped." - ) - continue self.send_notification_to_user( title="Redeem request detected", - msg=f"Detected a redeem request with batch hash {event.batch_hash}. Attempting to process it.", + msg=dedent(f""" + Detected a redeem request with batch hash {event.batch_hash}. Attempting to process it. + Chain ID: {self.strategy.layer_2_api.api.eth.chain_id} + Contract Address: {self.strategy.lst_staking_processor_l2_address} + Block Number: {event.block_number} + """), ) self.context.logger.info(f"Checking on event: {event}") @@ -122,21 +125,39 @@ def is_triggered(self) -> bool: .hex() # type: ignore ) # we now check if the request is still queued - is_still_queued = self.strategy.lst_staking_processor_l2_contract.queued_hashes( - self.strategy.layer_2_api, - self.strategy.lst_staking_processor_l2_address, - "0x" + queued_hash, - ).get("bool") - if is_still_queued: - self.events_to_process.append(event) + request_status = OperationStatus( + self.strategy.lst_staking_processor_l2_contract.queued_hashes( + self.strategy.layer_2_api, + self.strategy.lst_staking_processor_l2_address, + "0x" + queued_hash, + ).get("int") + ) + + if request_status != OperationStatus.NON_EXISTENT: self.log.info( - f"Request with batch hash {event.batch_hash} is state: {is_still_queued} and will be processed." + f"Request with batch hash {event.batch_hash} is still queued with status {request_status}." ) - else: - self.log.info( - f"Request with batch hash {event.batch_hash} is no longer queued and will be skipped." + + will_txn_be_sent = self.tx_settler.simulate( + contract_address=self.strategy.lst_staking_processor_l2_address, + function=self.strategy.lst_staking_processor_l2_contract.redeem, + ledger_api=self.strategy.layer_2_api, + batch_hash=event.batch_hash, + target=event.target, + amount=event.amount, + operation=event.operation, ) + + if will_txn_be_sent: + self.events_to_process.append(event) + self.log.info( + f"Request with batch hash {event.batch_hash} is state: {request_status} and will be sent." + ) + else: + oldest_blocks.append(event.block_number) + else: + self.log.info(f"Request with batch hash {event.batch_hash} is no ready yet checked next iteration.") + self.last_scanned_block = min(oldest_blocks) if self.events_to_process: return True - self.last_completed_block = self.last_scanned_block return False diff --git a/packages/lstolas/skills/lst_skill/models.py b/packages/lstolas/skills/lst_skill/models.py index 21351ec..6e4159c 100644 --- a/packages/lstolas/skills/lst_skill/models.py +++ b/packages/lstolas/skills/lst_skill/models.py @@ -300,9 +300,11 @@ def build_and_settle_transaction( chain_id_to_explorer = { 11155111: "https://sepolia.etherscan.io/tx/", 10200: "https://gnosis-chiado.blockscout.com/tx/", + 1: "https://etherscan.io/tx/", + 100: "https://gnosisscan.io/tx/", } - args = {k: esc_md2(v) for k, v in kwargs.items() if k != "attempts"} + args = {str(k): esc_md2(str(v)) for k, v in kwargs.items() if k != "attempts"} stringified_args = ", ".join(f"{k}={v}" for k, v in args.items()) url = chain_id_to_explorer.get(ledger_api.api.eth.chain_id, "") + tx_hash.hex() @@ -311,6 +313,7 @@ def build_and_settle_transaction( Contract: {html.escape(contract_address)}
Kwargs:
{html.escape(stringified_args)}
Transaction + Chain ID: {ledger_api.api.eth.chain_id!s} """) self.log.info(msg) self.send_notification_to_user(title="New txn executed!", msg=msg) @@ -325,3 +328,19 @@ def strategy(self) -> LstStrategy: def log(self): """Get the logger.""" return self.context.logger + + def simulate(self, contract_address: str, function: Callable, ledger_api: EthereumApi, **kwargs) -> bool: + """Simulate a transaction.""" + self.log.info(f"Simulating transaction for contract at address: {contract_address}") + txn = function( + ledger_api, + contract_address, + **kwargs, + ) + try: + txn.estimate_gas({"from": self.strategy.sender_address}) + self.log.info("Simulation successful, transaction would be sent.") + return True + except Exception as e: # pylint: disable=broad-except + self.log.exception(f"Simulation failed, transaction would NOT be sent. Error: {e}") + return False diff --git a/packages/lstolas/skills/lst_skill/skill.yaml b/packages/lstolas/skills/lst_skill/skill.yaml index a5e3ed4..95ef65e 100644 --- a/packages/lstolas/skills/lst_skill/skill.yaml +++ b/packages/lstolas/skills/lst_skill/skill.yaml @@ -18,14 +18,14 @@ fingerprint: behaviours_classes/claim_reward_tokens_round.py: bafybeia7d26votggvlw36wtp623unczgdmlwojqhkj4t62aeqdxrij6h64 behaviours_classes/error_rounds.py: bafybeihtghxlbb5k6s4egdibglto7h43xk3fz7vclhrizncq5vkwzlsqu4 behaviours_classes/finalize_bridged_tokens_round.py: bafybeifnxckqnez2apllpwlxj6rvrfat732xhorhqle3aut6wl2dr7ekxu - behaviours_classes/redeem_round.py: bafybeigcl5hk3mhgqzct7bg3c2bt6d2gwhoqaydpqp2whkxs262lytw7m4 + behaviours_classes/redeem_round.py: bafybeidn2dndogpohxjvlsxzyq5owgkb3tob2eqkzu2b6jcf6dncvgdobe behaviours_classes/starting_round.py: bafybeift5drjrtwcbssumcpfm2eczus6z6si4gppokvymhbqkfsajmhun4 behaviours_classes/trigger_l2_to_l1_bridge.py: bafybeiac6nikhnpyveenvtzdzwxqxe5ivtayxlz5enmpcfvtsmtnnpvbwm behaviours_classes/waiting_round.py: bafybeiekbnjih5txvpxi75itpjfv7nr65bf7kbgd2f4tdvanbjsewdp2ma dialogues.py: bafybeigbpewv7jsbyaybassv47sxk7bmvbl5pg25v2inr5gc6djch75rmi events_processing.py: bafybeihvdc6qwmzk6pizpuwhdjb7whtevt25uicjeghxzem2qtjko2biom handlers.py: bafybeigxyhzux4czjkaqntqmnjcfidchf2h6sitvxx6dknpwmoucbojqgq - models.py: bafybeihisehbnpxoyhthl63x3yaud4ouvlletxuck5op6gyz5fylmj72me + models.py: bafybeibzv5axz7g47km2hyt3tpzypglsqiyzmhb7ddzt2xe5rblqy4r3xe tests/test_check_work_behaviour.py: bafybeib45mbpf7ctr5aoyltwh34pljwpsh5zqentdqxerfkqx4tqhsg5h4 tests/test_conditional_behaviours.py: bafybeickfflcj6kw5k72w4a56xbzsiolv34vcfjkgr5o3wm4wluoztxqlm tests/test_fsm_behaviour.py: bafybeiellmhyw3fupa725t6yirtg3ct25vuttswvyfzwvr5k3l5x3zseby diff --git a/packages/packages.json b/packages/packages.json index 7fba43d..2514dab 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -11,9 +11,9 @@ "contract/eightballer/amb_gnosis_helper/0.1.0": "bafybeig37p3q4se2it75kt4zvqvrvzk4fqc7eyspspt3txooxxljkurkey", "contract/eightballer/erc_20/0.1.0": "bafybeig622mhgil3uq34d4l3r6moxisgvxwxtrosds2x7glx3kg5z4yqzq", "contract/lstolas/lst_staking_token_locked/0.1.0": "bafybeidw4povdmyzpszkzgnw6iv3w4gnbzboqq5dolxegjptcadv26lgyy", - "skill/lstolas/lst_skill/0.1.0": "bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a", - "agent/lstolas/lst_agent/0.1.0": "bafybeiasu5mbpc6genaggcwzwekednfgut4cypu5kp6kje2utasgxrhfvu", - "agent/lstolas/lst_agent_prod/0.1.0": "bafybeifvc5iwrk4wgtagf4zgx2l54ydre2rg3i5tfywt2ltjohnicdpebu" + "skill/lstolas/lst_skill/0.1.0": "bafybeigpmounpcjgk2lppmtri56foqjwkr2xewnff6ssz3awqnecptgzdi", + "agent/lstolas/lst_agent/0.1.0": "bafybeigs56tnzbw66pnqgxbsju2s2opwlf5akdf3fageesbt6a65msyqwe", + "agent/lstolas/lst_agent_prod/0.1.0": "bafybeiekrzmcu2jgnw5p4yse4bokb6ihxjswhficxwox56mv7rphfqawxy" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm", diff --git a/poetry.lock b/poetry.lock index 099750a..803f23c 100644 --- a/poetry.lock +++ b/poetry.lock @@ -4281,14 +4281,14 @@ tests = ["hypothesis (>=3.27.0)", "pytest (>=3.2.1,!=3.3.0)"] [[package]] name = "pyright" -version = "1.1.405" +version = "1.1.407" description = "Command line wrapper for pyright" optional = false python-versions = ">=3.7" groups = ["dev"] files = [ - {file = "pyright-1.1.405-py3-none-any.whl", hash = "sha256:a2cb13700b5508ce8e5d4546034cb7ea4aedb60215c6c33f56cec7f53996035a"}, - {file = "pyright-1.1.405.tar.gz", hash = "sha256:5c2a30e1037af27eb463a1cc0b9f6d65fec48478ccf092c1ac28385a15c55763"}, + {file = "pyright-1.1.407-py3-none-any.whl", hash = "sha256:6dd419f54fcc13f03b52285796d65e639786373f433e243f8b94cf93a7444d21"}, + {file = "pyright-1.1.407.tar.gz", hash = "sha256:099674dba5c10489832d4a4b2d302636152a9a42d317986c38474c76fe562262"}, ] [package.dependencies] From a46eb15d6005d70ae68a6ab035d19f228fd54f2f Mon Sep 17 00:00:00 2001 From: 8ball030 <8baller@station.codes> Date: Sun, 26 Oct 2025 22:16:00 +0000 Subject: [PATCH 5/5] chore:updated-hashes --- packages/lstolas/agents/lst_agent/aea-config.yaml | 2 +- packages/lstolas/agents/lst_agent_prod/aea-config.yaml | 2 +- packages/lstolas/skills/lst_skill/skill.yaml | 4 ++-- packages/packages.json | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/lstolas/agents/lst_agent/aea-config.yaml b/packages/lstolas/agents/lst_agent/aea-config.yaml index 3f03d72..e806957 100644 --- a/packages/lstolas/agents/lst_agent/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a +- lstolas/lst_skill:0.1.0:bafybeigpmounpcjgk2lppmtri56foqjwkr2xewnff6ssz3awqnecptgzdi customs: [] default_ledger: ethereum required_ledgers: diff --git a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml index b26751e..a69402f 100644 --- a/packages/lstolas/agents/lst_agent_prod/aea-config.yaml +++ b/packages/lstolas/agents/lst_agent_prod/aea-config.yaml @@ -24,7 +24,7 @@ protocols: - open_aea/signing:1.0.0:bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm skills: - eightballer/prometheus:0.1.0:bafybeicl5i7e467aowfarke4bbyixo2dggar276njmvyuwbsby5pxshhtu -- lstolas/lst_skill:0.1.0:bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a +- lstolas/lst_skill:0.1.0:bafybeigpmounpcjgk2lppmtri56foqjwkr2xewnff6ssz3awqnecptgzdi customs: [] default_ledger: ethereum required_ledgers: diff --git a/packages/lstolas/skills/lst_skill/skill.yaml b/packages/lstolas/skills/lst_skill/skill.yaml index a5e3ed4..95ef65e 100644 --- a/packages/lstolas/skills/lst_skill/skill.yaml +++ b/packages/lstolas/skills/lst_skill/skill.yaml @@ -18,14 +18,14 @@ fingerprint: behaviours_classes/claim_reward_tokens_round.py: bafybeia7d26votggvlw36wtp623unczgdmlwojqhkj4t62aeqdxrij6h64 behaviours_classes/error_rounds.py: bafybeihtghxlbb5k6s4egdibglto7h43xk3fz7vclhrizncq5vkwzlsqu4 behaviours_classes/finalize_bridged_tokens_round.py: bafybeifnxckqnez2apllpwlxj6rvrfat732xhorhqle3aut6wl2dr7ekxu - behaviours_classes/redeem_round.py: bafybeigcl5hk3mhgqzct7bg3c2bt6d2gwhoqaydpqp2whkxs262lytw7m4 + behaviours_classes/redeem_round.py: bafybeidn2dndogpohxjvlsxzyq5owgkb3tob2eqkzu2b6jcf6dncvgdobe behaviours_classes/starting_round.py: bafybeift5drjrtwcbssumcpfm2eczus6z6si4gppokvymhbqkfsajmhun4 behaviours_classes/trigger_l2_to_l1_bridge.py: bafybeiac6nikhnpyveenvtzdzwxqxe5ivtayxlz5enmpcfvtsmtnnpvbwm behaviours_classes/waiting_round.py: bafybeiekbnjih5txvpxi75itpjfv7nr65bf7kbgd2f4tdvanbjsewdp2ma dialogues.py: bafybeigbpewv7jsbyaybassv47sxk7bmvbl5pg25v2inr5gc6djch75rmi events_processing.py: bafybeihvdc6qwmzk6pizpuwhdjb7whtevt25uicjeghxzem2qtjko2biom handlers.py: bafybeigxyhzux4czjkaqntqmnjcfidchf2h6sitvxx6dknpwmoucbojqgq - models.py: bafybeihisehbnpxoyhthl63x3yaud4ouvlletxuck5op6gyz5fylmj72me + models.py: bafybeibzv5axz7g47km2hyt3tpzypglsqiyzmhb7ddzt2xe5rblqy4r3xe tests/test_check_work_behaviour.py: bafybeib45mbpf7ctr5aoyltwh34pljwpsh5zqentdqxerfkqx4tqhsg5h4 tests/test_conditional_behaviours.py: bafybeickfflcj6kw5k72w4a56xbzsiolv34vcfjkgr5o3wm4wluoztxqlm tests/test_fsm_behaviour.py: bafybeiellmhyw3fupa725t6yirtg3ct25vuttswvyfzwvr5k3l5x3zseby diff --git a/packages/packages.json b/packages/packages.json index 7fba43d..2514dab 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -11,9 +11,9 @@ "contract/eightballer/amb_gnosis_helper/0.1.0": "bafybeig37p3q4se2it75kt4zvqvrvzk4fqc7eyspspt3txooxxljkurkey", "contract/eightballer/erc_20/0.1.0": "bafybeig622mhgil3uq34d4l3r6moxisgvxwxtrosds2x7glx3kg5z4yqzq", "contract/lstolas/lst_staking_token_locked/0.1.0": "bafybeidw4povdmyzpszkzgnw6iv3w4gnbzboqq5dolxegjptcadv26lgyy", - "skill/lstolas/lst_skill/0.1.0": "bafybeidnr2ez26ahnpp224gyc24cis4oylxycpvklbfxjcygtpdnwkp42a", - "agent/lstolas/lst_agent/0.1.0": "bafybeiasu5mbpc6genaggcwzwekednfgut4cypu5kp6kje2utasgxrhfvu", - "agent/lstolas/lst_agent_prod/0.1.0": "bafybeifvc5iwrk4wgtagf4zgx2l54ydre2rg3i5tfywt2ltjohnicdpebu" + "skill/lstolas/lst_skill/0.1.0": "bafybeigpmounpcjgk2lppmtri56foqjwkr2xewnff6ssz3awqnecptgzdi", + "agent/lstolas/lst_agent/0.1.0": "bafybeigs56tnzbw66pnqgxbsju2s2opwlf5akdf3fageesbt6a65msyqwe", + "agent/lstolas/lst_agent_prod/0.1.0": "bafybeiekrzmcu2jgnw5p4yse4bokb6ihxjswhficxwox56mv7rphfqawxy" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeig2d36zxy65vd7fwhs7scotuktydcarm74aprmrb5nioiymr3yixm",