iwa 0.0.18__py3-none-any.whl → 0.0.19__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- iwa/plugins/olas/constants.py +41 -39
- iwa/plugins/olas/contracts/abis/mech_marketplace_v1.json +828 -0
- iwa/plugins/olas/contracts/mech_marketplace_v1.py +68 -0
- iwa/plugins/olas/scripts/test_full_mech_flow.py +1 -1
- iwa/plugins/olas/service_manager/mech.py +242 -42
- iwa/tools/reset_tenderly.py +2 -2
- {iwa-0.0.18.dist-info → iwa-0.0.19.dist-info}/METADATA +1 -1
- {iwa-0.0.18.dist-info → iwa-0.0.19.dist-info}/RECORD +12 -10
- {iwa-0.0.18.dist-info → iwa-0.0.19.dist-info}/WHEEL +0 -0
- {iwa-0.0.18.dist-info → iwa-0.0.19.dist-info}/entry_points.txt +0 -0
- {iwa-0.0.18.dist-info → iwa-0.0.19.dist-info}/licenses/LICENSE +0 -0
- {iwa-0.0.18.dist-info → iwa-0.0.19.dist-info}/top_level.txt +0 -0
iwa/plugins/olas/constants.py
CHANGED
|
@@ -54,10 +54,10 @@ OLAS_CONTRACTS: Dict[str, Dict[str, EthereumAddress]] = {
|
|
|
54
54
|
# Legacy mech - used by NON-MM TRADER staking contracts (e.g., "Expert X (Yk OLAS)")
|
|
55
55
|
# Activity checker calls agentMech.getRequestsCount(multisig) to count requests.
|
|
56
56
|
"OLAS_MECH": EthereumAddress("0x77af31De935740567Cf4fF1986D04B2c964A786a"),
|
|
57
|
-
#
|
|
58
|
-
# Services staked in
|
|
57
|
+
# Marketplace v2 - used by newer MM staking contracts (e.g., "Expert X MM v2 (Yk OLAS)")
|
|
58
|
+
# Services staked in MM v2 contracts MUST use marketplace requests.
|
|
59
59
|
# Legacy mech requests will NOT be counted by the activity checker.
|
|
60
|
-
"
|
|
60
|
+
"OLAS_MECH_MARKETPLACE_V2": EthereumAddress("0x735FAAb1c4Ec41128c367AFb5c3baC73509f70bB"),
|
|
61
61
|
# Default priority mech for marketplace requests (from olas-operate-middleware)
|
|
62
62
|
# This is the mech that will process requests sent via the marketplace.
|
|
63
63
|
# Source: https://github.com/valory-xyz/olas-operate-middleware/blob/main/operate/ledger/profiles.py
|
|
@@ -65,8 +65,9 @@ OLAS_CONTRACTS: Dict[str, Dict[str, EthereumAddress]] = {
|
|
|
65
65
|
"OLAS_MECH_MARKETPLACE_PRIORITY": EthereumAddress(
|
|
66
66
|
"0xC05e7412439bD7e91730a6880E18d5D5873F632C"
|
|
67
67
|
),
|
|
68
|
-
#
|
|
69
|
-
|
|
68
|
+
# Marketplace v1 (VERSION 1.0.0) - older MM contracts (e.g., "Expert 17 MM v1")
|
|
69
|
+
# Uses different request signature than v2. trader_ant uses this.
|
|
70
|
+
"OLAS_MECH_MARKETPLACE_V1": EthereumAddress("0x4554fE75c1f5576c1d7F765B2A036c199Adae329"),
|
|
70
71
|
},
|
|
71
72
|
"ethereum": {
|
|
72
73
|
"OLAS_SERVICE_REGISTRY": EthereumAddress("0x48b6F34dDAf31f94086BFB45e69e0618DDe3677b"),
|
|
@@ -75,49 +76,50 @@ OLAS_CONTRACTS: Dict[str, Dict[str, EthereumAddress]] = {
|
|
|
75
76
|
"base": {
|
|
76
77
|
"OLAS_SERVICE_REGISTRY": EthereumAddress("0x3841C312061daB948332A78F042Ec61Ad09fc3D8"),
|
|
77
78
|
"OLAS_SERVICE_MANAGER": EthereumAddress("0xF36183B106692DeD8b6e3B2B7347C9665f8a09B1"),
|
|
78
|
-
"
|
|
79
|
+
"OLAS_MECH_MARKETPLACE_V1": EthereumAddress("0x4554fE75c1f5576c1d7F765B2A036c199Adae329"),
|
|
79
80
|
},
|
|
80
81
|
}
|
|
81
82
|
|
|
82
83
|
# TRADER-compatible staking contracts categorized by chain
|
|
83
84
|
# See https://govern.olas.network/contracts
|
|
84
|
-
# NOTE: All TRADER staking contracts use the LEGACY MECH for activity tracking.
|
|
85
|
-
# The activity checker calls agentMech.getRequestsCount(multisig), where agentMech
|
|
86
|
-
# is hardcoded to the legacy mech (0x77af31De935740567Cf4fF1986D04B2c964A786a).
|
|
87
85
|
#
|
|
88
|
-
#
|
|
89
|
-
# - Legacy
|
|
90
|
-
# -
|
|
86
|
+
# Categories (verified on-chain via activity checker's mechMarketplace):
|
|
87
|
+
# - Legacy: No marketplace, uses legacy mech (0x77af31De...). agentMech.getRequestsCount()
|
|
88
|
+
# - MM v1: Old marketplace (0x4554fE75...). mechMarketplace.mapRequestCounts()
|
|
89
|
+
# - MM v2: New marketplace (0x735FAAb1...). mechMarketplace.mapRequestCounts()
|
|
91
90
|
#
|
|
92
|
-
#
|
|
91
|
+
# IMPORTANT: Services MUST use the correct mech request type for their staking contract!
|
|
93
92
|
OLAS_TRADER_STAKING_CONTRACTS: Dict[str, Dict[str, EthereumAddress]] = {
|
|
94
93
|
"gnosis": {
|
|
95
|
-
|
|
96
|
-
"Hobbyist
|
|
97
|
-
"
|
|
98
|
-
"Expert
|
|
99
|
-
"Expert
|
|
100
|
-
"Expert
|
|
101
|
-
"Expert
|
|
102
|
-
"Expert
|
|
103
|
-
"Expert
|
|
104
|
-
"Expert
|
|
105
|
-
"Expert
|
|
106
|
-
"Expert
|
|
107
|
-
"Expert
|
|
108
|
-
"Expert
|
|
109
|
-
"Expert
|
|
110
|
-
|
|
111
|
-
"Expert
|
|
112
|
-
"Expert
|
|
113
|
-
"Expert
|
|
114
|
-
"Expert
|
|
115
|
-
|
|
116
|
-
"Expert
|
|
117
|
-
"Expert
|
|
118
|
-
"Expert
|
|
119
|
-
"Expert
|
|
120
|
-
"Expert
|
|
94
|
+
# === LEGACY (no marketplace) ===
|
|
95
|
+
"Hobbyist 1 Legacy (100 OLAS)": EthereumAddress("0x389B46C259631Acd6a69Bde8B6cEe218230bAE8C"),
|
|
96
|
+
"Hobbyist 2 Legacy (500 OLAS)": EthereumAddress("0x238EB6993b90A978ec6AAD7530D6429c949C08DA"),
|
|
97
|
+
"Expert Legacy (1k OLAS)": EthereumAddress("0x5344B7DD311e5d3DdDd46A4f71481Bd7b05AAA3e"),
|
|
98
|
+
"Expert 2 Legacy (1k OLAS)": EthereumAddress("0xb964e44c126410df341ae04B13aB10A985fE3513"),
|
|
99
|
+
"Expert 3 Legacy (2k OLAS)": EthereumAddress("0x80faD33Cadb5F53f9D29F02Db97D682E8B101618"),
|
|
100
|
+
"Expert 4 Legacy (10k OLAS)": EthereumAddress("0xaD9d891134443B443D7F30013c7e14Fe27F2E029"),
|
|
101
|
+
"Expert 5 Legacy (10k OLAS)": EthereumAddress("0xE56dF1E563De1B10715cB313D514af350D207212"),
|
|
102
|
+
"Expert 6 Legacy (1k OLAS)": EthereumAddress("0x2546214aEE7eEa4bEE7689C81231017CA231Dc93"),
|
|
103
|
+
"Expert 7 Legacy (10k OLAS)": EthereumAddress("0xD7A3C8b975f71030135f1a66E9e23164d54fF455"),
|
|
104
|
+
"Expert 8 Legacy (2k OLAS)": EthereumAddress("0x356C108D49C5eebd21c84c04E9162de41933030c"),
|
|
105
|
+
"Expert 9 Legacy (10k OLAS)": EthereumAddress("0x17dBAe44BC5618Cc254055B386A29576b4F87015"),
|
|
106
|
+
"Expert 10 Legacy (10k OLAS)": EthereumAddress("0xB0ef657b8302bd2c74B6E6D9B2b4b39145b19c6f"),
|
|
107
|
+
"Expert 11 Legacy (10k OLAS)": EthereumAddress("0x3112c1613eAC3dBAE3D4E38CeF023eb9E2C91CF7"),
|
|
108
|
+
"Expert 12 Legacy (10k OLAS)": EthereumAddress("0xF4a75F476801B3fBB2e7093aCDcc3576593Cc1fc"),
|
|
109
|
+
# === MM v1 (old marketplace 0x4554fE75...) ===
|
|
110
|
+
"Expert 15 MM v1 (10k OLAS)": EthereumAddress("0x88eB38FF79fBa8C19943C0e5Acfa67D5876AdCC1"),
|
|
111
|
+
"Expert 16 MM v1 (10k OLAS)": EthereumAddress("0x6c65430515c70a3f5E62107CC301685B7D46f991"),
|
|
112
|
+
"Expert 17 MM v1 (10k OLAS)": EthereumAddress("0x1430107A785C3A36a0C1FC0ee09B9631e2E72aFf"),
|
|
113
|
+
"Expert 18 MM v1 (10k OLAS)": EthereumAddress("0x041e679d04Fc0D4f75Eb937Dea729Df09a58e454"),
|
|
114
|
+
# === MM v2 (new marketplace 0x735FAAb1...) ===
|
|
115
|
+
"Expert 3 MM v2 (1k OLAS)": EthereumAddress("0x75eeca6207be98cac3fde8a20ecd7b01e50b3472"),
|
|
116
|
+
"Expert 4 MM v2 (2k OLAS)": EthereumAddress("0x9c7f6103e3a72e4d1805b9c683ea5b370ec1a99f"),
|
|
117
|
+
"Expert 5 MM v2 (10k OLAS)": EthereumAddress("0xcdC603e0Ee55Aae92519f9770f214b2Be4967f7d"),
|
|
118
|
+
"Expert 6 MM v2 (10k OLAS)": EthereumAddress("0x22d6cd3d587d8391c3aae83a783f26c67ab54a85"),
|
|
119
|
+
"Expert 7 MM v2 (10k OLAS)": EthereumAddress("0xaaecdf4d0cbd6ca0622892ac6044472f3912a5f3"),
|
|
120
|
+
"Expert 8 MM v2 (10k OLAS)": EthereumAddress("0x168aed532a0cd8868c22fc77937af78b363652b1"),
|
|
121
|
+
"Expert 9 MM v2 (10k OLAS)": EthereumAddress("0xdda9cd214f12e7c2d58e871404a0a3b1177065c8"),
|
|
122
|
+
"Expert 10 MM v2 (10k OLAS)": EthereumAddress("0x53a38655b4e659ef4c7f88a26fbf5c67932c7156"),
|
|
121
123
|
},
|
|
122
124
|
"ethereum": {},
|
|
123
125
|
"base": {},
|