Beanstalk
  • Agronomics Handbook
  • Farmers' Almanac
  • Whitepaper
  • Contract Addresses
  • 🌱Overview
    • Introduction
    • Development Ethos
    • EIP-2535 Diamond
    • App Storage
    • Internal Balances
  • 🌾Protocol
    • Overview
    • Louper
    • Sun
      • Season Facet
    • Silo
      • Silo Facet
      • BDV Facet
      • Whitelist Facet
      • Convert Facet
      • Convert Getters Facet
      • Enroot Facet
      • Approval Facet
      • Metadata Facet
      • Migration Facet
      • Legacy Claim Withdrawal Facet
    • Field
      • Field Facet
      • Fundraiser Facet
    • Barn
      • Fertilizer Facet
      • Unripe Facet
    • Market
      • Marketplace Facet
    • Farm
      • Farm Facet
      • Depot Facet
      • Token Facet
      • Token Support Facet
      • Curve Facet
    • Diamond
      • Diamond Cut Facet
      • Diamond Loupe Facet
      • Ownership Facet
      • Pause Facet
  • 📜Misc.
    • Technical Recordings
    • Upgrade History
    • FAQ
    • Terminology Discrepancies
Powered by GitBook
On this page
Edit on GitHub
Export as PDF
  1. Protocol

Sun

PreviousOverviewNextSeason Facet

Last updated 6 months ago

Note that this page has not been updated to reflect the current state of Beanstalk, but is left here as a reference.

The Sun advances Beanstalk to the next Season through the sunrise function in the Season Facet. Every time an hour passes, sunrise can be called 1 more time.

The Season Facet has :

  • -> Calculates the time weighted average number of Beans that Bean is above/below its value peg in all pools on the .

  • -> Changes the Max Temperature (interest rate) depending on the Bean price, debt level and demand for Soil.

  • -> Sets the Soil for the next Season and mints new Beans if Oracle returns deltaB > 0 and distributes them as follows:

    • Up to 1/3 to Active Fertilizer holders (see );

    • Up to 1/2 of the remaining amount to Pod holders (see ); and

    • The rest to Stalkholders in the Silo (see ).

sunrise does the following steps:

  1. Increments the Season number;

  2. Calls Oracle to get deltaB;

  3. Calls Weather to adjust the Max Temperature and checks for Rain and Season of Plenty;

  4. Calls Sun to set the Soil and mint Beans if deltaB > 0; and

  5. Pays msg.sender Beans for paying the transaction fee associated with calling the function.

In the Beanstalk ecosystem,

  • Rain is referred to as Oversaturation; and

  • Season of Plenty is referred to as Flood.

See .

🌾
several subcontracts
Oracle.sol
Oracle Whitelist
Weather.sol
Sun.sol
Barn
Field
Silo
Terminology Discrepancies