Keep3r Network is a decentralized keeper network for projects that need external devops and for external teams to find keeper jobs

Keep3r Network is a decentralized keeper network for projects that need external devops and for external teams to find keeper jobs
Keep3r Network Is A Decentralized Keeper Network
Keep3r Network Is A Decentralized Keeper Network

Keep3r Network is a decentralized keeper network for projects that need external devops and for external teams to find keeper jobs


Keepers

A Keeper is the term used to refer to an external person and/or team that executes a job. This can be as simplistic as calling a transaction, or as complex as requiring extensive off-chain logic. The scope of Keep3r network is not to manage these jobs themselves, but to allow contracts to register as jobs for keepers, and keepers to register themselves as available to perform jobs. It is up to the individual keeper to set up their devops and infrastructure and create their own rules based on what transactions they deem profitable.


Jobs

A Job is the term used to refer to a smart contract that wishes an external entity to perform an action. They would like the action to be performed in "good will" and not have a malicious result. For this reason they register as a job, and keepers can then execute on their contract.


Becoming a Keeper

To join as a Keeper you call bond(uint) on the Keep3r contract. You do not need to have KPR tokens to join as a Keeper, so you can join with bond(0). There is a 3 day bonding delay before you can activate as a Keeper. Once the 3 days have passed, you can call activate(). Once activated you lastJob timestamp will be set to the current block timestamp.


Registering a Job

A job can be any system that requires external execution, the scope of Keep3r is not to define or restrict the action taken, but to create an incentive mechanism for all parties involved. There are two cores ways to create a Job;

Registering a Job via Governance
If you prefer, you can register as a job by simply submitting a proposal via Governance, to include the contract as a job. If governance approves, no further steps are required.

Registering a Job via Contract Interface
You can register as a job by calling addLiquidityToJob(address,uint) on the Keep3r contract. You must not have any current active jobs associated with this account. Calling addLiquidityToJob(address,uint) will create a pending Governance vote for the job specified by address in the function arguments. You are limited to submit a new job request via this address every 14 days.

 

Job Interface

Some contracts require external event execution, an example for this is the harvest() function in the yearn ecosystem, or the update(address,address) function in the uniquote ecosystem. These normally require a restricted access control list, however these can be difficult for fully decentralized projects to manage, as they lack devops infrastructure.


These interfaces can be broken down into two types, no risk delta (something like update(address,address) in uniquote, which needs to be executed, but not risk to execution), and harvest() in yearn, which can be exploited by malicious actors by front-running deposits.


For no, or low risk executions, you can simply call Keep3r.isKeeper(msg.sender) which will let you know if the given actor is a keeper in the network.
For high, sensitive, or critical risk executions, you can specify a minimum bond, minimum jobs completed, and minimum Keeper age required to execute this function. Based on these 3 limits you can define your own trust ratio on these keepers.


Job Credits

As mentioned in Job Interface, a job has a set amount of credits that they can award keepers with. To receive credits you do not need to purchase KPR tokens, instead you need to provide KPR-WETH liquidity in Uniswap. This will give you an amount of credits equal to the amount of KPR tokens in the liquidity you provide.


You can remove your liquidity at any time, so you do not have to keep buying new credits. Your liquidity provided is never reduced and as such you can remove it whenever you no longer would like a job to be executed.


To add credits, you simply need to have KPR-WETH LP tokens, you then call addLiquidityToJob(address,uint) specifying the job in the address and the amount in the uint. This will then transfer your LP tokens to the contract and keep them in escrow. You can remove your liquidity at any time by calling unbondLiquidityFromJob(), this will allow you to remove the liquidity after 14 days by calling removeLiquidityFromJob()



DreamozTech is an online seo platform where you can build optimized seo contents. Sign up now to start building your search engine optimized contents. Bring more traffic, use our tools and thrive in the digital world. By creating your free profile, you are one step closer to get the best results.

Selling something online is the easiest and the toughest job. Easiest because well, there is a huge market with billions of people accessing the internet. But tough to market your niche and stand out from the crowd of online sellers. Do you wish to stand out from the crowd? Do you wish to expand your business? Do you want to make the most of the internet?

At DreamozTech, we believe that holistic SEO is the best way to rank your web apps because you focus on making every aspect of your site awesome. Don’t use any black-hat SEO tricks, because eventually, this will have negative consequences for your rankings. Instead, practice sustainable SEO, with your user in mind, and you will benefit in the long run.

Leave a message

Full Name
Email
Mobile
Description