Sun

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 several subcontracts:

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

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

  • Sun.sol -> 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 Barn);

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

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

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 Terminology Discrepancies.

Last updated