Skip to content

Commit cddb9b2

Browse files
committed
Remove partner rewards
Signed-off-by: cyc60 <[email protected]>
1 parent 012ba19 commit cddb9b2

File tree

5 files changed

+4
-126
lines changed

5 files changed

+4
-126
lines changed

oracle/oracle/common/graphql_queries.py

-15
Original file line numberDiff line numberDiff line change
@@ -341,18 +341,3 @@
341341
}
342342
"""
343343
)
344-
345-
346-
PARTNERS_QUERY = gql(
347-
"""
348-
query getPartners($block_number: Int) {
349-
partners(block: { number: $block_number }) {
350-
id
351-
contributedAmount
352-
revenueShare
353-
distributorPoints
354-
updatedAtBlock
355-
}
356-
}
357-
"""
358-
)

oracle/oracle/distributor/common/eth1.py

-100
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
DISABLED_STAKER_ACCOUNTS_QUERY,
1515
DISTRIBUTOR_CLAIMED_ACCOUNTS_QUERY,
1616
ONE_TIME_DISTRIBUTIONS_QUERY,
17-
PARTNERS_QUERY,
1817
PERIODIC_DISTRIBUTIONS_QUERY,
1918
)
2019
from oracle.oracle.distributor.common.ipfs import get_one_time_rewards_allocations
@@ -188,105 +187,6 @@ async def get_operators_rewards(
188187
return rewards, Wei(total_reward - operators_reward)
189188

190189

191-
async def get_partners_rewards(
192-
network: str,
193-
from_block: BlockNumber,
194-
to_block: BlockNumber,
195-
total_reward: Wei,
196-
reward_token_address: ChecksumAddress,
197-
) -> Tuple[Rewards, Wei]:
198-
"""Fetches partners rewards."""
199-
result: Dict = await execute_sw_gql_query(
200-
network=network,
201-
query=PARTNERS_QUERY,
202-
variables=dict(
203-
block_number=to_block,
204-
),
205-
)
206-
partners = result["partners"]
207-
208-
# process partners
209-
points: Dict[ChecksumAddress, int] = {}
210-
total_points = 0
211-
total_contributed = 0
212-
for partner in partners:
213-
account = Web3.toChecksumAddress(partner["id"])
214-
if account == EMPTY_ADDR_HEX:
215-
continue
216-
217-
contributed_amount = Wei(int(partner["contributedAmount"]))
218-
total_contributed += contributed_amount
219-
220-
revenue_share = int(partner["revenueShare"])
221-
prev_account_points = int(partner["distributorPoints"])
222-
updated_at_block = BlockNumber(int(partner["updatedAtBlock"]))
223-
if from_block > updated_at_block:
224-
updated_at_block = from_block
225-
prev_account_points = 0
226-
227-
account_points = prev_account_points + (
228-
contributed_amount * revenue_share * (to_block - updated_at_block)
229-
)
230-
if account_points <= 0:
231-
continue
232-
233-
points[account] = account_points
234-
total_points += account_points
235-
236-
if total_contributed <= 0:
237-
return {}, total_reward
238-
239-
partners_reward = Wei(
240-
(total_reward * total_points)
241-
// (total_contributed * 10000 * (to_block - from_block))
242-
)
243-
if partners_reward <= 0:
244-
return {}, total_reward
245-
246-
partners_reward = min(total_reward, partners_reward)
247-
rewards = calculate_points_based_rewards(
248-
total_reward=partners_reward,
249-
points=points,
250-
total_points=total_points,
251-
reward_token=reward_token_address,
252-
)
253-
254-
return rewards, Wei(total_reward - partners_reward)
255-
256-
257-
def calculate_points_based_rewards(
258-
total_reward: int,
259-
points: Dict[ChecksumAddress, int],
260-
total_points: int,
261-
reward_token: ChecksumAddress,
262-
) -> Rewards:
263-
"""Calculates points based rewards."""
264-
if total_reward <= 0 or total_points <= 0:
265-
return {}
266-
267-
rewards: Rewards = {}
268-
last_account_index = len(points) - 1
269-
distributed = 0
270-
for i, account in enumerate(points):
271-
if i == last_account_index:
272-
reward = total_reward - distributed
273-
else:
274-
reward = (total_reward * points[account]) // total_points
275-
276-
if reward <= 0:
277-
continue
278-
279-
DistributorRewards.add_value(
280-
rewards=rewards,
281-
to=account,
282-
reward_token=reward_token,
283-
amount=reward,
284-
)
285-
distributed += reward
286-
287-
return rewards
288-
289-
290190
async def get_one_time_rewards(
291191
network: str,
292192
from_block: BlockNumber,

oracle/oracle/distributor/controller.py

+2-9
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
get_distributor_claimed_accounts,
1515
get_one_time_rewards,
1616
get_operators_rewards,
17-
get_partners_rewards,
1817
get_periodic_allocations,
1918
)
2019
from oracle.oracle.distributor.common.merkle_tree import calculate_merkle_root
@@ -167,13 +166,7 @@ async def process(self, voting_params: DistributorVotingParameters) -> None:
167166
reward_token_address=NETWORK_CONFIG["REWARD_TOKEN_CONTRACT_ADDRESS"],
168167
operator_address=NETWORK_CONFIG["OPERATOR_ADDRESS"],
169168
)
170-
partners_rewards, left_reward = await get_partners_rewards(
171-
network=NETWORK,
172-
from_block=from_block,
173-
to_block=to_block,
174-
total_reward=left_reward,
175-
reward_token_address=NETWORK_CONFIG["REWARD_TOKEN_CONTRACT_ADDRESS"],
176-
)
169+
177170
if left_reward > 0:
178171
fallback_rewards: Rewards = {
179172
self.distributor_fallback_address: {
@@ -185,7 +178,7 @@ async def process(self, voting_params: DistributorVotingParameters) -> None:
185178
rewards2=fallback_rewards,
186179
)
187180

188-
for rewards in [operators_rewards, partners_rewards]:
181+
for rewards in [operators_rewards]:
189182
final_rewards = DistributorRewards.merge_rewards(final_rewards, rewards)
190183

191184
# merge final rewards with unclaimed rewards

oracle/settings.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
IPFS_FETCH_ENDPOINTS = config(
3535
"IPFS_FETCH_ENDPOINTS",
3636
cast=Csv(),
37-
default="http://cloudflare-ipfs.com,https://ipfs.io,https://gateway.pinata.cloud",
37+
default="https://ipfs.io,https://gateway.pinata.cloud",
3838
)
3939

4040
LOCAL_IPFS_CLIENT_ENDPOINT = config("LOCAL_IPFS_CLIENT_ENDPOINT", default="")

pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "oracle"
3-
version = "3.3.1"
3+
version = "3.4.0"
44
description = "StakeWise Oracles are responsible for submitting off-chain data."
55
authors = ["Dmitri Tsumak <[email protected]>"]
66
license = "AGPL-3.0-only"

0 commit comments

Comments
 (0)