Skeleton Facets
Skeletons represent mandatory facets that must be added to the diamond proxy when deploying a platform.
There are only two skeleton facets that provide the core functionality necessary to enable the staking platform:
Skeleton | Description |
---|---|
StakingSkeleton | Enables users to participate in staking campaigns. |
CampaignCreationSkeleton | Provides functionality to create staking campaigns. |
Eligibility Verification
Each Skeleton facet consumes the associated eligibility interface by calling it through the diamond proxy. It does not implement the interface itself but instead delegates eligibility checks to the corresponding internal eligibility facet.
For instance, the StakingSkeleton
interacts with the
WhitelistedStakersFacet
, which allows checking eligibility of each individual staker via the checkStakersEligibility()
function:
Below is an example of the function call to check the account eligibility:
Eligibility checks ensure that only accounts meeting specific criteria can join a campaign. Developers can customize this mechanism by choosing and configuring suitable implementations.
Note
Each skeleton facet delegates eligibility checks to its internal eligibility facet, ensuring all user-facing functions are protected by access control layer. As a result, user eligibility is automatically verified during any interaction.