Skip to content

An optimistic community-owned and governed oracle

Notifications You must be signed in to change notification settings

AllanM007/Sentinel

Repository files navigation

Sentinel: Smart Contracts

Sentinel is a community-owned and governed EVM Optimistic Oracle using decentralized and trustless system designed to provide accurate and reliable data feeds to Ethereum Virtual Machine (EVM) applications. This oracle leverages the principles of optimism, allowing developers to efficiently and securely access off-chain information without sacrificing the benefits of decentralization.

Using this model, the community collectively governs the oracle, making decisions about data sources, consensus mechanisms, and protocol upgrades. This ensures that no single entity has control over the oracle, promoting transparency and preventing manipulation. The governance process typically involves token holders who can vote on proposals and changes, ensuring a fair and inclusive decision-making process.

By being community-owned and governed, this EVM Optimistic Oracle eliminates the need for a centralized authority or third-party intermediaries. It promotes the values of decentralization, transparency, and security, allowing developers to build innovative applications on the Ethereum network with reliable and up-to-date external data.

Getting Started

Prerequisites

To build the Sentinel smart contracts, you will need the following:

Installation

Clone the repository with its submodules, set up Hardhat, and install the dependencies via npm:

npm install

Contracts

Core Contracts

Contract Description
stakingAdapter The entry point for managing protocol participants(data providers & disputers) stakes. Their stakes ensure security and data validity through financial incentives and penalties. It handles the logic for of the staking, as well as liquidations and redemptions.
SNT-Token An ERC-20 token designed to be the governance token of the protocol for voting on proposals.
stSNT-Token An ERC-20 token designed to be the staking token of the protocol which is issued to protocol participants when they stake to represent their share during redemptions.
aggregatorAdapter This contract manages the aggregation of various data sent by providers using an optimal data validity threshhold that is decided by the protocol. It also tracks the invalid data sent by providers based on a deviation threshhold to record invalid data providers.
disputeAdapter Disputes that arise from data providers and data feed consumers are settled by this contract and it issues rewards/penalties records to the stakingAdapter contract .
oracleAdapter Servers asset that have been aggregated by the aggregationAdapter contract.This is the entry point for all data feed consumers.
proposalAdapter This contract handles all proposals to the protocol i.e deviation threshhold, new data provider, aggregation metrics.

Oracle Flow Chart |

About

An optimistic community-owned and governed oracle

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published